Skip to content

Action hooks

K-Mix39 edited this page Aug 19, 2019 · 21 revisions

Action hooks 目次

snow_monkey_prepend_drawer_nav

ドロワーナビゲーション内メニュー前に HTML を表示

add_action(
	'snow_monkey_prepend_drawer_nav',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_append_drawer_nav

ドロワーナビゲーション内メニュー後に HTML を表示

add_action(
	'snow_monkey_append_drawer_nav',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_prepend_body

<body> の直後に HTML を表示させる

※ Snow Monkey 5.6.0 以上 + WordPress 5.2 以上の場合は wp_body_open を推奨

add_action(
	'snow_monkey_prepend_body',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_get_template_part_<slug>

該当のテンプレートパーツの出力を変更

MEMO: フック名の <slug> の部分は、該当のテンプレートパーツの slug となります。
想定される使い方として、テンプレートの出力 HTML を定義するなどに使います。(コードを参照)

/**
 * @param $name テンプレート名
 * @param $vars テンプレートへのリクエスト配列
 */
add_action(
	'snow_monkey_get_template_part_templates/view/404',
	function( $name, $vars ) {
		?>
		表示したい HTML 文字列
		<?php
	},
	10,
	2
);

snow_monkey_get_template_part_<slug>-<name>

該当のテンプレートパーツの出力を変更

※ Snow Monkey v6 ベータ3より追加

MEMO: フック名の <slug><name> の部分は、該当のテンプレートパーツの slug、または name となります。
想定される使い方として、テンプレートの出力 HTML を定義するなどに使います。(コードを参照)

/**
 * @param $vars テンプレートへのリクエスト配列
 */
add_action(
	'snow_monkey_get_template_part_template-parts/content/entry/header/header-post',
	function( $vars ) {
		?>
		表示したい HTML 文字列
		<?php
	},
	10
);

snow_monkey_prepend_footer

フッターの前に HTML を挿入する

MEMO: 位置的には、<footer> の後(ソーシャルナビの前)となる。

add_action(
	'snow_monkey_prepend_footer',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_append_footer

フッターの後に HTML を挿入する

MEMO: 位置的には、 </footer> の前。コピーライトの上(正しくはページトップの前)となる。

add_action(
	'snow_monkey_append_footer',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_prepend_sidebar

サイドバーの最初に HTML を挿入する

MEMO: サイドバーの aside の後に挿入される。

add_action(
	'snow_monkey_prepend_sidebar',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_append_sidebar

サイドバーの最後に HTML を挿入する

MEMO: サイドバーの </aside> の前に挿入される。

add_action(
	'snow_monkey_append_sidebar',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_sidebar

サイドバーのテンプレートパーツの読み込みを制御

MEMO: デフォルトは優先度20。

add_action(
	'snow_monkey_sidebar',
	function() {
		if ( 該当テンプレートパーツに変更する条件 ) {
			\Framework\Helper::get_template_part( 'template-parts/widget-area/テンプレートパーツ名' );
		}
	}
);

snow_monkey_prepend_main

メインコンテンツ前に HTML を追加

MEMO: <main> の後に追加される。

add_action(
	'snow_monkey_prepend_main',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_append_main

メインコンテンツ後に HTML を追加

MEMO: </main> の前に追加される。

add_action(
	'snow_monkey_append_main',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_prepend_contents

コンテンツの先頭に HTML を追加

MEMO: <div class="l-contents" role="document"> の後に追加される。 位置としてはお知らせバーの上辺りになります。

add_action(
	'snow_monkey_prepend_contents',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_append_contents

コンテンツの最終に HTML を追加

MEMO: <div class="l-contents" role="document"> の閉じタグ前に追加される。
位置としては、ソーシャルナビを含む、フッター表示の前です。

add_action(
	'snow_monkey_append_contents',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_before_contents_inner

インナーコンテンツ先頭の位置に HTML を追加する

MEMO: 位置としては、パンくずをコンテンツの上と設定していれば、その下辺りになります。

add_action(
	'snow_monkey_before_contents_inner',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_after_contents_inner

インナーコンテンツ最終の位置に HTML を追加する

MEMO: 位置としては、パンくずをコンテンツの下と設定していれば、その上辺りになります。

add_action(
	'snow_monkey_after_contents_inner',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_before_entry_content

エントリーコンテンツの先頭に HTML を追加する

MEMO: 投稿や固定ページであれば、投稿本文、または固定ページのページ編集内容の先頭となります。

add_action(
	'snow_monkey_before_entry_content',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_after_entry_content

エントリーコンテンツの最終に HTML を追加する

MEMO: 投稿や固定ページであれば、投稿本文、または固定ページのページ編集内容の最終となります。

add_action(
	'snow_monkey_after_entry_content',
	function() {
		?>
		表示したい HTML 文字列
		<?php
	}
);

snow_monkey_entry_meta_items

投稿の概要要素(entry_meta)を追加する

MEMO: 投稿の概要要素とは、投稿記事タイトル下の「投稿日時、更新日時、投稿者名、カテゴリ」などの要素を指します。
<ul> 要素内に書かれているフックな為、<li> から記述する必要があります。(5.6.1現在)
各優先度によって表示される位置が異なります。(下記の数値位置は、5.6.1現在)

  • 1〜10 : 先頭
  • 11〜20 : 投稿日の後ろ
  • 21〜30 : 更新日の後ろ
  • 31〜40 : 投稿者の後ろ
  • 41以上 : カテゴリの後ろ
add_action(
	'snow_monkey_entry_meta_items',
	function() {
		?>
		<li class="c-meta__item c-meta__item--アイテム名">表示したい HTML</li>
		<?php
	},
	10,
	1
);

snow_monkey_pre_load_customizer

snow_monkey_post_load_customizer

Clone this wiki locally