サイト内検索結果ページにnoindxを挿入したい

こちらには目を通しましたが、サイト内検索結果ページにnoindexを挿入する方法がわからず質問させていただきました。

何か方法があれば教えてください。

よろしくお願いします。

robots.txtファイルへの追加は試されましたでしょうか?

このページによると、サイト内検索はjavascriptのクローリングだそうで、robots.txtに追加されているページは検索結果に表示されないとあります。

ご回答いただきありがとうございます。

申し訳ございません、私の質問内容が悪く補足させていただければと思います。

現状として、robots.txtファイルに記述を追加していて動作に問題はないのですが、今後のために、サイト内検索結果ページにメタタグを挿入する方法も知りたくご質問させていただきました。

HubSpotのサイト内検索結果ページは、仕組み的にはテンプレートを介して出力されるようになっており、このテンプレートは自由に選択できます。設定ページの下記の部分が、検索結果ページのテンプレート選択箇所です。

つまりここで出力するテンプレートに noindex を挿入できればよい訳ですが、HubSpotが標準で提供している検索結果テンプレートを利用している場合、テンプレートの直接編集ができません。

そのため、一度検索結果テンプレートを複製したうえで noindex を追加、複製したテンプレートを検索結果に利用するよう指定、という手順を踏む必要があります。

例えば上記のキャプチャでは「Session - search results」が指定されているため、デザインツールにて下記のように検索をかけたり、Sessionのディレクトリを深掘っていくことで目的のテンプレートを見つけられます。

後はこのテンプレートを複製して noindex を加えるだけですが、利用中の検索結果テンプレートがテーマの一部である場合、テンプレートだけの複製はできず子テーマごとの複製になります。

これは少々面倒なので、1番楽で分かりやすい方法はテーマ外に検索結果テンプレートを新規作成し、元のコードをコピペすることです。ただし、このとき元のテーマのテンプレートをインクルードしている部分がありますので、パスの修正のみしてやる必要があります。

検索結果テンプレートにのみ noindex を追加するには require_head タグを使います。諸々作業を行うと、以下のような形になります(0:25〜1:11で勘でパスを解決しようとしているため、少々モタついています…。それとCSSのパスが間違ったままですね)。

後はこのテンプレートを、設定画面から指定して完了です!

@assi

ご回答いただきありがとうございます。

assi様の方法で無事にnoindexを追加することができました!

テンプレートにmetaタグを記述する方法もわかったので助かりました、ありがとうございます!