Ver1.6 Released !

【WordPress】functions.phpからhead内にタグを追加する方法

WordPressではheader.phpをいじることなく、functions.phpからhead内にタグを追加することができます。子テーマのfunctions.phpなどからメタタグを追加したい場合などに便利です。

注意

functions.phpを編集するときには、あらかじめバックアップを取るようにしましょう。

WordPressでバックアップを取る4つの方法(初心者向け)
WordPressでバックアップを取る4つの方法(初心者向け)

コード

以下のコードにより、head内にタグを出力できます。

functions.php
//headにタグを追加
add_action( 'wp_head', 'add_meta_to_head' );
function add_meta_to_head() {
	echo 'ここにhead内に出力したい内容';
}

使用例

例えば、head内に<meta property="fb:app_id" content="123456" />というタグを挿入したい場合には、以下のように書きます。

functions.php
//headにタグを追加
add_action( 'wp_head', 'add_meta_to_head' );
function add_meta_to_head() {
	echo '<meta property="fb:app_id" content="123456" />';
}

必要に応じてご活用くださいませ。

6 Comments

aio

いつもありがとうございます。
初心者ですが、とても使いやすく満足しています。
1つ確認があり、コメントしました。
色々探したのですが、載っている所が見つかりませんでした。
もし、説明済みでしたら申し訳ありません。

今回、googleアドセンスの申請の為「審査用コード」をheadタグ内に貼り付けたいのですが、「外観」→「カスタマイズ」→「詳細設定」の中にある「headタグ内にコードを挿入」する場所があると思うのですがそちらに入力しても大丈夫なんでしょうか?
それとも、「外観」→「テーマの編集」からでないといけないのでしょうか?
お忙しい所申し訳ありませんが、よろしくお願いします。

返信する
サルワカくん

ありがとうございます。
「headタグ内にコードを挿入」欄に貼り付ければOKです!
(外観⇒テーマ編集から追加しても、コードは同じになります)。

返信する
aio

回答ありがとうございました。
今回は心配で外観→テーマ編集から追加しましたが、今後は安心して詳細設定から利用できそうです!自分サイトの方にも、設定方法として載せさせて頂きたいと思います!ありがとうございました。

返信する
higuchi

タグの記事一覧ページのヘッダー内に「noindex,follow」のメタタグが付く状態になっておりますが、小テーマ内での編集で「noindex,follow」のメタタグを付けないようにすることはできますか?

返信する
サルワカくん

子テーマのfunctions.phpに以下のコードを追加することで変更が可能です。
必要に応じて書き換えて頂ければと思います。

//noindex、nofollowの調整
remove_action( 'wp_head', 'sng_meta_robots' ,999);
add_action( 'wp_head', 'my_meta_robots' ,100);
function my_meta_robots() {
    global $post;
    $rogots_tags = '';

    if ( is_attachment() ) {//メディアページの場合

      $rogots_tags = 'noindex,nofollow';

    } elseif ( is_page() || is_single() ) { //記事・固定ページの場合

        $robots_r  = get_post_meta( $post->ID, "noindex_options", true );
        if( is_array($robots_r) ) {
          $rogots_tags = ( in_array('noindex', $robots_r) && !in_array('nofollow', $robots_r)) ? 'noindex,follow' : implode( ",", $robots_r ); }

    } elseif( is_paged() || is_tag() || is_date() ){ //2ページ目以降、アーカイブ、タグ

        //コメントアウトで非表示に
        //$rogots_tags = 'noindex,follow';

    } elseif( is_search() ){ //検索結果はインデックスしない

        $rogots_tags = 'noindex,nofollow';

    } elseif( is_category() ){ //カテゴリーページ
    	//初期設定ではインデックス。下記のコメントアウトを外すとnoindexに
        //$rogots_tags = 'noindex,follow';
    }

    if($rogots_tags) echo '';//出力
} //END noindex、nofollowの調整
返信する

コメントを残す

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