EC-CUBEの検索結果のURLは 「http://example.com/products/list?name=検索キーワード」 のようになっています。
商品が1つもヒットしなければnoindexがつきますが、ヒットした場合はnoindexがつかないのでGoogle検索結果にインデックスされてしまう可能性があります。
meta canonicalが指定されているのでnoindexは不要ではという考えもありますが、
基本的に検索結果のページは、他のページと異なる独自コンテンツが存在しない価値が低いページとなるため、SEOの観点からはnoindexにする方が好ましいと考えられます。
meta.twigを編集
テンプレートのディレクトリにmeta.twigというファイルがあり、SEO関連のタグは大体ここにまとまっています。
{% elseif app.request.get('_route') == 'product_list' %}
{% set meta_canonical = url('product_list', {'category_id': Category.id|default(null)}) %}
{% if pagination|length == 0 %}
<meta name="robots" content="noindex">
{% endif %}
となっている部分を下のように修正してください。
{% elseif app.request.get('_route') == 'product_list' %}
{% set meta_canonical = url('product_list', {'category_id': Category.id|default(null)}) %}
{% if pagination|length == 0 or app.request.query.get('name') is not empty %} {# この行を修正 @see https://umebius.com/eccube/seo_search_result_noindex/ #}
<meta name="robots" content="noindex">
{% endif %}
これで検索結果には必ずnoindexが付くため検索結果にインデックスされることはなくなります。
インデックスされるURL数は少なくなりますが、SEO的に低価値なページのインデックスを減らしてサイトの価値を高めることが重要です。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。