こんにちわ、のりぷーです。
デフォルトのEC-CUBEでは、SEOはあまり考えられていないような気がします。
たとえば、SEO対策に非常に重要なタイトルタグは、標準のままだと
■トップページ 「ショップ名 」
■商品ページ 「ショップ名 / 商品名」
というシンプルな構造になってしまいます。
SEO対策的には
「商品名 / ショップ名も含めた説明文(地域やキーワードを盛り込んだ)」
となっているべきです。 ショップ名よりも、商品名の方がページ固有の内容ですので、重要度の高い前に書いてあるべきです。 また、ショップ名だけで無く、地域やキーワードもタイトルタグに盛り込まれているべきです。
そこで、すこしいじってみます。
data/Smarty/default/templates/site_frame.tplを開き、51行目あたりの部分を以下のように書き換えます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<title> <!--{*階層を表示*}--> <!--{if $tpl_subtitle|strlen >= 1}--> <!--{$tpl_subtitle|h}--> | <!--{elseif $tpl_title|strlen >= 1}--> <!--{$tpl_title|h}--> | <!--{/if}--> <!--{*descriptionがあればそれを表示。無ければショップ名を表示*}--> <!--{if $arrPageLayout.description}--> <!--{$arrPageLayout.description|h}--> <!--{else}--> <!--{$arrSiteInfo.shop_name|h}--> <!--{/if}--> </title> |
これで 「基本情報管理>SEO管理」でdescriptionを設定していれば
商品名 | descriptionの内容
と表示されるようになります。
もしdescriptionが設定されていなければ、
商品名 | ショップ名
と表示してくれます。 これは、各ページ固有にdescriptionを設定しなければいけないため、設定し忘れる場合もあると思うので、そのためにdescriptionがなければショップ名を表示させる使用にしています。
(ちなみに、 / 区切りではなく | 区切りなのは、個人的な好みです。)
また、各ページ上部にもdesctiptionを表示するp#descriptionもありますので、ここも同様の表示にしておきます。
data/Smarty/default/templates/header.tplの26行目あたりに<p id=”site_description_text”>があるので同様に設定します。
これで、多少はSEOを意識したタイトルタグを設定できるようになりました。
追記:2012/09/19
商品検索用に商品登録で入力する「検索ワード」を、せっかくなので、meta keywordに表示するようにします。
data/Smarty/default/templates/site_frame.tplの88行目あたりを修正
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<!--{if $arrPageLayout.keyword|strlen >= 1}--> <meta name="keywords" content=" <!--{if $arrProduct.comment3}--> <!--{$arrProduct.comment3|escape}-->, <!--{/if}--> <!--{$arrPageLayout.keyword|h}--> " /> <!--{else}--> <meta name="keywords" content=" <!--{if $arrProduct.comment3}--> <!--{$arrProduct.comment3|escape}-->, <!--{/if}--> " /> <!--{/if}--> |
ページ固有のdescriptionにしたいが、細かく設定するのがめんどくさい、楽をしたい人は、meta descriptionもタイトルと同じような表示に変更します。
(効果があるかどうかはわかりませんが・・・)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<meta name="description" content=" <!--{*階層を表示*}--> <!--{if $tpl_subtitle|strlen >= 1}--> <!--{$tpl_subtitle|h}--> | <!--{elseif $tpl_title|strlen >= 1}--> <!--{$tpl_title|h}--> | <!--{/if}--> <!--{*descriptionがあればそれを表示。無ければショップ名を表示*}--> <!--{if $arrPageLayout.description}--> <!--{$arrPageLayout.description|h}--> <!--{else}--> <!--{$arrSiteInfo.shop_name|h}--> <!--{/if}--> " /> |