小ネタを少々

閲覧数: 36(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

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

ElasticPress日本語設定
blank

前回の「検索結果の期待値」では「日本人としては長い休み」で検索出来ないと言うところまで話をしました。  続きを読む

検索結果のカテゴリー制限
blank

検索ネタを連発しておりますが、、、今回はテーマとプラグインどっちで修正するかという課題に挑戦しました  続きを読む

記事に地図を表示する
blank

オープンストリートマップ用のプラグイン(OSM)を使って記事中に地図を表示するようにしました。自称「  続きを読む

dockerとiptables
blank

クラウドサーバーを利用する場合、ファイアウォール(Firewalld/iptables)の設定に失敗  続きを読む

テーマリニューアル2017
blank

すっかりご無沙汰してしまいました。 復帰記念に久しぶりにテーマを変更しました。今回使用するのは「ob  続きを読む

スポンサーリンク

コメントを残す

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