‘SEO対策’ カテゴリーのアーカイブ

サーチウィキ日本語版

2009 年 5 月 8 日 金曜日

Googleの公式アナウンス【サーチウィキ:検索結果表示をカスタマイズできるようになりました】にもあるように、Googleアカウントにログイン状態でGoogle検索を行うと、順位を上げる・下げるやコメント(評価)をする事などが出来る。

サイト評価として、今しか判断できない(将来的に良くなるかどうか)の判断も出来ないので、SERPsに影響を与える事はなさそう。

参考
Google日本がサーチウィキを正式導入、Google.comのSearchWikiでは吹き出しマークが消えた
GoogleサーチウィキによるSEOへの影響は?

このエントリーを含むはてなブックマーク

WordPressで特定カテゴリの新着記事を表示する

2009 年 5 月 5 日 火曜日

特定のカテゴリのみ新着記事を表示させたい場合、WordPressで特定カテゴリーの新着記事リンクを表示させたいを参考に、少しだけいじる。

<?php $posts=get_posts('numberposts=3 & category=1'); ?>
<?php if ( $posts ) : foreach($posts as $post) : setup_postdata($post); ?>
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?></a>
&nbsp;-&nbsp;
<?php the_time('Y年n月j日'); ?>
<?php endforeach; endif; ?>   

<?php $posts=get_posts('numberposts=5 & category=1'); ?>
<?php if ( $posts ) : foreach($posts as $post) : setup_postdata($post); ?>
<?php the_time('Y.m.n'); ?> -
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?></a>
<?php endforeach; endif; ?>

単純にタイトルごとに改行する、日時フォーマットの指定変更、表示記事数を変更

参考サイト
WordPressで特定カテゴリーの新着記事リンクを表示させたい
WordPressで特定カテゴリのエントリ記事を表示する

このエントリーを含むはてなブックマーク

SEO構築の必須概念:Googleは最初のリンクだけを評価する

2009 年 5 月 5 日 火曜日

googleでは最初のリンクだけを評価し、それ以降の同一リンクへのキーワードは評価しないと言うもの。
Yahoo!検索の場合は不明だが、適切なキーワードでSEO構築を行う場合に必須の概念だと考えられる。
同一ページからリンクを行う場合、まず適切なキーワードでリンクを行う必要がある。

参考:海外SEO情報ブログ - 海外のSEO対策で極めるアクセスアップ術

このエントリーを含むはてなブックマーク

XMLサイトマップ生成サイト

2009 年 5 月 3 日 日曜日

xmlサイトマップ生成サイトは数多くあるが、9.0形式でモバイル対応可能なのはサイトマップを作成-自動生成ツール「sitemap.xml Editor」。※ただし上限は500

EC CUBEなど、動的配信でXMLの自動生成がない場合、Yahoo!ではインデックスの傾向が弱いと感じる事がある。

Googleではウェブマスターツールより登録。

Yahoo!ではrobots.txtを追加制作
http://info.search.yahoo.co.jp/archives/002859.php

このエントリーを含むはてなブックマーク

YahooではFirefoxとIEの検索結果が違った

2009 年 4 月 29 日 水曜日

SEO関連のブログをあちこち斜め読みしていると以下のようなブログを発見した。

何故seoのプロはYahoo!のseoを語らないのか?
SEO業者もお手上げ【ヤフーはIEとFirefoxで検索結果が違う】

まさか…
と思い、調べてみると確かに検索結果が違うケースが多々ある。

あくまで自身が管理しているサイトのみの調査だが、
IEではドメインが優先され、Firefoxでは、ドメインが優先されているとは限らない検索結果になった。

つまり sample.com というドメインを運用していた場合、 sampleで検索すると
IE:sample.com が1位
Firefox:http://memo.seobinder.net/sample/ が1位のように、ドメインとは直接関係のない(ただし、キーワードと関係のあるページ)が1位となる。

上記サイトで書かれている通り、筆者の商サイトにもSEO業者が営業をかけてくるが、確かに『手作業でリンクを貼ります』か『IP分散型サテライトサイト』のどちらかで、SEO業者がこの手の話をしてくる事がない。。。

このエントリーを含むはてなブックマーク

モバイル(携帯サイト)でアクセス解析にGoogle Analyticsを使う方法

2009 年 4 月 24 日 金曜日

Google Analyticsはデフォルトの状態では携帯サイトに用いようとしても、JavaScriptがソースとして吐き出されてしまう。
Google Analyticsを携帯サイトで利用するためのライブラリでGA4Kなどが出ているが商用となるとライセンスが気になる。

…という事で、Knowledge Database ITさんの、モバイル(携帯サイト)でアクセス解析にGoogle Analyticsを使う方法を参考に標準的に使用できるようにカスタマイズ。※Knowledge Database ITさんはPHPのフレームワークであるsymfonyを用いるソースになっている。

モバイル(携帯サイト)でアクセス解析にGoogle Analyticsを使う方法
http://it.kndb.jp/entry/show/id/2376

カスタマイズといっても変更するのはリファラを通常にセットしなおすだけ。
あとは任意の箇所に<?php mobile_analytics('UA-xxxxxx-x', 'サイトのドメイン'); ?>と共に埋め込むだけ。
※<?php use_helper('Analytics');?>は必要なし。

<html>
<?php
  function mobile_analytics($uid = ”, $domain = ”)
  {

    $var_utmac=$uid; //enter the new urchin code
    $var_utmhn=$domain; //enter your domain
    $var_utmn=rand(1000000000,9999999999);//random request number
    $var_cookie=”;//$session; //cookie number
    $var_random=rand(1000000000,2147483647); //number under 2147483647
    $var_today=time(); //today

//▼コメントアウト
//$var_referer=sfContext::getInstance()->getRequest()->getReferer();//$_SERVER['HTTP_REFERER']; //referer url

//▼追加
    $var_referer=$_SERVER['HTTP_REFERER']; //referer url

    $var_uservar=”;//$storeinfo['storeid']; //enter your own user defined variable
    $var_utmp=$_SERVER['REQUEST_URI']; // request uri

(途中略)

    $header = ”;

    //Set the language to that of the client so analytics can track it.
    if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
      $header = 'Accept-language: '.$_SERVER['HTTP_ACCEPT_LANGUAGE'].'\r\n';
    }
    //Set the user agent to that of the client so analytics can track it.
    if (!empty($_SERVER['HTTP_USER_AGENT'])) {
      $header = 'User-Agent: '.$_SERVER['HTTP_USER_AGENT'].'\r\n';
    }

    $opts = array(
      'http'=>array(
        'method'=>'GET',
        'header'=>$header
      )
    );

    $handle = fopen($urchinUrl, 'r', false, stream_context_create($opts));
    $test = fgets($handle);
    fclose($handle);
  }
?>
<?php mobile_analytics('UA-*************', ’sample.com'); ?>
<body>

コンテンツを記載

</body>
</html>

一応、これでDoCoMoの実機のアクセスを確認済み。

このエントリーを含むはてなブックマーク

CSSとJavaScriptによるドロップダウンメニューの作成方法

2009 年 4 月 24 日 金曜日

CSSのみで作るドロップダウンメニューやJavaScriptのみの方法、それらが混在した方法などがあるが、アクセシビリティなど云々を取っ払って、一番使いやすいのは

JavaScript + Ajax 実践サンプル集さんのドロップダウンメニューだと思う。
http://jsajax.com/DropDownMenuArticle286.aspx

CSSオンリーはコードが複雑になりがちだし、JavaScriptオンリーの場合はさすがにSEO関連の問題もある。Flashもしかり。この辺はサイトの性質やブランディングによって判断すれば良いが、このサンプルは汎用性的に使えるし、わかりやすい。

ただ、サンプルそのものの状態ではクロスブラウンジングされていないので、CSSを少しいじれば(submenuにwidthを指定するなど)問題ない。

このエントリーを含むはてなブックマーク

EC CUBEでカテゴリーの最大階層を増やす

2009 年 4 月 21 日 火曜日

EC CUBEはデフォルトでカテゴリーの最大階層が5に指定されている。これを増やすにはパラメーター設定のLEVEL_MAXの数値を変更すれば良い。
カテゴリーを細分化したい場合、特にSEO対策などを念頭におく場合には数値の変更。

このエントリーを含むはてなブックマーク

EC CUBEにパンくずナビを設置する

2009 年 4 月 21 日 火曜日

ソースそのものを以下のサイトを参考

www.gnnk.net
web book movie
[EC-CUBE]パンくずリスト

バージョンが古いのか、上記サイトの指示に従ってソースを埋めても動作しなかったので、以下覚書。
なお、以下の行数はEC CUBE version 2.3.4

/data/class_extends/helper_extends/SC_Helper_DB_Ex.php
37行目に以下を追加

function sfGetTopicPath($category_id){
// 商品が属するカテゴリIDを縦に取得
$objQuery = new SC_Query();
$arrCatID = $this->sfGetParents($objQuery, "dtb_category", "parent_category_id", "category_id", $category_id);
$TopicPath = " > ";

// カテゴリー名称を取得する
foreach($arrCatID as $key => $val){
$sql = "SELECT category_name FROM dtb_category WHERE category_id = ?";
$arrVal = array($val);
$CatName = $objQuery->getOne($sql,$arrVal);
if( $val != $category_id){
$TopicPath .= '<a href="./list.php?category_id=' .$val . '">' . $CatName . '</a> > ';
}else{
$TopicPath .= $CatName;
}
}

return $TopicPath;
}
function sfGetTopicPath2($category_id){
// 商品が属するカテゴリIDを縦に取得
$objQuery = new SC_Query();
$arrCatID = $this->sfGetParents($objQuery, "dtb_category", "parent_category_id", "category_id", $category_id);
$TopicPath = " > ";

// カテゴリー名称を取得する
foreach($arrCatID as $key => $val){
$sql = "SELECT category_name FROM dtb_category WHERE category_id = ?";
$arrVal = array($val);
$CatName = $objQuery->getOne($sql,$arrVal);
$TopicPath .= '<a href="./list.php?category_id=' .$val . '">' . $CatName . '</a> > ';
}
return $TopicPath;
}

これは指定通りに、{}の中に埋め込む。

/data/class/pages/products/LC_Page_Products_List.php
107行目に以下を追加
$TopicPath = $objDb->sfGetTopicPath($arrCategory_id[0]);
$this->tpl_topicpath = $TopicPath;

こちらは107行目ではなく113行目

/data/class/pages/products/LC_Page_Products_Detail.php
211行目に以下を追加

$arrTopicPath = $objDb->sfGetTopicPath2($arrCategory_id[0]);
$this->tpl_topicpath = $arrTopicPath;

これは211行目ではなく231行目

/data/Smarty/templates/default/site_main.tpl
37行目に以下を追加

<!–{if $tpl_topicpath != ""}–>
<a href="<!–{$smarty.const.SITE_URL}–>index.php">TopPage</a>
<!–{$tpl_topicpath}–>
<!–{$arrProduct.name|escape}–>
<!–{/if}–>

これは、設置した場所であれば、指定以外(detail.phpやlist.php)でも可。
ただし、URLを静的化している場合でも、発行されるURLは動的(list.php?category=***の形)になる。

このエントリーを含むはてなブックマーク

EC CUBEのタイトルをトップページ・商品一覧ページ・商品詳細ページで分ける

2009 年 4 月 21 日 火曜日

EC CUBEはデフォルトではタイトルまわりが、SEO的にもユーザービリティ的も良くは感じない。

site_frame.tplを以下のように変更

<!–{assign var=index  value="`$smarty.const.URL_DIR`index.php"}–>

<!–{if $smarty.server.PHP_SELF==$index}–>
<title><!–{$arrSiteInfo.shop_name}–></title>

<!–{elseif $tpl_title == "商品一覧ページ"}–>
<title><!–{$tpl_subtitle|escape}–> : <!–{$arrSiteInfo.shop_name}–></title>

<!–{else}–>

<title><!–{$tpl_title|escape}–> : <!–{$arrSiteInfo.shop_name}–></title>
<!–{/if}–>

商品一覧ページでは最上階のカテゴリを表示

このエントリーを含むはてなブックマーク