CG
(@du-bist-der-lenz)
前提として、インフィード広告以外、または広告以外は表示されていますね。
-
この返信は6年、 3ヶ月前にCGが編集しました。
コードを書くときはcode
を押してバッククォートで囲ってください。
4つ目と8つ目に広告を表示するという形でしょうか?
loop-replies.php
のこの部分を
<?php while ( bbp_replies() ) : bbp_the_reply(); ?>
<?php bbp_get_template_part( 'loop', 'single-reply' ); ?>
<?php endwhile; ?>
以下のように変更したらどうですか?
<?php $count = 1;
while ( bbp_replies() ) : bbp_the_reply();
bbp_get_template_part( 'loop', 'single-reply' );
if ($count == 4 || $count == 8 ): ?>
(インフィード広告用コード)
<?php endif; $count ++; endwhile; ?>
>>CG様
コードを追加した場合でも広告以外は問題なく表示されています
>>manbo様
コードありがとうございます
ご指摘の通りに変更してみたのですが、パンくずリストのみ表示され、真っ白になってしまいました
編集したテンプレートは合ってますか?
編集したテンプレートのコードを張り付けて貰えますか?
コードはcode
を押してバッククォートで囲ってください。
<?php
/**
* Replies Loop
*
* @package bbPress
* @subpackage Theme
*/
?>
<?php do_action( 'bbp_template_before_replies_loop' ); ?>
<ul id="topic-<?php bbp_topic_id(); ?>-replies" class="forums bbp-replies">
<li class="bbp-header">
<div class="bbp-reply-author"><?php _e( 'Author', 'bbpress' ); ?></div><!-- .bbp-reply-author -->
<div class="bbp-reply-content">
<?php if ( !bbp_show_lead_topic() ) : ?>
<?php _e( 'Posts', 'bbpress' ); ?>
<?php bbp_topic_subscription_link(); ?>
<?php bbp_user_favorites_link(); ?>
<?php else : ?>
<?php _e( 'Replies', 'bbpress' ); ?>
<?php endif; ?>
</div><!-- .bbp-reply-content -->
</li><!-- .bbp-header -->
<li class="bbp-body">
<?php if ( bbp_thread_replies() ) : ?>
<?php bbp_list_replies(); ?>
<?php else : ?>
<?php $count = 1;
while ( bbp_replies() ) : bbp_the_reply();
bbp_get_template_part( 'loop', 'single-reply' );
if ($count == 4 || $count == 8 ): ?>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block; text-align:center;"
data-ad-layout="in-article"
data-ad-format="fluid"
data-ad-client="ca-pub-xxxxxxx"
data-ad-slot="xxxxxxx"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
<?php endif; $count ++; endwhile; ?>
<?php endif; ?>
</li><!-- .bbp-body -->
<li class="bbp-footer">
<div class="bbp-reply-author"><?php _e( 'Author', 'bbpress' ); ?></div>
<div class="bbp-reply-content">
<?php if ( !bbp_show_lead_topic() ) : ?>
<?php _e( 'Posts', 'bbpress' ); ?>
<?php else : ?>
<?php _e( 'Replies', 'bbpress' ); ?>
<?php endif; ?>
</div><!-- .bbp-reply-content -->
</li><!-- .bbp-footer -->
</ul><!-- #topic-<?php bbp_topic_id(); ?>-replies -->
<?php do_action( 'bbp_template_after_replies_loop' ); ?>
こちらテンプレート内の全コードです
連投すみません
先ほどbbpressのフォルダ内にデフォルトのテンプレートを戻し
テーマフォルダ直下にコードを追加したテンプレートを置いてみたところ、ページは問題なく表示されました
しかし相変わらず広告は表示されない状態です。
単にアドセンスの反映が遅いという現象も疑ってみましたが、該当部分に空白などもありませんので、違うと思います。
編集された内容自体は問題無いようですね。
こちらの環境では真っ白になるようなことはないです。
要はこういうことですよね?
https://i.imgur.com/XdqbwxB.jpg
ちなみに、最近アドセンスとか触ってないので忘れましたが<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
はループの外で良いと思います。
<ins class="adsbygoogle"~</ins>
も多分一回読み込めば良いんじゃないかと思いますが。
と打ち込んでたらコメントが入ってましたが、そのまま投稿します。
表示されない原因も書いてました。
まさに画像のような表示を目指しています
先ほどアドセンスコードの一部をループ外に書き換えたのですが、変わらずでした
試しに文字列を出力してみたのですが、これも表示されなかったので
やはり別の問題でループがカウントされていないのかもしれません
そうですね。
まず、広告の前に文字列を正しく出力できることが確認されなければ先に進まないですね。
とりあえずデバッグモードでエラーが出ていないか確認してみてください。
ようやく解決しました
単純にbbpressの設定画面で
返信スレッドのルール~返信を〇階層までのスレッド (入れ子) 形式にする
のチェックを外しただけです。
入れ子にしている場合はなんらかの処理があるみたいですね。
原因は全く分かりませんが、とりあえず解決しました
manboさま、お付き合いいただき本当にありがとうございました
解決したなら解決済みにしておいてください。
あと、過去の質問も解決済なら同様に。