WordPressのテンプレートを直に編集すること無く、用意された関数のみで挿入したいと考えた時、どうすれば良いのかな?
と思い調べた時のメモ。
この方法ではhead内にタグをそのまま挿入可能ですが、cssやjavascriptのリンクに関しては専用の挿入する関数がWordPressには用意されていますので、cssやjavascriptのみ挿入したいのであればそちらを使うのが良いかと思います。
cssやjavascriptの挿入する位置が最適な場所になる、事前に読み込んで起きたいファイルなどがある場合は読み込む順番の指定が出来る。読み込むファイルの記述を一箇所で管理することによりメンテナンス性が上がるなどのメリットがあります
まぁ今回説明する方法で挿入しても問題ないので、あなたの好きな方を使えば良いと思います。
挿入方法
基本は挿入したいタグを書いたユーザー定義関数を作成し、それをアクションフックに追加するだけです。
// head内に挿入したいタグ処理
function add_wp_meta_tag() {
echo 'ここにメタタグを書く ex) <link rel="stylesheet" href="test.css" />';
}
// add_actionにてwp_headの動作にadd_wp_meta_tagの処理を追加
add_action('wp_head', 'add_wp_meta_tag');
上記の3行目の'’で囲まれた部分を編集してご利用下さい。
echoで挿入するのはやり辛い。echoって何?という方は以下の方法
<?php
// head内に挿入したいタグ処理
function add_wp_meta_tag() {
?>
↑PHPの終了タグ以降から
ここの部分は全てHTMLとして処理されます。
改行もお好きにどうぞ。
何行でも。
↓このPHPの開始タグの間までお好きに書けます。
<?php
}
// add_actionにてwp_headの動作にadd_wp_meta_tagの処理を追加
add_action('wp_head', 'add_wp_meta_tag');
?>
一度PHPの記述方法を終了し、普通のテキストとして記載する方法ですね。
この方法ですと、PHPの記述ルールに沿うこと無く挿入したいタグをそのまま貼り付けるだけで良く。エラーも起こりませんので、複数行貼り付けたい!けどなんか最初の方法ではエラーが発生した!という方は2つ目の方法をお使い下さい。
個人的にはPHPを書くなら閉じタグなどを使わず全てPHPの記述方法で書きたい!
というタイプなので2つ目の方法はあまり好きではないのですが、PHPの書き方って良
く分からない。って方でもWordPressを使えるのがメリットだと思うので、初心者の方であれば2つ目の方がheadに挿入する方法がメタタグを書きやすいと思います。
タグがheadに反映されない時
今回の方法ではadd_actionでwp_headのフックを利用しております。
当然header.phpの</head>タグ直前に以下の記述を行って下さい。
<!--?php wp_head(); ?-->
これが<head>内にない場合はタグが挿入されません。
ひとこと
調べてみれば簡単な方法なんですが、使わないとアレなんだったっけかな?
どうやったら出来たっけかな?とちょくちょく忘れることあるんですよね。
今回のはGoogle Search Consoleのサイト所有者確認タグを貼り付ける際にどうやったっけかな?と忘れたので調べ直した時のメモ(^^;