WordPressテーマCenoteで、投稿日と更新日を表示する方法。どこを変えたらいいの??を解決!

WordPressで「更新日」を表示するモチベーション

色々なブログの記事を読んでいて、ブログの「更新日」って結構重要に思いませんか?

私もネットで情報を読んでいて、「こんなこと書いてあるけど、やってみたら情報が古くて今と状況が違うじゃないか…」と残念に思うこともしばしば。

進歩が激しい世の中、昨日のことはもう古い。そのくらい、情報の鮮度って重要になってきています。そんな想いで自分のブログを見てみると、はて?情報の鮮度をちゃんと読者に伝えているのか?と思い始めました。

 

少し調べてみたところ、WodPressで投稿日(公開日)と更新日を併記する方法を色々な方が紹介しています。

その中には、なぜ、更新日が重要か?といった理由付きで説明されている記事もあります。助かります。

 

【WordPress】公開日と最終更新日を表示する

 

 

変更箇所ってテーマ毎に違うよね??

そうかー。じゃ、自分のブログWordPressもそれに習って、自分のブログも変更してみよう。そう考えるのは当たり前。

ところが、あれ、どこを変えるんだろう???あれ、あれ??? 自分のテーマは、PHPのどこのコードで「投稿日」表示してるの???

となってしまい、結局自分のテンプレートのPHPのソースコードとにらめっこすることになってしまいました。

 

WordPressテーマCenoteだとこうする!

私のブログは、この記事を執筆時点(2018年12月26日)では、「Cenote」というデザインテーマを使用しています。バージョンは、1.2.4です。デザインとしてはとてもシンプルです。私が気に入っているポイントは、トップページなどで、ブログ記事の一覧を出すときにタイリング表示してくれるところ。

そんなお気に入りCenoteのデザイン・テーマ。調べた結果、以下のように変更することで「更新日」を表示できるようになります

ソースコードの変更箇所

表示をしている箇所は、template-parts/content-single.phpです。

ここで、

という記載がある箇所が、「投稿者名 — 日付」と表示している箇所でした。そして、このcenote_posted_on()があるのは、inc/template-tags.phpです。

中身を見ると、一応、更新日もHTMLをレンダリングしているようですが、class=”updated”はCSSで非表示(display:none)にしています。なら、CSSを書き換えて、updatedの文字を表示させればいいじゃん!とも考えました。

でも、cenote_posted_on()で表示している箇所は他にもあります。

例えば、「関連する投稿」にリストアップされる記事の表示です。この部分まで「更新日」がいちいち表示されるようになるのは期待動作ではありません。あくまで、「更新日」を表示したいのは、投稿の記事のタイトルの周辺の表示だけでいいのです。

 

変更後のソースコード

ということで、template-parts/content-single.phpを書き換えて、cenote_posted_on()を呼ばずに、独自にHTMLを吐き出すように修正しました。

その際に、cenote_posted_by()によって表示されていた、「投稿者」も消しました。私のブログ、私しか投稿しません。なのに、一々記事のヘッダに投稿者「shizuka.na.kazushi」が表示されるのはナンセンス。

と言う訳で、以下のように、オリジナルのcenote_posted_on()の別バージョン、その名もkaz_content_single_posted_on()をcontent-single.phpに追加しました。

そして、先程のcontent-single.phpの2行、cenote_posted_by(); cenote_posted_on();を、

kaz_content_single_posted_on();

に書き換えれば完成です!

色々関数があっちにあったりこっちにあったりしましたが、ファイル1個の書き換えで済みました。

WordPressテーマCenoteでの「更新日」表示

オリジナルバージョンは以下のように、投稿者(cenote_posted_by()で表示)と、投稿日(cenote_posted_on()で表示)の2つでした。

で、私のバージョンは、まず、投稿者(shizuka.na.kazushi)の表示をやめました。

そして、「投稿日」ともし投稿時間と更新時間が異なる場合は、「更新日」も表示するようになりました。

 

それぽいです。

ちなみに、今まであった、投稿者と投稿日の間の線。これは、CSSで、「.entry-meta .posted-on::before {」のように記載があり、日付(class=”posted-on”)の手前の要素としてCSSで書かれていたのでした。なので、posted-onも一緒に外しています。

これで情報の鮮度をお伝えすることが出来るようにないましたー。

 

 

 

投稿を作成しました 192

コメントを残す

関連する投稿

検索語を上に入力し、 Enter キーを押して検索します。キャンセルするには ESC を押してください。

トップに戻る
%d人のブロガーが「いいね」をつけました。