2022年03月31日

Actionフック:wp_head

アクションフックの wp_head は、header.phpの中の必須関数wp_head()が実行される時にフックされます。

カスタマイザで設定した内容を反映させる時に利用します。

 

1.基本系

基本系は下記になります。

function 〇〇(){
	// get_theme_mod()でカスタマイズ変数の値を取得してCSS等を変更する
}; 
add_action( 'wp_head', ○○);

■アクションフック:wp_headには参照変数はありません。


事例

①カスタマイザで設定した設定値を読み込む

function customizer_settings(){
?>
	<!-- サイドバーが右か左かの処理 -->
	<?php if(get_theme_mod('sidebar_setting') == 'left'):?>
	 <style>
	 	#post_contener{
	 		align-items:stretch;
	 		flex-direction:row;}
	 </style>
	<?php endif;?>
		 
	<!-- PCの左右マージンの処理 -->
	<?php if(get_theme_mod('margin_pc') | get_theme_mod('margin_sm') | get_theme_mod('margin_xs')):?>
		<style>
			#header_contener,#menu_contener,#slide_contener,#post_contener,#page_contener,#footer_contener
				{margin:0 <?php echo get_theme_mod('margin_pc',8);?>%;}
			@media screen and (min-width:768px) and (max-width:991px){
				#header_contener,#menu_contener,#slide_contener,#post_contener,#page_contener,#footer_contener
					{margin:0 <?php echo get_theme_mod('margin_sm',2);?>%;}
			}
			@media screen and (max-width:767px){
				#header_contener,#menu_contener,#slide_contener,#post_contener,#page_contener,#footer_contener,#post_sidebar_xs
					{margin:0 <?php echo get_theme_mod('margin_xs',0);?>px;}
			}
		</style>
	<?php endif;?>
<?php	
}; 
add_action( 'wp_head', 'customizer_settings');

■どの様なカスタマイズメニュか?はカスタマイズ画面に「ユーザ作成メニュ」を追加する方法を参照して下さい。

 

アクションフック&関数
  • admin_init
  • admin_menu
  • after_setup_theme
  • customize_register
  • manage_pages_custom_column
  • manage_posts_custom_column
  • pre_get_posts
  • save_post
  • widgets_init
  • wp_enqueue_scripts
  • wp_head
  • add_editor_style()
  • add_post_type_support()
  • add_theme_support()
  • do_action()
  • get_post()
  • get_theme_mod()
  • register_nav_menu()
  • register_post_type()
  • register_sidebar()
  • register_taxonomy()
  • register_widget()
  • remove_action()
  • remove_editor_styles()
  • remove_theme_support()
  • set_post_thumbnail_size()
  • set_query_var()
  • show_admin_bar()
  • unregister_nav_menu()
  • unregister_widget()
  • wp_enqueue_script()
  • wp_enqueue_style()