«
»

投稿記事に「前の記事へ」「次の記事へ」を表示させたい(備忘録)

多くのブログの投稿記事には、タイトルにある通り「前の記事へ」「次の記事へ」のリンクが貼られています。

私の持っている、もう一つのブログであるアメブロの記事にも表示されています。

その方がちょっとかっこいい?と思い、当ブログにも設置してみることにしました。

(ちなみに、作業中に分かったことなのですが、フッターにはサムネイル表示つきで、はじめから表示されていました(^-^;)

 

このブログの簡単な仕様

このブログの簡単な仕様です。

レンタルサーバー:ConoHa WING

ブログのアプリ:WordPress

テーマ:CoCoon(子テーマ)

 

「single.php」を書き換えます

やらなくてはならないことは、「single.php」を書き換えることです。

 

「single.php」を探します

まずは、single.phpの場所を探すのに大変手間取りました。

single.phpは、CoCoon(子テーマ)を使用している場合には、子テーマのフォルダ(・・・/wp-content/themes/cocoon-child-master)には、最初はないみたいです。

なので、親テーマのフォルダ(・・・/wp-content/themes/cocoon-master)からコピーして、そのまま子テーマのフォルダに貼り付けます。

これで子テーマのフォルダにも、single.phpが存在するようになりました。

 

(ファイルのダウンロードとアップロードに関しては、レンタルサーバーの仕様を確認してください。もしくは、サーバーの管理者にお尋ねください。パソコンとレンタルサーバーの間を何回も行ったり来たりします。)

 

「single.php」の書き換え

この貼り付けた、single.phpを書き換えていきます。

バックアップを必ずとっておきましょう。

少し書き換え、挙動がうまくいったら、その都度ファイル名を変えて履歴のファイルを残しておくと、一つ前の状態にいつでも戻せます。

single.phpの中をよく見て、「get_header();」「get_footer();」と書かれている二か所を探します。

どこかの構文(?)の中に、ひっそりあるかと思います。

二か所の構文の間に次の構文を書き加えます。


<?php if (get_previous_post()):?>
<Div Align=”left”><?php previous_post_link(‘&laquo; %link’, ‘前の記事へ’); ?></Div>
<?php endif; ?>

<?php if (get_next_post()):?>
<Div Align=”right”><?php next_post_link(‘%link &raquo;’, ‘次の記事へ’); ?></Div>
<?php endif; ?>


この構文は何をしているか、ごくごく簡単に書くと、次のような感じです。

1.「前の記事」のアドレスを取得

2.「<<前の記事へ」と表示(左寄せで表示、「前の記事」のアドレスにリンク)

3.「次の記事」のアドレスを取得

4.「次の記事へ>>」と表示(右寄せで表示、「次の記事」のアドレスにリンク)

 

相当、四苦八苦しながら、なんとか表示をさせることが出来ました。

きちんとリンクも貼られています。

 

ただ、変な風に改行されているのが気になります。

<Div></Div> 構文を使用しているので、それはそうなんですが・・・今のところどうにもなっていません。

今後の課題です。

 

kotone’s field pro に戻る

コメント

タイトルとURLをコピーしました