まず、はじめに。うっとおしい広告を入れてすみません(_ _) こういう賑やかし、やりたかったんです(^^;なんかブログっぽいな、と思ってgoogle adsenseに登録してみました。こんな備忘録のブログでも審査に通るんすねぇ~。
先週より、6年ほどお世話になった “wordpress.com” から 引っ越し。理由は・・・スタイルシート変更のために払っていた4000円をケチるため。
もともとwordpressを始めた頃に、スタイルシートの修正を保存できるように、と思ってカスタムスタイルシート・プランを15ドル/年で購入したんですが、3年程前から円安のせい?か倍の30ドルに値上げになって・・・スタイルシートを保存するためだけに4000円って・・・ってな感じ。
で、仕事用に使っていたVPSに移しました。さらに、ドメイン転送にも1600円/年かかり、どこまで貧乏人からむしり取るんじゃー、と愚痴りつつ、やっと移行完了。
Google AdSense もイマイチ用語が分からず、広告ユニットって何? コンバージョン? なにそれ、おいしいの? とチンプンカンプンな用語のオンパレードの管理画面をもう見る気もせず、適当に3つ配置。
サイドバーのウィジェットに表示させるのは「HTML Javascript Adder」プラグインを使って簡単に放り込めたんですが、投稿記事に貼り付ける方法がいまいち分からず、手っ取り早く、直接テーマ内の functions.php に “the_content”フィルターフックを仕込んで適当に解決。
<?php // into functions.php /******************************************************* 最初の<p>タグ(段落)の後ろに広告を表示させたいので、 wpautop関数がコールされた後にコールされないと意味がない。 とりあえず優先度を999で様子を見る。この辺よくわからん。 *******************************************************/ add_filter( 'the_content', 'inject_google_adsense_code' , 999); function inject_google_adsense_code($content) { global $wp_query; static $ads = <<<__EOL__ ここに 広告のコードを挿入。 __EOL__; // ループの最初の記事だけに適用 if(!is_feed() && 0 == $wp_query->current_post) { // 最初の段落の終わり</p>閉じタグの後ろに広告コードを挿入 if(false !== ($pos = strpos($content,'</p>'))) { $pos += strlen('</p>'); $content = substr($content,0,$pos) . $ads . substr($content,$pos + 1); } } return $content; } //追記 // feed の中にも出てきてしまっていたので is_feed()関数で除くようにした。
ふぅ。