ホームページ >CMS チュートリアル >&#&プレス >WordPress Object Cache の詳細な紹介と使用法
Memcached メモリ キャッシュは WordPress の多くの機能を最適化し、WordPress を高速化できます。次のコラム WordPress チュートリアル では、Memcached を使用して WordPress を徹底的に最適化する方法を紹介します。
#WordPress の最適化を深く理解するには、まず WordPress のオブジェクト キャッシュ メカニズムを理解する必要があります。
WordPress オブジェクト キャッシュ メカニズムとサーバー設定
WordPress オブジェクト キャッシュ (WordPress オブジェクト キャッシュ) は WordPress のキャッシュ メカニズムであり、その主な機能はクエリまたは操作を処理することです。 (WordPress は、グループによる分割とキャッシュされたコンテンツの競合の回避もサポートしています) 次回同じ操作を実行するとき、データはデータベースに複製せずに、このオブジェクトから直接取得できます。またはその他の外部 Web サイトからデータを取得します。
WordPress オブジェクト キャッシュはサーバー設定と密接に関連しています。システムで Memcached メモリ キャッシュが有効になっている場合、オブジェクトはメモリに直接保存されます。データの有効期限が切れる前に、データはメモリから直接読み取られます。非常に効率的かつ高速です。
サーバーがメモリ キャッシュをサポートしていない場合、現在のページ上の同じクエリまたは操作がデータベースから繰り返し読み取られないようにすることしかできません。
WordPress オブジェクト キャッシュ機能
WordPress オブジェクト キャッシュ テクノロジの使用は実際には非常に簡単です。
wp_cache_add() を使用してデータをキャッシュに追加します。
wp_cache_set() を使用してデータをキャッシュに設定します。
wp_cache_get() を使用してキャッシュからデータを読み取ります。
wp_cache_delete() を使用してキャッシュ内のデータを削除します。
これらの関数には 4 つのパラメータが含まれます:
パラメータ
$key オブジェクトのキー。
$data 保存される値。
$group Grouping、オプションのパラメータ。キャッシュ オブジェクトをグループ化するために使用されます。
$expire 有効期限、オプションのパラメータ。デフォルトのキャッシュの場合、このパラメータは役に立ちません。メモリ キャッシュの場合、キャッシュを設定する時間です。単位は秒です。デフォルトは次のとおりです。 0 (0 は永久を意味します。自動的に期限切れになりません)。
WordPress オブジェクト キャッシュの使用
以下では、これから更新する WordPress 関連記事プラグインを例として、WordPress オブジェクト キャッシュの使用方法について説明します。 :
WordPress 関連記事プラグインは、タグとカテゴリを通じて関連記事を取得します。同じタグとカテゴリが多いほど、相関関係が強くなります。これには、関連記事を取得するために複数のテーブルの結合クエリが必要です。これは実際には比較的非効率的です。ただし、記事の関連記事は一定期間変更されないため、WordPress オブジェクト キャッシュを使用して関連記事を高速化できます。
以下は、現在の post_id をキー、relative_posts をグループとして、キャッシュ時間は 1 時間、つまり 3600 秒として、関連記事のデータをキャッシュに書き込む例です。
global $post; $related_posts_data = wp_get_related_posts(); wp_cache_set($post->ID,$related_posts_data,'related_posts',3600);
上記はキャッシュ オブジェクトにデータを格納するだけです。関連記事を表示するときは、このオブジェクト キャッシュを呼び出して使用する必要があります。まず、キャッシュがすでに存在するかどうかを確認します。必要な情報があれば、キャッシュで利用できないか、有効期限が切れています。 wp_cache_get() は false を返します。その場合は、データベースにアクセスしてこの情報を取得する必要があります。それ以外の場合は、キャッシュ内の情報が返されます。
global $post; $related_posts_data = wp_cache_get($post->ID,'related_posts'); if(false === $related_posts_data){ $related_posts_data = wp_get_related_posts(); wp_cache_set($post->ID,$related_posts_data,'related_posts',3600); } echo $related_posts_data;
関連記事のデータは 1 時間後に無効になるため、通常はここでキャッシュを更新する必要はありません。バックグラウンドで設定を変更し、すぐにキャッシュをクリアする必要がある場合は、次の方法を使用できます。 wp_cache_delete でクリーンアップします:
wp_cacache_delete($post->ID,'related_posts');
WPJAM Basic プラグインには Memcached が統合されています。WPJAM Basic をダウンロードした後、wpjam-basic/template/ ディレクトリにある object-cache.php ファイルを wp-content ディレクトリにコピーします。 。
以上がWordPress Object Cache の詳細な紹介と使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。