今回もECキューブ関連のネタとなります。最近ECキューブ周りのSEO施工に関わるメンテナンスを行う機会が多いので、その備忘録です。
今回やりたかったのは以下。
ECキューブのタイトル出力は、標準だと以下のようになりますが、
■トップページのタイトルタグ出力
<title>サイトのタイトル / TOPページ</title>
■セカンド(下層)ページのタイトルタグ出力
<title>サイトのタイトル / 下層ページの名称</title>
これを以下の仕様に変更します。
■トップページのタイトルタグ出力
<title>サイトのタイトル</title>
※任意のタイトルのみにして、自動的に入るサブタイトルは排除
■セカンド(下層)ページのタイトルタグ出力
<title>下層ページの名称|サイトのタイトル</title>
TOPページではサイトのタイトルだけ表示して、下層ページではページタイトルを先頭にして、その後ろにサイトのタイトルを挿入します。コードは以下。変更するファイルは「default_frame.twig」となります。上から10行目辺りにある記述を以下の様に変更するだけです。
<title>ホームページのタイトル{% if subtitle is defined and subtitle is not empty %} / {{ subtitle }}{% elseif title is defined and title is not empty %} / {{ title }}{% endif %}</title>
↓これを以下に変更
{% if app.request.attributes.get('_route') == 'homepage' %}
<title>ホームページのタイトル</title>
{% else %}
<title>{% if subtitle is defined and subtitle is not empty %} {{ subtitle }}{% elseif title is defined and title is not empty %} {{ title }}{% endif %}|ホームページのタイトル</title>
{% endif %}
app.request.attributes.get(‘_route’)を使ってTOPページのルーティング名(homepage)を指定して、条件分岐させます。変更後はキャッシュのクリアを忘れずに。
ページタイトルが後ろに来るのがなんだか落ち着かないので、これでスッキリ。