Luxeritasでnoindexを設定して検索エンジンに登録させない方法 CSSも同じ

2017年9月14日WordPress,Luxeritas

現在はできるようになっています

WordPress用テンプレート『ルクセリタス』を愛用させてもらっているのですが、よくみたら検索エンジンに登録させないための “noindex" 設定が個別ページでできないんですね。

ページを除外することがあまりないために意識しておらず、先ほど『問い合わせフォーム』を修正した時にはたと気づいたというわけで。

Luxeritasでのnoindex,nofollow設定

Luxeritasではページごとに index と follow を指定することができない。

ということは自分で<meta name="robots" content="noindex">を<head>内に挿入することになります。

htmlタグを<head></head>に挿入する

Luxeritasには<head>内に記述する方法として “addhead" という名前のカスタムフィールドが用意されています。addheadはヘッダー内にメタ情報を入力したい時に用いるもので、htmlで記述します。

Luxeritasでは “addhead" というフィールドに入力した値をHead内に書き込むようになっているので、そこに書き込んでやるというわけ。

カスタムフィールドとはページ本文以外に情報を持たせるための領域で、Wordpressやテーマが参照します。たとえばそのページがAMP対応をオンにしているかオフにしているかといったデータを保存しています。もちろんあなたが作ったプログラムでも呼び出すことができます。

カスタムフィールドのデータは”名前”と”値”をもちます。addheadは名前にあたり、データは入力したいhtmlコードとなります。

カスタムフィールドへのデータ入力は投稿画面・固定ページ投稿画面の下に表示されているカスタムフィールドボックスから行います。

カスタムフィールドが見当たらなかったら、投稿画面の右上にある「表示オプション」を開いて”カスタムフィールド”にチェックを入れます。すると投稿画面下の方に入力パネルが表示されるようになります。

wordpressカスタムフィールド custom fieldwordpressカスタムフィールド custom field

カスタムフィールドに入力

カスタムフィールドボックスに表示されている「新規追加」をクリックすると ”名前” と ”値”を入力できるようになります。

入力ボックスには

名前:addhead
値 :<meta name="robots" content="noindex">

と入れます。

wordpressカスタムフィールド新規追加

入力を終えたらカスタムフィールドを追加をクリックして完了です。

そのページのソースの<had></head>内に<meta name="robots" content="noindex">が挿入されていたら成功です。

noindexってなんだ?検索エンジンとメタ情報

カスタムフィールドに挿入した<meta name="robots" content="noindex">について簡単に説明すると。

検索エンジンのプログラムは検索結果に表示させるための情報を収集するために、さまざまなサイトにはられたリンクをたどってウェブサイトをめぐっています。このプログラムをクローラー(Crawler)、ロボット(robot)、ボット(bot)、ウェブボット(web bot)などと呼びます。

ウェブに公開はしていても、検索結果には表示させたくない情報もあります。パスワードをかけるほどではなくても、あまり広まってほしくない情報をロボットに取得しないよう要請するのがロボット向けmeta記述です。

meta

htmlでは本文とブラウザや検索エンジンへに渡すための情報を分離して記述します。<body>内が本文、それ以外がメタ情報となります(メタ情報にあたるものも本文内に入れますが例外として考える)。

ワープロソフトの書類に例えるなら本文としての文字と、印刷設定のマージンやページ表示位置、柱などといった情報は別で扱われます。それと同じことがhtmlでも行われており、そのページの本文以外の情報、たとえば使用している言語文字コードといった情報はメタ情報と呼ばれ<head>内に記述されます。

name="robots"

検索エンジンの情報収集のために巡回するプログラム(クローラー)のことをrobotと呼びます。検索エンジンのプログラムはname="robots"をみつけると、そこに書かれたことを自分へのメッセージだと解釈します。

content="noindex

contentにはrobotへのリクエストを書きます。noindexならインデックスしない=検索結果に表示してくれるなというお願いとなります。

サイト側からのお願いなので、検索エンジンが必ずしもリクエストに答えてくれるとは限りません。おおむね要求に従ってくれますが、そうでないこともあります。

■その他の記述

content="noindex"の逆はcontent="index"となりますが、明示する必要はありません。

他に follow と nofollow という記述もあります。これはそのページにあるリンク先に飛ばないでというリクエストです。そのページの他にも複数の重複ページがあってリンク先を読みに行ってほしくない場合は “noindex,nofollow"と書きます。

<meta name="robots" content="noindex,nofollow">

外部スタイルシートも同じくaddheadに書けばヘッダー内で読み込まれる

余談になりますが、外部スタイルシートも同じくlink rel="stylesheet" href"~">をaddheadに書き込むことで、ヘッダーに入れることができます。

最初に読み込まないといけないjQueryなどのプラグインも普通に挿入できます。個別ページのヘッダーに何かを書き込みたい時は “addhead" です。Simplicityを使っていた人だとhead_customが頭に浮かんで間違えやすいかもしれません。

検索エンジン対策としての noindex はあまり気にしなくても大丈夫

閲覧者の利便性を考えて便宜上似たページを設置することもありますよね。検索エンジンは重複ページを嫌って評価を下げると言われますが、全体の割合が多くなければ適当に処理してくれるのでそれほど神経質にならなくて大丈夫です。

ただし重複ページが多数あったり、「記事を公開」した状態でテストページを作っているのであればnoindex設定はしたほうがいいです。

WordPressならテストページは「非公開」で行えばいいので、重複ページの多い場合のみ指定でいいと思います。