SWELLの投稿一覧に文字数を表示する方法|Code Snippetsで安全にカスタマイズ

SWELLの投稿一覧に文字数を表示するカスタマイズ方法を示す図解。Code Snippetsを使って安全に実装するイメージ。
  • URLをコピーしました!

WordPressテーマ「SWELL」。

美しくて使いやすく、記事執筆が楽しくなるテーマだと実感しています。

ただ、以前使用していた「Cocoon」にはあって、SWELLには見当たらなかった機能があります。
それが投稿管理画面で、記事ごとの文字数を一覧表示する機能

↓こういった画面で文字数がわかるやつです。

Cocoonでの投稿管理画面の一部です。

目次

SWELLでも「投稿文字数」を一覧で確認したい

「今書いているこの記事、何文字くらいなんだろう?」

そんなとき、投稿管理画面から一目で文字数が分かると便利ですよね。

かつてのCocoonでは標準で表示されていたこの機能。
SWELLでは見当たらず、「もしかして無理なのか…?」と感じながらも調べ始めました。

コミュニティで聞けば一発かもしれませんが
まだ参加したことがなかったので、自分で試行錯誤してみることにしました。


✅ 結論:Code Snippetsで出来ました!

色々と調べたり試したりしましたが、最終的に目的は無事達成できました。

📌 必要だったのは、以下の2ステップです:

  1. プラグイン「Code Snippets」をインストール
  2. 以下のコードをファンクションPHPに追加し、「管理画面のみ」で実行
add_filter( 'manage_post_posts_columns', 'add_word_count_column' );
add_action( 'manage_post_posts_custom_column', 'show_word_count_column', 10, 2 );

function add_word_count_column( $columns ) {
    $columns['word_count'] = '文字数';
    return $columns;
}

function show_word_count_column( $column_name, $post_id ) {
    if ( $column_name == 'word_count' ) {
        $content = get_post_field( 'post_content', $post_id );
        $plain_text = strip_tags( $content ); // HTMLタグ除去
        $plain_text = preg_replace( '/\s+/', '', $plain_text ); // 空白も除去
        echo mb_strlen( $plain_text ) . ' 文字';
    }
}

📝 スニペットのタイトルは「投稿一覧に文字数カラムを追加」としました。

設定後は、SWELLの投稿一覧に「文字数」カラムが追加され
各投稿の本文文字数がしっかり表示されるように。
↓こんな感じの画面です。

SWELLでの投稿管理画面の一部です。

結論以下の文章は蛇足といいますが、この解決策に至るまでの紆余曲折を書きます。
興味ある方だけお読みください~

🔄 紆余曲折の記録|Admin Columnsとの出会いと別れ

頼れる者がいない状況でも、今はAIがある。
今回はChatGPTに聞いてみました。

風徳

(Cocoonの画像見せて)こういうのSWELLでできますか?

できまぁす!
これこれあぁしてこうして…

ChatGPTが出してきた答えは…

この表示ができる代表的プラグイン
🔧 Admin Columns(旧:Admin Columns Manager)
投稿一覧画面に任意の項目(文字数・ID・PVなど)を追加
SWELLテーマとも互換性あり
有料版(Pro)でより細かい制御可
※Pro版でより高度な項目も扱えますが、文字数は無料版で対応可能です。

というので早速入れてみて、ChatGPTの言う通りにしてみます。
ただ、functions.phpはよくわからなかったので聞いてみると
直接触らず、同じことができるプラグインとしてCode Snippetsを紹介されました。

でも、指示通りにやっても表示されない。
post_contentとだけ項目作っただけのAdmin ColumnsにSnippetsと連携できるのか?
それを疑問に思ってAdminColumnsのスクショ画面を見せながら訪ねました。

この画面ではコードを直接入力する場所はありません。
代わりに、「カスタムPHP(関数)」タイプを使う必要があります。
ただし…この機能はAdmin Columns Pro限定機能なんです💡

なんだこいつ

AdminColumns無料でできますよって言ってたのに
Pro限定の有料機能を使うという。

無料で行うならCode SnippetsでPHP追加の手段になるとのことで
Code Snippets用の修正バージョンのコードを提供してくれた。
(上記、解決した見出しの中に貼ったコード)

AdminColumnsのプラグインを削除してSnippetsに1本化し
修正版コードを入力で、投稿管理画面に文字数が表示されるように。

✨ 遠回りしたけれど、結果的にはヨシ

親切にChatGPTは比較表を出してくれた。

最初なぜAdminColumnsで無料対応可能と紹介したし?
まぁ、最終的にはCode Snippetsだけで目的は果たせたのでヨシとします!

遠回りしたけれども、自分1人ではできないアシストをしてくれたのは助かりました。
AIは最適な答えを最初からくれるとは限りませんが
対話しながら試行錯誤することで、自分だけではたどり着けない着地点に導いてくれる。

今回の出来事も、記録としてここに残しておきます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

考えたことや学んだことを、静かにまとめています。
派手な発信よりも、自分なりの気づきを大切に。
ブログは、思考の整理と記録のための場所です。

目次