【phpでWPプラグイン改造】What’s New Generatorで、記事タイトル文字数を設定する

                    更新: 2021/02/16   1444文字

今回は、ワードプレスサイトでよく使われる更新情報表示プラグイン『What’s New Generator』で、文字数を指定してみます。

phpプログラムをいじって対応するので少し手間がかかりますが、タイトルが長い時などはすっきりさせられるでしょう。さっそくやり方をみていってみます。

■まずは、『What’s New Generator』の構成ファイルを確認

『タイトル・表示するコンテンツ・件数・NEW!マーク表示』などの機能はありますが、通常機能にはない『文字数指定』ということなので、どういう風に文字列を取得しているのか・そのファイルは何か、を確認します。


ファイル構成はこんな感じ。本体(whats-new-generator.php)・CSSの他『admin』という管理ページを表示するファイルや、実際に表示する部分のファイルなどがあります。たぶん、ブラウザ表示するファイル(whatsnew-view.php)を書き換えれば大丈夫かと予想しました。

■phpファイル(whatsnew-view.php)の記述を書き換えて、文字数を指定する

■もとの状態のファイル


もとの状態です。タイトル・日付・新着アイコンなどは、このような関数で出力され、CSSでドレスアップして、みんなの目にみえるよう画面に出ます。タイトルは『<?php echo $item->title; ?>』で出るようですね。

■書き換え後


phpで使われる記述『<?php echo mb_substr($item->title, 0, 30).'……'; ?>』というものを書いてみました。これは文字列を取得するもので、『0 30』は、1文字目から31文字目までを取得します(プログラムはゼロからカウントが始まるので。キリが良いのがいい場合は29とかにします)。そのあと、オーバーしたところに『……』が出るように。

あと、頭についてる『mb』は、『マルチバイト』のことだと思います(mbなしの、バイト数を後から指定するものがある)

■ブラウザーでの表示され方

■書き換え前


What’s New Generatorのデフォルトでのタイトル出力の様子です。特にこのままでも使えなくはないですが、文字数が指定できないので、タイトルが長いとボックスが長くなり大変でしょう。とくにスマホ。

■書き換え後(1文字目から31文字目指定し、オーバーした分は……を出力)


すっきり短い文で出力されました。とりあえず、文字コードは書き換えたとこには書かなかったけど、文字化けとかも無いようです(たぶん内部エンコードUTF8で利いてる)。

文字化けが万が一発生する場合は、書き換えたコードの内部に文字コード指定を書くと大丈夫かと思います

■あとがき・まとめ

文字数は割とサクっと実装できました。応用すれば『カテゴリー○○番と○○番を取得』みたいなカスタマイズもできると思うので、ぜひ使ってみてください。

プログラムPHPのサイトにも説明があるので、気になったら読んでみてください。
http://php.net/manual/ja/function.substr.php

WordPressサイト制作&リニューアル・機能開発サービス | アトリエSS


【カテゴリ】 - WordPressプラグイン情報
【タグ】 - ,

  関連記事

【WordPress高速化プラグイン】Speed Up-JavaScript To Footerで、表示速度を速くする方法
車・不動産・カタログなどに使えそう!WordPressコンタクトフォームにidやタイトルを渡して自動挿入させる方法
WordPressサイトに、コメント機能を実装しない/非表示にする方法
【WPプラグイン】Smart Custom FieldsとCustom Field Bulk Editorは相性悪い?(空リンク・真偽値フィールドに文字)
【WPプラグイン】PDFで、WordPressを電子書籍風にできる『PDF light viewer』
【WordPress&GitHub連動】WP Pusherプラグインで、テーマやプラグインをGitHubリポジトリから更新してみる
【PHPでwpプラグインを改造】all in one seoで、og:descriptionを書かなかったときに、文章が全部出力されてしまうのを直したい
【wordpress限界高速化】Pjax技術を使ってサイトを高速表示するプラグインと、エラーの対処
WordPressで絵や動画・オーディオのダウンロード販売しよう~Easy Digital Downloads使い方
管理画面からFTP操作『WP File Manager』~過去の脆弱性ver・機能・使用例(テーマ消えないなど)の紹介
【WPプラグイン無しでサイト構築&表示を速く】Really Simple SSLって無効化して大丈夫?→設定しとけば大丈夫、ただし混在に注意
WordPressのリビジョンを、プラグインで制御する方法(revision control)【データベースを軽く】