スポンサーリンク

WordPress記事中最初のH2見出し前に広告を自動挿入方法

投稿日:

本日の人気記事BEST10

所要時間目安: 約 3

WordPress

Stinger6 Stinger7 WordPress カスタマイズ カスタマイズ 伝えたいこと 備忘録

WordPress

WordPressで記事の途中に思い通りの広告などをショートコードなどによって、
挿入する方法はいくつかあります。

今回は、
記事中の始めのh2タグの前にウィジェットとして追加して自動的に表示する方法です。

具体的な方法はfunction.phpに以下のコードを記載・記述することで、


スポンサーリンク

///////////////////////////////////////
 // 投稿本文中ウィジェットの追加
 ///////////////////////////////////////
 register_sidebars(1,
 array(
 'name'=>'投稿本文中',
 'id' => 'widget-in-article',
 'description' => '投稿本文中に表示されるウイジェット。文中最初のH2タグの手前に表示されます。',
 'before_widget' => '<div id="%1$s" class="widget-in-article %2$s">',
 'after_widget' => '</div>',
 'before_title' => '<div class="widget-in-article-title">',
 'after_title' => '</div>',
 ));
///////////////////////////////////////
 //H2見出しを判別する正規表現を定数にする
 ///////////////////////////////////////
 define('H2_REG', '/<h2.*?>/i');//H2見出しのパターン
///////////////////////////////////////
 //本文中にH2見出しが最初に含まれている箇所を返す(含まれない場合はnullを返す)
 //H3-H6しか使っていない場合は、h2部分を変更してください
 ///////////////////////////////////////
 function get_h2_included_in_body( $the_content ){
 if ( preg_match( H2_REG, $the_content, $h2results )) {//H2見出しが本文中にあるかどうか
 return $h2results[0];
 }
 }
///////////////////////////////////////
 // 投稿本文中の最初のH2見出し手前にウィジェットを追加する処理
 ///////////////////////////////////////
 function add_widget_before_1st_h2($the_content) {
 if ( is_single() && //投稿ページのとき、固定ページも表示する場合はis_singular()にする
 is_active_sidebar( 'widget-in-article' ) //ウィジェットが設定されているとき
 ) {
 //広告(AdSense)タグを記入
 ob_start();//バッファリング
 dynamic_sidebar( 'widget-in-article' );//本文中ウィジェットの表示
 $ad_template = ob_get_clean();
 $h2result = get_h2_included_in_body( $the_content );//本文にH2タグが含まれていれば取得
 if ( $h2result ) {//H2見出しが本文中にある場合のみ
 //最初のH2の手前に広告を挿入(最初のH2を置換)
 $count = 1;
 $the_content = preg_replace(H2_REG, $ad_template.$h2result, $the_content, 1);
 }
 }
 return $the_content;
 }
 add_filter('the_content','add_widget_before_1st_h2');

 

管理画面の中に記事中ウィジェットという項目が追加されます。

こんな感じです。

記事本文中にウィジェット追加

ここに、
テキストなどのウィジェットを追加すると、
記事中の始めのh2タグの上部に追加した内容が表示されるようになります。

ショートコードなどをわざわざ使用しなくても、
自動的に広告などが表示されるようになります。

 

最後に、function.phpをいじる際には、

必ずFTPソフトなどでいじる前のfunction.phpファイル自体をバックアップしてからにしてください。

でないとミスした時などに画面が真っ白になってしまいます。
バックアップをとっていればそのバックアップファイル自体を元の場所にアップロードで上書きすることで元に戻すことができます。

参考サイト)

以前2度にわたり、投稿本文中のH2見出し手前に手軽にアドセンス(広告)を表示する方法を書きました。

 

スポンサーリンク

表示をカスタマイズしたい方は、CSSで簡単に微調整ができます。

広告部分には「 .widget-in-article 」、ラベル部分には「 .widget-in-article-title 」というclass名が振られているので、CSSですぐにカスタマイズできます。

参考にCSSです。

.widget-in-article {
 margin-bottom: 20px;
 }
 .widget-in-article-title {
 font-size: 80%;
 color: #333;
 }

-Stinger6, Stinger7, WordPress, カスタマイズ, カスタマイズ, 伝えたいこと, 備忘録
-, ,

おすすめ記事一部広告

スポンサーリンク


  • この記事を書いた人
  • 最新記事

izu

はじめまして、izuと申します。医療ミスにより長胸神経麻痺になってしまい若干の障害がありブログをさせていただいています。旦那との共同運営になりつつありますがよろしくお願いいたします。

Follow Me !

よろしかったらシェアよろしくお願いします。



この記事が良かったら
いいね!お願いします(#^.^#)

WordPressデビュー津々浦々の
最新情報をお届けします

言えないことはTwitterで!!




Copyright© WordPressデビュー津々浦々 , 2017 AllRights Reserved Powered by AFFINGER4.