記事ページを作る~記事下エリア~ | SkillhubAI(スキルハブエーアイ)

記事ページを作る~記事下エリア~

前回index.phpの投稿記事本文出力まで終わりました。 今回はその下、SNSリンクと関連記事を作っていきましょう。

file

1.SNSアイコンを表示させる

WordPressテーマ化したことでアイコンが表示されていません。

file

画像パス部分を修正して、戻通りにアイコンを表示させましょう。

テーマディレクトリのパスを呼び出すには以下のWordPressタグを使います。

<?php echo get_template_directory_uri(); ?>

src=""の中が「テーマディレクトリ>imgフォルダ>画像ファイルのパス」となるようにしたいので、下記のように書きます。

single.php

ブラウザで表示を確認。画像が表示されていれば成功です。

file

2.関連記事を表示させる

記事を読み終えたユーザーが他のページも見てくれるように、記事下に関連記事を表示させましょう。今回はプラグインを使って簡単に設定していきます。

file

①プラグインのインストール

関連記事を表示させるために「Yet Another Related Posts Plugin」というプラグインを使用します。早速、管理画面の方からプラグインのインストールと有効化を行ってください。

file

有効化出来たら、左メニューから設定>YARPPを開いてください。

file

②YARPPのテンプレートを作成

下図のような「関連記事 (YARPP) 設定」画面が開きました。

file

下にスクロールダウンしていってください。

ページ中ほどに「Automatically display Options」というボックスがあります。 Themeのところで「カスタム」にマウスを重ねて下さい。 吹き出しが表示されるので「テンプレートを移動」をクリックします。

file   ↓ file

クリックすると画面がリロードされたようになり、また元の設定画面に戻るはずです。

管理画面は一旦そのままにしておいて、作成中のテーマディレクトリを見てみましょう。 yarpp-template-○○○というPHPファイルが沢山追加されています。

file

yarpp-template-thumbnail.phpをエディターで開いてみましょう。 3行目にあるYARPP Template: Thumbnailsを、YARPP Template: myportfolioに変更します。

file

「名前を付けて保存(別名で保存)」でファイル名をyarpp-template-myportfolioにして保存してください。

file

管理画面、YARPPの編集画面をリロードしてください。 テーマを選ぶところでカスタムをクリックすると、プルダウンの選択肢が表示されます。

file

新しく作った「 myportfolio」を選択します。

file

ページ下部にある「変更を保存」ボタンで保存してください。 これで管理画面からの設定は終わりです。

③テンプレートの編集

yarpp-template-myportfolio.phpを書き換えていきましょう。

 

single.phpのblogセクション開始タグ~見出しを囲っているdivの閉じタグまでをコピー。 yarpp-template-myportfolio.phpのH3タグ部分と置き換えます。

single.php

yarpp-template-myportfolio.php

yarpp-template-myportfolio.phpの一番下に</div></section>タグを入れます。

yarpp-template-myportfolio.php

次にループ内を変更していきます。 関連記事が無かったら「No related photos.」を表示するという条件分岐が既に出来ていますので、変更するのはオレンジの点線箇所内です。

yarpp-template-myportfolio.php

【変更箇所】

  1. <ol></ol>を削除
  2. php if ~ endifまでをブログカードのコードに変更する
  3. whie文を挟む形で<div class="row">とその閉じタグを挿入する。

(二枚目のカードは要らないのでコメントアウトもしくは削除して下さい。)

変更したyarpp-template-myportfolio.php

 

上記コードの3か所をWordPressタグに置き換えていきます。

  • アイキャッチ
  • 画像
  • 抜粋文

ついでにリンクが設定されていなかったので、記事に行けるように<a>タグも加えましょう。 コードはindex.phpからコピーして張り付けると楽です。

yarpp-template-myportfolio.php

ファイルを上書き保存しておいてください。

④single.phpから関連記事を呼び出す

single.phpにYARPPから関連記事を出力するインクルードタグを入れて下さい。

<?php related_posts(); ?>

single.php

保存して、ブラウザで表示を確認します。

file

※表示されるカード数はカテゴリー等の設定によって変わります。
一枚も表示されない場合は、表示させている投稿と同じカテゴリーを別の投稿に設定してみて下さい。

関連記事が表示されていたらインクルードタグ以下、関連記事部分のコードを削除してしまいましょう。 それ以外にindex.phpから複製したコードのコメントアウトなども残っていれば削除してください。

今回作成したSNSリンク以下の部分は、下記のような形になりました。 (※htmlファイルの組み方によって若干変わる場合もあります)

single.php

新しく作ったyarpp-template-myportfolio.phpの中身もインデントを整え、不要なコード(コメントアウト箇所)を削除しておきましょう。

編集画面から自動で生成されたyarppのテンプレートファイル類は削除してしまって構いません。 使用しているyarpp-template-myportfolio.phpはテーマフォルダに残しておきましょう。

これでsingle.phpは完成です。

関連記事表示の注意点

①No related photos.になる

→表示している記事(投稿)と同じカテゴリーの投稿を作る。

②何も表示されない

→yarpp-template-myportfolio.phpの記述を確認する。

③表示箇所が違う/二箇所表示される

プラグインの設定ページを開き、下図の箇所が「どこにもチェックが入っていない」状態になっているかを確認。

確認用ファイルについて

ここまでのレッスン作成分までが入ったテーマディレクトリを「レッスン素材一覧」にアップロードしています。

画像フォルダは含まれておりませんので、WordPressでカテゴリーや記事を作成するのレッスンでダウンロードしたimgフォルダを移してご利用ください。