WordPressで過去に作成した記事を見ていて、見出しがついていなかったり、見出しが少なかったりしていませんか。
そのような時に、WordPressの記事一覧から見出し(h2,h3)の数を確認できたら編集が捗りますよね。
そこで今回は、WordPressの記事一覧ページに見出しの数を表示する方法を紹介します。
はじめに
今回紹介する方法では、function.phpを編集します。
作業を開始する前に、FTPソフトなどで必ずバックアップをとっておくようにしてください。
また、今回の作業は全て自己責任でお願いします。
って言っても、コードをコピペするだけでいけるので安心してください。
では、バックアップが完了したら、実際の画面を確認しておきましょう。
このように、記事一覧ページから見出しの数を確認できるようになります。
function.phpを編集
function.phpを編集するときは、細心の注意を払ってください。
編集に失敗してしまうと、ページが真っ白になってしまい何も表示できなくなります。
もしそのようになってしまった場合は、FTPソフトからfunction.phpを元の状態に戻すか、バックアップから復元しましょう。
それを踏まえた上で、コードを確認してください。
今回のコードは以下になります。
//記事一覧に見出しの数を追加
function add_columns($columns) {
$columns['count'] = 'h2の数';
return $columns;
}
function add_custom_column($column_name, $post_id) {
if( 'count' == $column_name ) {
$count = substr_count(get_post_field('post_content', $post_id), '</h2');
echo $count;
}
}
add_filter( 'manage_posts_columns', 'add_columns' );
add_action( 'manage_posts_custom_column', 'add_custom_column', 10, 2 );
このコードをfunction.phpの一番下にでも追加します。
不具合を避けるためにコードの解説を確認しておきましょう。
コードを解説
今回紹介したコードの内容は以下のような流れになっています。
- 記事一覧ページに「見出しの数」欄を追加
- 記事を取得
- 見出し( </h2 )の数を数える
- 追加した見出しの数の項目に表示
では順に解説していきます。
$columns['count'] = '表示したいテキスト';
この「 ‘ ’ 」のなかに記載されたテキストが、記事一覧ページに表示されるテキストになります。
基本的になんでも良いので、自分でわかりやすいものに変更してください。
続いて
$count = substr_count(get_post_field('post_content', $post_id), '</h2');
このコードでは、記事を取得し、その中に含まれる「 </h2 」の数をカウントしています。
</h2というのは「見出し2」の事ですね。
もし、見出し3の数を数えたいときは、ここの値を</h3に変更すればいけるはずです。
echo $count;
このコードで先ほど取得した見出しの数を出力して表示します。
add_filter( 'manage_posts_columns', 'add_columns' );
add_action( 'manage_posts_custom_column', 'add_custom_column', 10, 2 );
最後にこのコードで、作成したfunctionを呼び出して実行します。
このコードが書かれていないと、実装できないので注意してください。
ちなみにこちらのコードは「フィルターフック」「アクションフック」と呼ばれておりますので、機能についてはリファレンスを確認してみてください。
まとめ
今回紹介した方法を使うことによって、WordPressの記事一覧ページに見出しの数を表示できるようになりました。
ブログを書き始めた頃は、見出しをあまり意識しておらず、1つしか見出しをつけていない記事などもありました。
〇番目の見出しの上に〇〇、のような処理をあとから追加すると、どうしても見出しが少ない記事が引っかかってしまうので、記事一覧から確認できるとかなり便利になると思います。
ぜひ試してみてください。
ではまた。