記事の終わりに広告を表示したい

サイドバーやフッターではなく、記事の最初や最後などに広告を表示するには、テーマのテンプレートを編集しなくても、フックを利用すると可能です。

記事、タイトル、抜粋など、何かを表示するタイミングでは、たいてい何かしらのフックが利用可能です。

コンテンツを表示するときには、the_content フックがあります。

以下のようにすると、引数に渡された表示予定の内容($content)を加工、追記、置換などして、表示させることができます。

add_filter( 'the_content', '自作の関数名' );
function 自作の関数名($content) {
    // $content を加工したり、追記したりして return する。
    return $content;
}

使用例

the_contentフックは、検索結果や投稿一覧でも発動するため、単体の記事のときだけ末尾に広告を付与し、そうでないときはそのまま返すように、if文で条件を付けています。

add_filter( 'the_content', 'my_the_content' );
function my_the_content($x) {
	if (is_single()) {
		return $x . '<div>
<ここに
  広告タグを
  入れるのです>
</div>';
	} else {
		return $x;
	}
}

$x . '広告タグ' を逆にして、'広告タグ' . $x にすると、内容の前に広告を挿入できます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です