Manablog Copyで新記事のディスクリプションが表示されないときの対処法
当ブログは、Manablog Copyを使用しているので、修正点をまとめておきました。
Manablog Copyでディスクリプションが表示されなくなった原因
原因は、下記のツイートのとおりです。
mblogのテーマ使っていて、All in One SEO Packをアップデートすると、アップデート後の投稿のディスクリプションが表示されなくなりますよ。
原因はプラグインの名前が変わったことにより、get_post_metaの$keyが以前と変わり、値を取得できなくなったからです。 pic.twitter.com/Oq82fQjozq
— けーた@Web制作フリーランス (@keita_35) December 21, 2020
「All in One SEO Pack」のアプデで、プラグイン名が「All in One SEO」になったのが原因です。
詳しいことは、本記事では、解説しないので、上記ツイートを参考にしてください。
修正内容について
詳しい修正内容は、下記の記事(外部サイト)をご覧ください。本記事の修正内容は、下記の記事を参考にしています。
» All in One SEO(4.0以降)でdescriptionを読みだす方法
Manablog Copyでディスクリプションを表示させる修正
修正手順は、下記のとおり。
- function.phpファイルにコードを追記
- 指定されたディスクリプションのコードを置き換える
2つの手順で修正完了です。テーマを編集する前に、必ずファイルをバックアップです。
Manablog Copyのfunction.phpファイルにコード追記
Manablog Copyのfunction.phpに下記のコードを追記します。
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //
// All in One SEOのディスクリプションが表示されない問題を修正
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //
// All in One SEOのaioseo_postsを$wpdbに対応させる
function add_db_aiso_desc() {
global $wpdb;
$table_name = $wpdb->prefix. "aioseo_posts";
if (!isset($wpdb->aioseo_posts))
{
$wpdb->aioseo_posts = $table_name;
$wpdb->tables[] = str_replace($wpdb->prefix, '', $table_name);
}
}
add_action( 'init', 'add_db_aiso_desc');
// 独自テーブル(aioseo_posts と aioseo_terms)を読みだす
function bfp_aiso_desc() {
global $wpdb,$post;
$desc = $wpdb->get_var( $wpdb->prepare( "SELECT description FROM $wpdb->aioseo_posts WHERE post_id = %d", $post->ID));
return $desc;
}
Manablog Copyの修正ファイルと修正箇所
修正ファイル一覧
- category.php
- header.php
- index.php
- search.php
- tag.php
上記ファイルの指定箇所をすべて、修正です。
修正ファイルは、5つです。コピペで指定されたコードに置き換えるだけなので、簡単です。
修正前に、テーマのバックアップをしておくと安心です。
Manablog Copyでディスクリプション(メタ情報)を表示させる修正
<?php echo get_post_meta($post->ID, '_aioseop_description', true); ?>
上記コードを、すべて下記のコードのに置き換えます。
キーボードの[Ctrl + F]
を使ってブラウザの検索機能を使うと便利。
<?php echo bfp_aiso_desc(); ?>
以上で修正完了です。
これで、Manablog Copyで、All in One SEOのディスクリプション(メタ情報)が表示されるようになります。
近いうちに、Manabulog Copyのアプデで修正されるといいですね。