WordPressプラグイン Meta Manager で投稿に設定したキーワードを取得する
meta keywords や meta description を、投稿ごとに設定することができる便利な WordPress プラグイン Meta Manager で、設定したキーワードをタイトルタグにも echo したいな、と思ったのですが、 wp_head() に自動出力される仕様でしたので、独自関数でDBから直接取得するコードを書いてみました。
functions.php
1 2 3 4 5 6 7 8 9 10 11 |
/* * プラグイン meta Manager で投稿に設定したキーワードを取得する * http://company.miyanavi.net/archives/2058 * */ function getMetaKeyrods($post_id) { global $wpdb; $sqlQuery = "SELECT meta_value FROM wp_postmeta WHERE post_id = '$post_id' AND meta_key = '_keywords' LIMIT 1"; $result = $wpdb->get_results($sqlQuery); return $result; } |
$wpdb で普通に取得してます。LIMIT 1 は要らないと思うのですが、念のため。
あとは適当にテーマで取り扱います。
カンマ区切りで設定されていると思うので、半角スペースに変換。
1 2 3 4 |
// メタキーワードをタイトルタグ用に変換 $_metaKeywords = getMetaKeyrods($post->ID); $_metaKeywords = $_metaKeywords[0]->meta_value; $_metaKeywords = str_replace(",", " ", $_metaKeywords); |
好きな場所で出力します。
結構便利な気が。タイトルタグに入ってるのと入ってないのでは、SEO的な効果が全然違う現実がありますので。