WordPressをhttps化したらAdsenseの収益が半減した話

先日,KUSANAGI環境において,サイトを一発でSSL化する手順について記しました。

その後,https化してから3-5日ほど経ってからでしょうか,Adsenseの収益が顕著に減ってしまいました。

週末をはさんだため,少しアクセス数が減っただけかと思いきや,平日になっても戻ってきません。

SSL化したほうがSEOにも有利になるというのは,元々Googleのおすすめで行ったため,まさかこのような結果になるとは想像もしていませんでした。

https化は必ずよい効果をもたらすだろうと100%盲信していました。

KUSANAGIでのhttps化は,きちんと301リダイレクトもしてくれますし,その後,リンク切れ等の不具合は一切感じていませんが,なぜか収益が戻ってきません。

Googleサーチコンソールを見てみると,検索からの流入がやはり半減しています。

しかし興味深いことに,Analyticsのデータを見ると,アクセス数は特に変わっていないように見えるので,問題が生じていることに気づくのが遅くなってしまいました。
続きを読む

WordPressでループの最初の記事だけに何かを挿入する方法

Wordpressでは、tagページやarchiveページは、記事の表示にループ出力が用いられています。

このようなページにおいて、ループの最初の記事だけに何かを表示させたい場合があります。

例えば、tagページにAdsenseを挿入したい場合、もしも、ループしているすべての記事の末尾に挿入してしまうと、複数のAdsenseが表示されてしまうことになり、規約違反となってしまいます。

または、ループの最初の記事だけにサムネイル画像を表示さえて強調させたいということがあるかもしれません。

そのような場合に、ループの最初の記事だけに何かを挿入する方法です。

下記は、tagページにおいて、最初の記事の末尾だけに広告を挿入する方法です。

tag.php内で、Start the Loopという項目を探し、下記のように編集します。

<?php /* Start the Loop */ ?>
<?php $first_flag_for_ad = true;?>
<?php while ( have_posts() ) : the_post(); ?>
<?php
/* Include the Post-Format-specific template for the content.
 * If you want to overload this in a child theme then include a file
 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
 */
get_template_part( 'content', get_post_format() );
?>

<?php if($first_flag_for_ad) : ?>
<?php echo <<<EOD
【ここに挿入】
EOD;
?>
<?php $first_flag_for_ad = false;?>
<?php endif;?>
<?php endwhile; ?>
<?php twentyeleven_content_nav( 'nav-below' ); ?>
<?php else : ?>


上記を解説すると、$first_flag_for_adという変数を用意し、最初の出力が終わった段階で、Falseに変更します。While内でTrueの場合にだけ出力させることにより、実現させています。

こうして、Wordpressにおいて、ループ出力させているページの最初の記事だけに何かを表示させることができました。