SEO効果を捨てずにwordpressを移行したまとめメモ

先日、このブログをサーバー&ドメイン移行した際にSEO効果を捨てずに移行したメモを下記に残します。
SEO効果を捨てずにと特に根拠はないのですが、実際に自分が移行して、数日間たつのですが、アクセスは減っていないため問題ないと判断したのでメモしておりますw

今回自分が移行した内容は下記。

http://e-com.webhop.net/wordpress/
自宅サーバー+DDNS(マンションタイプの光のため固定IPじゃないから)
※CentOSを使ったLAMP環境

 ↓↓

http://matsudapress.com
さくらVPS+お名前.com
※CentOSを使ったLAMP環境

実際に移行した作業

  1. 移行先のサーバー契約&ドメイン取得とDNSの設定
  2. 移行するデータのバックアップを取る。移行先にwp-contentディレクトリだけコピー
  3. wordpressのエクスポート機能を利用してエクスポートし、移行先にインポート
  4. 移行先で実際にwordpressが正しく動いているか確認する。

    おそらくデータ移行後も投稿データ内の画像データのパス名が旧ドメインのパスに向いているとおもうので、こちらは直接投稿データのDBを書き換えます。
    下記のようにsqlの便利なreplaceをつかって旧ドメイン→新ドメインへ書き換えを行います。
    ※SQLはターミナルや、phpmyadminなどから実行できます。
    ※wordpressのメディア機能などを利用している場合はwp-content/uploadsディレクトリなども移行させておいてください。
    ※wp_などテーブル名は、環境によって異なるのでwp-config.phpのprefixを確認してください。

    update wp_posts set post_content=replace(post_content,'古いURL','新しいURL')
    update wp_posts set guid=replace(guid,'古いURL','新しいURL')
    update wp_options set option_value=replace(option_value,'古いURL','新しいURL'
  5. あとは移行先のプラグインなどカスタマイズ設定を手直し
    SEOプラグインやソーシャル機能のプラグインなど、色々ありますが(汗
  6. そして無事移行先のwordpressが問題ない状況になったら移行元のURLから新しいURLにリダイレクトする設定をします。
    今回はwebサービスとしてapacheを利用しているので、apacheの.htaccessを利用したリダイレクトを行います。
    ※今回の設定はmod_rewriteと.htaccessが利用できる必要があります。
    移行元のwordpressのルートディレクトリに下記のように.htaccessを設置します。
    自分の場合だと http://e-com.webhop.net/wordpress/ に下記.htaccessを設置。

    Options +FollowSymLinks
    RewriteEngine on
    RewriteRule (.*) http://matsudapress.com/$1 [R=301,L]

    この方法であれば正しく単一記事のURLも引継ぎます。
    http://e-com.webhop.net/wordpress/?p=100
    ↓ (ちゃんとパラメータを保持してます)
    http://matsudapress.com/?p=100

    また、この301リダイレクトの方法はgoogleのヘルプにものっており、正しい方法と思われます。 http://www.google.com/support/webmasters/bin/answer.py?answer=83105

  7. 上記301リダイレクトより、より速やかにgoogleに移転告知したいのであれば、
    google webmasterツールアドレス変更機能を利用するといいみたいです。
    ただアドレス変更機能はルートドメインのみになっており、今回の自分みたいに
    http://e-com.webhop.net/wordpress/ とサブドメインを利用していたり、パスをきっているとダメなようなので注意が必要。
    ※今回は新しくサイトと追加しました。

    ウェブマスターツール アドレス変更

    上記のように変更できません。

    ただこれ見て思ったのが、ルートドメインはSEO的に結構優待されるのでは!とおもってしまいました。

    いままでhttp://e-com.webhop.net/wordpressは自分が持っているほかのドメインのサイトよりアクセスが大きい方だったのですが、いっこうにpagerankがあがりませんでした。

    なのに、他のドメインでルートドメインのものはこのブログの10分の1のアクセスしかないなのに、pagerankがあがったのでルートドメインは重要な役割があるのかもしれませんw
    すみません、あくまで推測ですw

  8. 移行元と移行先のサーバーで並行稼動期間をもたせて、旧ドメインにアクセスしても新しいドメインへ流れさせます。
    あとはタイミングをみて旧サーバーをクローズしようと思ってます。

サイトを移行しました!

本ブログ(wordpress)を移行&リニューアルしました!
いままで自宅サーバーで稼動していたのですが、、
安くて評判がいいさくらのVPSに乗り換えましたw

最近自宅サーバーの調子がわるくまたDDNSをしているため管理が面倒 だったので、
このタイミング切り替えました。

自宅鯖

 ↓↓↓

さくらのVPS

というのも・・本当に自宅サーバーってお得なのかを、考えてみました。。

自宅サーバー(タワー型サーバー HPProliant ML115)
メリット:サーバー代のみ、ランニングコストなし(電気代は別)、自由に触れる(制限がほぼない)
デメリット:電気代、停電のリスク、うるさい 、ネット環境必須

さくらのVPS(安いので月1000円しない)
メリット:設置スペースが不要、うるさくない、ネット&電気代かからない(ランニングは発生するが)、固定IPが付いてくる
デメリット:完全自由には触れない(だが順仮想でrootがもてる)、ランキングがかかる(電気代はかからない)、

ざっと上記が判断材料としてあがり、気になる電気代を下記電気料金をシミュレーションしてくれるサイトで計算してみた。

電気代計算シミュレーター
http://www.ienakama.com/tips/page/?tid=353 

結果的にいまの自宅サーバーだと24Hフル稼働しているので、電気代で1500円~3000円ぐらいはかかっている・・・しかも設置スペースと音がうるさい。。との事で嫁に承諾を得てVPSを契約しました。

実際使ってみた所管は、環境が外にあるので、管理している感がなく非常に楽になった感じします。またDDNSを利用していたので、毎回IPが変わるのを気にしなくてもよく安定感がでました。

google +1(プラスワン)をwordpressに設置しました。

先日一般のwebサイトにも設置できるようになったgoogle先生の『+1』を、
このブログ(wordpress)にも設置しました!

 

ここからタグを取得して、ヘッダと、+1ボタンを設置したい場所にタグ埋めました。

http://www.google.com/intl/ja/webmasters/+1/button/

 

このブログの場合は、ヘッダタグを手順どおりに設置し、

次に、各記事の場所に+1ボタンタグを下記のように

<g:plusone href=”<?php echo get_permalink(); ?>”></g:plusone>

と記述し、記事ごとの指定URLを入れるようにしました。

今後この+1と連携した新しいサービスがでないか注目です!

wordpressでカテゴリをまたいで新着順に表示したところ一部データがうまくソートされない

wordpressで挙動がよくわからない点にぶちあたった。。
下記のようにquery_postsで新着の5件の投稿をcat=-1でカテゴリをまたいで表示しようとしたところ一部の投稿が、
古いにも関わらず新着として表示されてしまいました。

<?php query_posts($query_string .’cat=-1&showposts=5&orderby=date&order=DESC’); ?>

実際にその対象の投稿をDBで確認してもおかしな部分も見つけられず、、
原因がわかりませんでした。

ただちょっと怪しいのは、古い投稿はもともとデフォルトのカテゴリで、それを最近カテゴリ変更したことでこの現象が発生。。
原因がわからなかったのでそのまま、その古い投稿を新しく作りなおして公開日を古い日に変更し回避しました。

実際にcoreな部分のソースを見ていないので何とも言えないですが、
cat=-1の使いかたが正しくないのか、
それともデフォルトのカテゴリが何か悪さしているのか、、気になります。。

今度調べてみよう・・・たぶん

facebookファンページ用にiframeでwordpressと連携

フェイスブックのファンページを作っていて、自分のブログなどをfacebookに載せたいと思ったので下記にメモします!

おそらくwordpressを使っていて、facebookを触っている人であれば、
そのままwordpressのコンテンツをfacebook内に載せたいと思うと思います。

と、そこで僕もググってみたのですが、なかなかそれらしいものが見当たりませんでした。
これwordpressのテーマやプラグインで出せば結構需要あるかと思います!!(もしかしたら海外ですでにあるのかも。。汗)

私はプラグインやテーマを作るパワーが足りませんでしたので、
力技で、wordpressをfacebookファンページ内に表示した方法をメモります!

 

1.facebookでファンページを作る!


作る際ですが、ファンページの種類を間違えると、デフォルト表示ページが指定できなかったりします!?⇒参考http://matsudapress.com/?p=841

詳細は割愛します。

2.iframe用のfacebookアプリを用意する。
http://www.facebook.com/developers/

上記から「+Set Up New App」でアプリを用意できます。

アプリの名前を決めて

アプリの設定

ここで、facebookから閲覧しているをwordpress側から判別できるように簡単なGET引数を渡すように設定します。
「canvas URL」 + 「タブのURL」 でアクセスされるようなので、
canvasURL = 「http://deveroid.com」  ※ワードプレスのURL
タブのURL = 「?fb=facebook」 ※これはfacebookからのアクセスだよとwordpress側に判別できるように指定 (力技かっ!!)

たとえばワードプレスのURLが「http://deveroid.com 」の場合は

後は適宜設定をしアプリ完成させる。
その後下記の 「Application Profile page」をクリックし

facebook wordpress

次に「マイページに追加」

対象のファンページを選択し「facebookページに追加 」

とりあえずこれでアプリの設定は完了。

3.ファンページに戻り、アプリへのタブ追加設定&デフォルト表示設定をします。

facebook デフォルトページ タブ追加上記はタブとして先ほど作ったアプリを登録します。

facebook デフォルトページ次に、こんどははじめてファンページに訪れた際にデフォルトで表示されるように先ほど作ったタブを選択。
これでファンページの設定も完了。

一度ファンページに入って、上記で作ったタブを選択してみてくださいそうするとwordpressのコンテンツが画面中央にiframeとして表示されるはずです。

ここで思うのが!ファンページ用にwordpressのコンテンツを調整したい!と思うかと思いますw(僕だけかw)


4.そこで、後はwordpress側でちょっとだけ調整してあげます。

例えばこれを

matusdapres
こういう感じにしたい場合↓

matsudapress in facebook

ただ単位表示すると、幅がたりなかったりデザインが合わないので、ここは、先ほどアプリで設定した
「?fb=facebook」を利用します。

wordpressのテーマによりやり方がことなるかと思いますが、テーマの設定部分でGETの?fb=facebook部分を判定して、
facebookならこのテンプレート。
通常ならそのままという制御を加えます。
僕の例だとこんな感じです。

・facebookファンページ表示用テンプレートを追加(元のindexテンプレートをコピペ等)
・ヘッダテンプレートなど、最初に読み込むテンプレートに先頭に下記PHPスクリプトと追加。

/*******  facebook ファンページ内用 ******/
if($_GET["fb"] == "facebook") {
//facebook iframe用テンプレートを読み込み
get_template_part( 'facebook_iframe' );
exit();
}

これで、指定したfacebook_iframeというテンプレートをfacebookファンページ用に読み込んでくれます。

あとは追加したテンプレートをファンページように整形するとそれっぽくなります!

今回私が作ったファンページはコンナ感じです。↓↓

MatsudaPress

また、ここでくせ者なのが、iframeで表示しているためリンクをtarget=”_blank”(新しいウィンドウを開く)にしていないと、
きれいにwordpressの表示がうまくいかないケースがある。
すくなくとも僕はそうだったので、ここはhtmlのbaseですべて新しいウィンドウで開くの設定して、
自分のwordpressへの誘導することにしました。
今後、facebookがどんどんはやる前に、
このwordpressとfacebookファンページの連携を、何かしら形にできるといいかもしれません!(汗
私はマネタイズ能力がないので他力本願でww