Neo Inspiration

Avatar

中の人:jakkrokk (HN統一しました) がphp,javascript,air,flex などなど好き勝手書いてます。仕事は主にWEBシステムの設計と開発、SEO全般など。

seopanelをインストールしてみた

*超長いです。

めずらしくMOONGIFTさんにSEOのネタがあったので
拾ってみました。
SEOに力を入れるなら使おう「Seo Panel」

別にローカルの環境でやってもよかったんですが、
一応さくらのサーバにぶちこんでみました。

ダウンロードとインストール

ダウンロードはここから

http://www.seopanel.in/download/

WGETで取得するなりダウンロードしたあと解凍してアップするなりします。

アップしたら以下の作業を行います。
・configフォルダのsp-config.phpのパーミッションを666に
・tmpフォルダのパーミッションを777に

ここまで終わったら、ブラウザから ***.com/seopanel/install/index.phpにアクセス
(フォルダ名とか変えてるともちろんURLも変わります。)

WordPressとかインストールするときのように
DB系のデータを入力してポチでインストール完了です。
(インストールが終わったら installフォルダを削除し、
 congfigフォルダのsp-config.phpを644にもどします)

コマンドラインだとこんな感じ

wget http://seopanel.googlecode.com/files/seopanel.v.2.0.2.zip
unzip seopanel.v.2.0.2.zip
cd seopanel
chmod 666 config/sp-config.php
chmod 777 tmp

//ブラウザで作業

chmod 644 config/sp-config.php
rm -r install //削除するから気をつけて

インストールが終わるとDBはこんな感じのが増えてます

backlinkresults
country
directories
dirsubmitinfo
keywords
languages
rankresults
saturationresults
searchengines
searchresultdetails
searchresults
seoplugins
seotools
settings
skipdirectories
users
usertypes
websites

DBにプレフィックスがないから多重インストールとかはめんどくさそうです。

触ってみる

ログインするとこんな感じで見た目ちょいいまいちですが、
所詮ツールなので問題なし。
全部英語ですがとりあえずなんとなくわかると思うので、
まずはspadminのパスとか変えておいてください。

○ランキングチェック

とりあえずcronは置いておいて、サイトを登録して調べてみます。

1:サイトを登録する
 Admin Panel ⇒ Website Manager ⇒ New Website
 でサイトを登録します。
 日本語も大丈夫そうですが、Crawl Meta Dataボタンはutf8のサイトじゃないと
 文字化けするっぽいので使わないほうがいいかも。
 *この時Seo Panelのトップに行くとサマリーがでますが、
  この時点ではバッチが走っていないので、全部空っぽです。
  これは Admin Panel ⇒ Reports Manager ⇒ Report Generation Manager
  でサイトを指定して Proceed を押せばすぐ更新できます。

2:サイトを登録したらそれにキーワードを設定します。
 Seo Tools ⇒ Keyword Position Checker ⇒ Keywords Manager
 でキーワードを設定していきます。
 画面下の Create をおして、キーワード名、サイトなどを指定してください。
 *Search EnginesはSHIFTを押しながら選択することで複数選択できます。

3:とりあえず一発走らせる
 このままだとサイト登録時と同様にまだバッチが走っていないので、
 とりあえず一回チェックさせます。
 Seo Tools ⇒ Keyword Position Checker ⇒ Generate Keyword Reports
 にて、とりあえず何も設定せずに Proceed を押してください
 (なにも設定しないと全部 All 設定になります。)

4:ランキングのチェック
 Seo Tools ⇒ Keyword Position Checker ⇒ Keyword Position Summary
 にてレコードが表示されてるはずです。

○ランキングチェックを自動にする

1:色々と機能があるので、とりあえず何を自動で回すかを確認します。
 Admin Panel ⇒ Seo Tools Manager
 でCronの項目がActivateになっているものが全部自動でチェックされる対象です。

2:Cronの設定
 さくらの場合ですが、単純に cron.php を定期的に回すだけでOKなので、
 さくらのコンパネから CRONの設定 ⇒ 新規追加で
 以下みたいな設定にすればいいはずです。

 月 *
 日 *
 時 0
 分 0
(毎日0時にバッチスタート)
おまけ

他にもちょこちょこ機能ありますが、長くなったので今回はとりあえずこんなとこで。
ただソース見た感じでは俺が作ってるやつと比べてgoogleの回数制限とかの対処が甘かったりするので、
1000件以上のキーワードは回せないかもしれません。(未検証)
これで回せるのであればもしかしたら裏技っぽいことがあるのかなー。
ってことでソースの読み倒しはこの後の宿題。

おまけ

○細かいツール系

登録せずにささっとサイトのバックリンクを調べてみます。
1:メニューのSeoToolをクリック
2:Backlinks Checker⇒Quick Backlinks Checker
3:明らかにフォームがあるので、そこにURLをぶち込めばAjaxで順繰りに表示してくれます。

phpのrangeの便利な使い方

自分は結構使う頻度が高いんですが、意外と地味なrange()について

基本

とりあえず普通に1~10の数値の配列

range(1,10);
⇒1 2 3 4 ・・・

もちろん逆もOK

range(10,1);
⇒10 9 8 7 ・・・

アルファベットもOK

range('a','z');
⇒a b c d e ・・・

アルファベットも逆でいけます

range('z','a');
⇒z y x w v ・・・
遊び

第3引数を使うともっと遊べます

奇数のみ

range(1,10,2);
⇒1 3 5 7 9

偶数のみ

range(2,10,2);
⇒2 4 6 8 10

アルファベットでもいけます
偶数のみ

range('a','z',2);
⇒a c e g i ・・・・
まとめ

こんなかんじで結構融通のきく関数なので、for(){} を使うような場合は結構な割合で

foreach (range(1,10) as $key => $value) {

}

みたいな書き方をしたりしてます。range()を変数に格納したほうがいいですけど。

.htaccess で RewriteCond の後方参照

$1 ではなく %1 のお話です。

今まで画像をキャッシュしたり生成したりというのは
全部プログラム側で書いてたわけですが、

if (file_exists(IMG_CACHE_DIR.$cacheFile)) {
    $image = imagecreatefromjpeg (IMG_CACHE_DIR.$cacheFile);
} else {
    $image = imagecreatefromjpeg ($imgBack);
    //画像加工処理
    imagejpeg($image,IMG_CACHE_DIR.$cacheFile);
}
header("content-type: image/jpg");
imagejpeg($image);
imagedestroy($image);

まあこんなかんじで、キャッシュヒットもプログラム側で書いてたわけで、
これがどうにも地味に遅いので、何とか回避するべく頭をひねったお話です。

でまあ結論から言うと .htaccess のほうで
キャッシュヒットの処理を書いてしまうことに。

こんなかんじです。

//ファイルが画像の場合
RewriteCond %{REQUEST_URI} ^(.*\.(jpg|gif|png|jpeg))$

//cacheフォルダのキャッシュとヒットするか確認
RewriteCond %{DOCUMENT_ROOT}/cache/%1 -f

//ヒットしたらリライトして表示させる
RewriteRule .* /cache/%1 [L]

ポイントは %1 を使ってRewriteCondでヒットさせた参照を使用することで、
http://a.com/a.gif がキャッシュファイルである http://a.com/cache/a.gif
にヒットさせるってとこですかね。
今まで$1とかしか使ってなかったわけですが、%のが便利だなーと。

Continue Next page

Twitter