Simplicityの特徴 › フォーラム › Simplicityについての質問 › 「最初だけ本文表示」の場合、当該本文とそれ以下のエントリカードの間に広告等を入れる方法
- このトピックには4件の返信、1人の参加者があり、最後に
尾坂により8年、 6ヶ月前に更新されました。
-
投稿者投稿
-
-
2018年3月16日 1:05 AM #59313
尾坂
ゲストはじめまして、尾坂と申します。WordPressもPHPも初めてですが、一昨日ダウンロードさせていただき、色々といじりながら勉強させていただいています。
さて、インデックスページ表示を「最初だけ本文表示」との設定にした場合に当該本文とそれ以下のエントリカードの間に広告を入れてみたいといくつか試行したのですが上手くいかず、ご指導いただければと思っております。
試したことは、
1.ウィジェット「投稿本文下」に置いてみる: これは個別記事のページだと問題ありませんが、インデックスページ(の最上段記事)になると消えてしまいます
2.「インデックスリストミドル」においてみる: 表示されませんでした
3.2をやった上で、list.phpの//3つめのアイテム下に…の部分を1にして、その下のリストスタイルを最初だけ本文の場合に置き換えてみる:表示されませんでした
カスタマイザーの広告では全てのページに表示するにチェックは入っておりました。
WordPressは4.9.4、Simplicityは2.6.5.1になります。
説明が下手で恐縮ですが、なにかアドバイスをいただけましたら幸いです。よろしくお願いいたします。 -
2018年3月16日 8:55 AM #59315
かうたっく
ゲスト設定がどうなっているかわかりませんが、list.phpの83行目あたりが最初だけ本文表示なので、85・86行目
if ( is_home() && !is_paged() && $count == 1 ) { get_template_part('entry-body');この下に
get_template_part('ad');
を入れるとどうなりますか?Simplicityの広告ウィジェットを使ってる場合は表示すると思います。沢山出すぎないかはチェックしてないので不明です。広告ウィジェットを使ってなければ、myadなどのテンプレートファイルを作成してSimplicityと同じHTMLタグで囲った中に広告コードをいれても良いかもしれません。
どちらにしても親テーマフォルダ内にあるlist.phpをFTPからダウンロード、編集・上書き保存後は子テーマフォルダ内へアップロードする感じです。
※編集したものをアップロードしたときに、変な文字列・スペース・コピペ間違いがあればエラーが出ます。そのときは子テーマフォルダにアップロードした『list.phpを削除』したら復活。
パス:/domain.com(/public_html)/wp-content/themesフォルダ内に親子テーマフォルダがあります。
-
2018年3月16日 7:58 PM #59328
尾坂
ゲストかうたっく様
さっそくにアドバイスくださりありがとうございます。
今試してみたのですが、表示されない状態です(念のため新しいlist.phpを親テーマから取ってきて、87行目にget_template_part(‘ad’);を入れております。また子テーマにheader-log、entry-body、footerファイルを置いていじってしまっていましたので、それが悪いのかと思い、それらもすべて子テーマフォルダのものは消しております。なお、entry-bodyに直接広告を書き込むと表示されます)。ソースを見るとad.phpの<!– 広告 –>コメントアウトは来ているので間違いなく呼び出されてはいると思うのですが、広告の中身が来ていない状況です。
漠然としていて申し訳ありません。なにか根本的な部分で間違っているのかもしれませんが…… -
2018年3月17日 7:33 AM #59332
かうたっく
ゲストまた子テーマにheader-log、entry-body、footerファイルを置いていじってしまっていましたので、それが悪いのかと思い、それらもすべて子テーマフォルダのものは消しております。なお、entry-bodyに直接広告を書き込むと表示されます)。ソースを見るとad.phpの<!– 広告 –>コメントアウトは来ているので間違いなく呼び出されてはいると思うのですが、広告の中身が来ていない状況です。
> 子テーマにheader-log、entry-body、footerファイルを置いていじってしまっていましたので、それが悪いのかと思い、それらもすべて子テーマフォルダのものは消しております。
編集したPHPのカスタマイズが必要でしたら置いてても大丈夫ですよ。
> entry-bodyに直接広告を書き込むと表示
TOPページには表示されなかったのでは?表示されてればそれで良かったと思います^^
> ソースを見るとad.phpの<!– 広告 –>コメントアウトは来ているので間違いなく呼び出されてはいると思う
広告ウィジェットに広告を入れてないからだと思われます。※3つ一気に広告表示を出すウィジェット。
投稿記事・トップページ・固定ページ用のウィジェットに、それぞれ広告を入れているとき➡広告ウィジェットに入れなおす必要はありません。
※アドセンスをどのウィジェットに入れているのかこちらでは確認できません。
広告ウィジェットを使ってなければ、myadなどのテンプレートファイルを作成してSimplicityと同じHTMLタグで囲った中に広告コードをいれても良いかもしれません。
> 87行目にget_template_part(‘ad’);
とありますが、
get_template_part(‘ad’);
です。’(全角shiftキー+数字の7キー)ではなく’(半角shiftキー+数字の7キー)
子テーマに追記した部分を以下のようにして
get_template_part(‘myad’);子テーマにmyad.phpを導入します。
具体的には下記ページの以下見出しを行います。
https://bibabosi-rizumu.com/wordpress-page-template/目次:『WordPressのPHPファイル、文字コードをチェック』からチェックして、次の見出し『親テーマのPHPファイルを、独自テンプレートに変更:初心者向け』の工程を行ってください。PHPファイル名は
myad.php見出し『アップロードした、固定PHPファイルを編集』の手前まででOK!
ファイルの中身は要素の検証を使えるのであれば、広告に書いてあるタグをコピー。タグ以外のスクリプト部分は広告コードを貼ればOKです。
または、Simplicity2:ad.phpの内容から、HTMLををコピペして
<?php echo get_ads_label() ?>をスポンサーリンクに編集すればOKです。スマホ・PCで広告コードを分けたい時は、WordPressの分岐タグで広告コードや・タグごと分岐すればOKで、検索すればたくさんのページで紹介してます。
-
2018年3月21日 1:44 AM #59381
尾坂
ゲストかうたっく様
たいへん分かり易く、丁寧なアドバイスを頂戴いたしまして本当にありがとうございます。
リンク先の記事を参照させていただきながら、先ほどなんとか上手く動かすことが出来ました。
どれも基本的中の基本(かと思います…)で、安易な質問してしまい恐縮です。丁寧にご回答いただきましたこと、本当に感謝申し上げます。ありがとうございました。
-
-
投稿者投稿
- トピック「「最初だけ本文表示」の場合、当該本文とそれ以下のエントリカードの間に広告等を入れる方法」には新しい返信をつけることはできません。