WordPressのカスタマイズ方法やプラグインレビューを中心に、パソコン/動物/植物のことなどを紹介するホームページです

【WordPress】管理画面の投稿一覧へ文字数を表示する方法いろいろ

公開日:2016(平成28)年11月28日/最終更新日:

Knowledge Base Wordpress パソコン カスタマイズ 設定



【景品表示法に基づく表記】ページ内のコンテンツには、商品プロモーションが含まれています

SEOを意識すると一言で言っても何をどうしていいやら・・・と私のように躓いている方多いと思います。

以前に書いた

で紹介した項目に気を付ければ最低限の対策にはなるかなぁと思いながら記事を書いていると、それなりに効果があるというか、アクセスされるようになったかな?と言うレベルにはなります。

個々の記事を書いているときには、エディタの下に目安となる文字数が表示されるのでそれなりに意識して書けますが、過去に公開したものを検証しようとするといちいち編集画面開いてチェックするのも面倒だということで、文字数を管理画面の投稿一覧に出せないかと思っていろいろ調べてみました。

ちょっと脱線しますが、エディタの下に目安となる文字数が表示されるとしたのは、日本語がマルチバイト(1文字が複数の半角英数字分として数えられる)であることから正確な値をはじき出すのは無理だということと、ショートコードやタグなども文字としてカウントされてしまうからです。

これを前提にしてあくまで目安となる文字数を一覧に表示する方法をいろいろと紹介したいと思います。

とはいえ私はプログラマではないので、あくまでも調べてたどり着いたサイトやプラグインの紹介と検証になることをあらかじめ断っておきますね。

唯一表示できるのは「Admin columns」というプラグインだが

手っ取り早くプラグインで実装できないか、いろんな語句で検索したところ、「Admin columns」というのが唯一(だと思う)ありました。

大雑把に「Admin columns」の概要を説明すると、管理画面の一覧(投稿一覧やユーザー一覧など一覧表示されるものすべて)に対して項目を追加したり並び替えたりできる結構重宝しそうなプラグインです。

早速インストールして文字数を表示してみたところ、他の機能はいいのですが、肝心の文字数に関しては実際に検証すると「あれ?おかしい」ということになりました。

原因は「文字数」ではなく「単語数」を表示する機能だということ。

私はこのサイトでも紹介している通りプラグインなどの日本語翻訳を行っているので気持ちはよくわかるのですが、おそらく翻訳した方が「word」を「文字」として訳したのでしょう。和製英語的にいうとワード=文字なのですから仕方ないのですが、英語で文字は「character」と表記しますから単純にこの間違いでしょう。

まあ、単語数でも表示できれば・・・と言いたいところですが、英語の場合は単語と単語の間に半角の空白(スペース)があったり、ピリオドがあったりするのでそこで区切りとして認識させることができるのですが、日本語は連続した文字ですし、英語と違って全角(マルチバイト)ですから大がかりにプラグインのソースを変更しないときれいに表示させることは不可能です。

テストサイトで数を数えてみたらやっぱり予想的中の結果でした(スペースまでが1として認識されました)。ちなみに2000文字と編集画面の隅に表示される文章のWord数が6となりました。

・・・という訳でこのプラグインで文字数を図る方法は失敗、他の方法を探ります

functions.phpへ追記する方法で表示可能なサイト2つ

プラグインの線が消えましたので、どうにかスニペットを紹介しているところはないかと調べたところ、2つのサイトで紹介されていました。

studio9さんのサイト

WordPressの投稿一覧に本文の文字数とタイトル文字数を表示させる

こちらのページで紹介されていました。記事ではマルチバイトの扱いについても詳しく書かれていましたのでまず間違いなく正確な値と思われる数字が出るだろうと考えて早速テストサイトのfunctions.phpへ追加したところ、いい感じの値が表示されました。

コードや詳しい解説については上記のページで確認してくださいね。

Nx Worldさんのサイト

WordPress:投稿一覧にサムネイル・ID・スラッグ・文字数の項目を追加する方法

こちらのページで紹介されていました。ここでは文字数だけでなくサムネイル・ID・スラッグ・文字数の項目と多岐に渡って紹介してありました。

同様にfunctions.phpへ追加したところ、こちらもきれいに表示されます。

2つのコードで表示される文字数が違う!?

 functions.phpへ何かを追加するのはいつもドキドキするのですが、今回は同じ役割のものを2つ追記したのでさらにドキドキでした。無事に動作して投稿一覧画面で確認・・・すると・・・

なんと2つの数字が違うではありませんか(どこかのテレビ番組ではありません)。さらに、編集画面隅の数字も違う!という結果になってしまいました。

前述した通り目安なのでどれでもいいかと言いたいところですが、申し訳ないと思いつつ2つの数字を検証してみることに。とはいえ文字数を数えるわけにもいかないので、問題となるマルチバイトに焦点を当てると、下のようなページがありました

全角文字が3バイト?! PHP で文字を数えるときの注意点

こちらではWordPressが使っているUTF-8という文字コードだとマルチバイト文字は2~6バイトの間の数になるとのこと。そしてより正確に数を知るには一旦Shift_JISへ文字コードを変換すべきと書かれています。

ということは・・・先に紹介したstudio9さんのほうが正確なのか?更に言うと、こちらではタイトルの文字数も表示される、ということで私的にはこちらを使わせていただくことにしました。

QA AnalyticsQA Analytics

まとめ

WordPress標準であってくれればいいのにと思いつつ、○○できないかと調べると紹介してくださっているサイトがあるんですね。感謝感激です。

これで無事管理画面の投稿一覧に文字数が表示され

で紹介している「WordPress Popular Posts」プラグインのビュー数の表示と合わせて見ながら効率よく記事のブラッシュアップが図れそうです。

今回紹介させていただいた3つのサイトの記事、できれば後生消さないようにしていただきたいと切に願っております。