snow_monkey_template_part_render

  • ブックマーク
  • -
    コピー

snow_monkey_before_entry_content

snow_monkey_prepend_entry_content

テンプレートの部分的な書き換えなどを行う際によく利用します。

実験的にここでは、投稿の詳細ページのタイトル部分にマークアップされている<header>タグ全体を書き換えて、CSSクラスp-added-css-classを既存CSSクラスに追加するという(意味のない)ことをやってみようと思います。

対象となるテンプレートファイルの場所は、

template-parts/content/entry/header/header.php

になります。これをフック名の最後に、上の最後の.phpを取ったもの(これをスラッグと言います)を追記します。

上記のテンプレートを上書きするフィルターフック名は、以下の文言になります。

snow_monkey_template_part_render_template-parts/content/entry/header/header

では、ソースコードはどうなるでしょう。

ソースコード

<?php
/**
 * @param $html テンプレートパーツの出力HTML
 * @param $name テンプレートパーツの名前
 * @param $vars テンプレートパーツのリクエスト配列
 */
add_filter(
	'snow_monkey_template_part_render_template-parts/content/entry/header/header',
	function( $html, $name, $vars ) {
		$html = str_replace(
			'<header class="c-entry__header">',
			'<header class="c-entry__header p-added-css-class">',
			$html
		);
		return $html;
	},
	10,
	3
);
str_replaceについてはこちらを参照

こうすることで、投稿詳細ページのタイトル(<h1>)をラップしている<header>に付いているクラス名を増やす(正確には<header>タグを上書きしている)ことになります。

公式リファレンス

snow_monkey_template_part_renderフックを
Snow Monkey公式フォーラムで検索する
「あれ?この情報、古くない?」と思ったらご連絡ください。

snow_monkey_append_entry_content

snow_monkey_after_entry_content

HAPPY SNOW MONKEYの管理人情報

久野 晃司

Web制作系フリーランス。WordPressに関するお仕事や活動が多いです。

WordPressコア貢献者/テーマ開発者/プラグイン開発者/Meetupオーガナイザー/翻訳貢献者