小ネタを少々

閲覧数: 33(0)

トップページで表示される記事一覧では、アイキャッチ画像、タイトル、投稿日、投稿者、カテゴリ、記事の抜粋がそれぞれに表示されます。これはテーマオリジナル関数である「oblique_posted_on()」により処理されていています。それぞれにリンクが貼られていて、アイキャッチ画像、タイトル、投稿日はその記事へのリンク、投稿者とカテゴリはそれぞれのページへのリンクです。この関数は記事を開いた時にも使用されており、記事のアイキャッチ画像、タイトル、投稿日、投稿者、カテゴリを表示します。この時には投稿日、投稿者、カテゴリがリンクとなっています。

今回はこの記事を開いた時の「投稿日」からのリンク先を変更します。オリジナルの関数では投稿日は記事へのリンクとなっているので、記事を開いている時にその記事へリンクするのは無意味です。そこで投稿月のアーカイブへリンクする仕様へ変更したいと思います。画像の左下のリンク先に注目ください。投稿日へカーソルを合わせた時の表示ですが、記事へのリンクとなっています。

まずはオリジナル関数の86行目付近を確認します。

                        $posted_on = sprintf(
                                /* translators: Post date */
                                _x( '%s', 'post date', 'oblique' ),
                                '<a href="' . esc_url( get_permalink() ) . '" rel="bookmark">' . $time_string . '</a>'
                        );

「get_permalink()」が記事へのリンクとなるので、ここを該当月のアーカイブへのリンクとするため「get_link_month()」へ変更します。必要な引数は$yearと$monthです。get_the_time()関数で記事の年月を取得します。引数の「Y」と「m」はそれぞれ「西暦4桁」「2桁月(“04″など)」を意味します。

                        $year = get_the_time( Y, $post );
                        $month = get_the_time( m, $post );
                        $posted_on = sprintf(
                                /* translators: Post date */
                                _x( '%s', 'post date', 'oblique' ),
                                '<a href="' . esc_url( get_month_link( $year, $month ) ) . '" rel="bookmark">' . $time_string . '</a>'
                        );

トップページの一覧画面ではオリジナル関数も使用するので今回は「oblique_posted_on2()」関数を追加するだけでオリジナルとの入れ替えなどの処理は不要です。子テーマの「inc/template-tags.php」へ追加します。

実装結果は実際にアクセスして確かめて下さい。記事を開いた後「投稿日」をクリックすると該当月のアーカイブページへリンクしているはずです。画像の左下にご注目ください。投稿日へカーソルを合わせた時の表示ですが、一覧表示の時(記事へのリンク)と違いリンク先が「2017/10」となっています。

新しく作る「oblique_posted_on2()」関数は、オリジナルの「oblique_posted_on()」関数をコピーして上述の該当する部分のみを変更して作成します。作成する先は子テーマ側の「inc/template-tags.php」です。

カテゴリーIT閑話, 公開タグ, ,
緊急事態宣言で外出自粛になり...
blank

せっかくのゴールデンウィークなのに、2年連続で緊急事態宣言下となり、外出自粛中。暇なので小ネタで遊ぶ  続きを読む

閲覧数まとめ
blank

閃きついでに総合計と週合計をフラグで制御する方式に変更してみた。これまではベタに関数をまるまるコピー  続きを読む

ページナビのテキスト
blank

記事ページの下部に前後の記事(投稿)へのリンクが表示される仕様なのだが、「カテゴリーに制限」をかけて  続きを読む

管理画面を制限する
blank

このサイトではネット上のさまざまな攻撃からの防御のため、Wordfenceプラグインの無料版を使用し  続きを読む

タイトルを抜粋する
blank

関連記事プラグインを使って、記事本文の下に「関連記事」を表示している。情報としては、タイトル、画像、  続きを読む

検索精度を高める
blank

検索ネタを連発するのはElasticsearchやElasticPressがバージョンアップした時の  続きを読む

スポンサーリンク

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください