WordPressで自動関連記事表示プラグインとRelated Posts for WordPressを組み合わせて利用する方法

前回紹介しました関連記事を手動で選択表示できるプラグインRelated Posts for WordPressの応用版になります。

手動で関連記事を設定するRelated Posts for WordPressと自動で関連記事を表示させるWordPress Related Posts等を一緒に利用して、手動関連記事を設定していない記事にも関連記事を自動で表示できるようにする方法を公開します。

主な対象としましては

・既に沢山の記事を投稿していて、過去記事にさかのぼって関連記事を手動設定するのが大変な方
・毎回関連記事を手動設定するのは面倒な方

だと思います。

今回Related Posts for WordPressと一緒に導入するプラグインはWordPress Related Posts、またはYet Another Related Posts Pluginになります。

自動で記事を表示されないようにする

各プラグイン設定画面で、関連記事表示チェックボックスをOFFにします。

・Related Posts for WordPressの場合

・WordPress Related Postsの場合

・Yet Another Related Posts Pluginの場合

関連記事を表示したい場所に、下記を記載

wp-content/themes/テーマ名/single.phpの関連記事を表示したい場所に、下記を記載します。
概ね、the_content()以下だと思います。

Related Posts for WordPressとWordPress Related Postsを併用する場合

<?php
$related_posts = MRP_get_related_posts( $post->ID, true );
if($related_posts) :
MRP_show_related_posts();
else :
wp_related_posts();
endif ;
?>

Related Posts for WordPressとYet Another Related Posts Pluginを併用する場合

<?php
$related_posts = MRP_get_related_posts( $post->ID, true );
if($related_posts) :
MRP_show_related_posts();
else :
related_posts();
endif ;
?>

以上になります。

今回はプラグインのコアハックはしてませんので、プラグインの仕様が大幅に変わらない限りアップデートにも対応出来ると思います。

現場の声に対応する

今回この記事を書いた経緯として、鈴木謙一さんの下記のつぶやきがキッカケです。
「Related Posts for WordPressを利用しようと思ったが、既に2000記事以上あるので、過去記事にさかのぼって関連記事を手動設定するのは難しいという」意見です。

長年運用しているブログでは起こりえる事ですし、実際、困っている方も多いのでは無いかと思いました。

そして現場の声を聞き、それに対応する案を提出する事が実践者としては重要だと改めて思いました。
そして実践者の最大の協力者は情報発信者です。

話がそれてしまいましたが、当ブログでも実装済みですので、是非ご利用ください。


WordPress関連記事を手動で選択表示できるプラグインRelated Posts for WordPressが便利すぎる

記事が一部間違ってました。

[修正済み]
・プラグインの正式名称
Related Posts for WordPress

・ダウンロード先

http://wordpress.org/extend/plugins/microkids-related-posts/

先日、はじめて使ったWordpress関連記事を手動で選択表示できるプラグインRelated Posts for WordPressが便利すぎましたので、紹介します。

このプラグインを導入すると、記事を投稿する際に自分のブログにある類似した記事を手動で選択し、、関連記事として記事下に内部リンクで紹介できるようになります。

何が便利かと言いますと、

・関連選択した記事にも逆に内部リンクが張られる ←個人的に神機能
・自分の過去記事をタイトルタグ、本文、その両方で簡単に検索できる
・検索して出てきた記事をクリックするだけで選択出来る

になります。

説明しづらい部分もありますので、ひとつひとつ紹介します。

すぐに利用したいと言う方は、記事下に設定項目の例がありますので、そちらを参考ください。

関連選択した記事にも逆に内部リンクが張られる

記事Aからの関連記事で記事Bを選択すると、記事Bからも記事Aへリンクすることが可能です。

これで、関連するサイト内ページ同士でトラフィック誘導が期待できます。
1ユーザーのページビュー数を上げる事により、言及される可能性が上がりますので、ソーシャル対策、ナチュラルリンク対策としてお薦めです。

※この自動内部相互リンク設定をするためには、ページ最下部に記載している基本設定「1」でYesを選択する必要があります。

自分の過去記事をタイトルタグ、本文、その両方で簡単に検索できる

記事投稿画面下に、関連記事選択フォームが出てきます。
Search itemsの欄に検索したい言葉を入力するだけで、自動で過去記事が出現します。

ただし、日本語検索の精度が悪い時がありますので、その場合は「both」を選択する事でタイトル、本文の両方から記事を検索可能になります。

検索して出てきた記事をクリックするだけで選択出来る

クリックするだけで関連記事を選択でき、また、ドラック&ドロップで順番の入れ替えも可能です。

Related Posts for WordPressの基本設定

僕が利用しているRelated Posts for WordPressの基本設定です。
ご参考ください。

「1」が関連選択した記事にも逆に内部リンクが張られるか選択する項目
「2」が関連記事が無い時に「無いことを表示」or「何も表示しない」の選択項目(確かデフォルトがShow this textだったと思います)

Related Posts for WordPressを使う事はページビューを増やす事につながると思います。
是非、利用してみてください。

関連記事を手動で選択するのが面倒な方は、自動で表示させてくれるプラグインもお勧めです。
WordPress関連記事を表示するプラグインを3つ紹介


Googleのキャッシュを元にWord Pressを復元させる方法

今回の記事はシステム詳しい方向けです。
僕は成功した手順ですが、自己責任でお願いします。

突如起こるサーバートラブル。
こればっかりはサーバー会社に文句を言っても始まりません。

本当に喪失したくないデーターはセカンドサーバーや自社サーバーで厳重にバックアップを取るしか手段がありませんので。

しかし、WordPressの場合、データベースが壊れてしまった場合、どうやって復元するか悩みますよね。

特に、POST IDをURL含めている場合

例えば
http://www.seo-searchengine.net/deadseo/archives/139.html
感じに。

このブログもそうですが、その場合の記事データの復元方法です。

1.まずは普通にwordpressを新規インストール

まずは、普通にwordpressをインストールします。

そして、パーマリンク等もろもろの設定をすませます。

その際に、Pingは飛ばさないように設定を変更しましょう。
作業中の内容をGoogleが拾ってしまいますので。

2.Googleで検索

Googleで記事データだけ検索します。

僕の記事の場合
http://www.seo-searchengine.net/deadseo/archives/139.html
ですので
site: http://www.seo-searchengine.net/deadseo/archives/
とググルと記事データがのみ出てきます。

3.phpMyAdminよりAUTO_INCREMENTでIDを操作

ここから突然レベルアップします。

phpMyAdminにログインして、下記の図にあるAUTO_INCREMENTを次にPOSTしたIDに書き換えます。

そうすることで、次に投稿できるPOST  IDを操作できますので、URLをそのまま復元できる形になります。

Googleのキャッシュで拾った記事をWPの管理画面から通常通り投稿します。

ただし、何度AUTO_INCREMENTを設定しても若い番号にならない場合

(例: AUTO_INCREMENT を 5にしても5以下の数字にならないなど)

すでにそのID以下の投稿が存在する場合があります。

その場合は下記の図のように投稿内容を削除する必要があります

ただし、削除するIDは、投稿ではない

・リビジョン
・下書き

に留めておいたほうが良いです。

本投稿のIDは削除しない事をお勧めします。


ワードプレスでブログサービス運営の問題

SEO対策無双さんが無料ブログサービスを立ち上げたらしいのですが、
http://www.c-recipe.biz/
ワードプレス使ってるのかな??

ってことは今後運営上の問題は、サーバー負荷ですね。

特に、海外スパマーに発見されると、変なアカウントを取られまくられ、ブログが一気に増え、サーバー負荷が一気に増します。
自分で試した感じではxreaなんか10ブログで既にヤバいくらい表示速度になるので、通常の月1000円くらいのサーバーでも、100アカウントも作られると、サーバー負荷増すんじゃないかな?

無料ブログサービスってサーバー負荷との戦いだと思う。
頑張ってください!!


wordpressのbreadcrumb-navigation-xtのバグ修正

worpdressのパンクズ表示プラグインbreadcrumb-navigation-xtで、タイトルの文字制限すると文字化けしませんか?

たとえば、こんなオプション付けると。
$mybreadcrumb->opt['posttitle_maxlen'] = ’21′;

その場合、breadcrumb-navigation-xt.phpの274行目を
$bcn_post_title = substr($bcn_post_title, 0, $this->opt['posttitle_maxlen']-1) . ‘…’;
から
$bcn_post_title = mb_strimwidth($bcn_post_title, 0, $this->opt['posttitle_maxlen']-1) . ‘…’;
に書き換えるとOKです。

まあmb_strimwidth使うんだったら
$bcn_post_title = mb_strimwidth($bcn_post_title, 0, $this->opt['posttitle_maxlen']-1,’…’);
でも良いんですけどね


wordpress3 RC2がなかなか良い感じ

wordpress3 RC2になってから、なかなか良い感じに仕上がってますね。

RC1でバグってたところがほぼ解決している点なんか、すばらしいです。

実は、wordpress3をSEOに思いっきり使おうと思ってたから、待ちに待ってました感があります。

もう、フライング気味で使い始めちゃってます。

ただ、wp関数が若干変更あるっぽいので、勉強しなおさないとね。


Xrea CoreserverでCronを使いMySQLを最適化する方法

XreaやCoreserverでCronを使いMySQLを最適化する方法を試しに試して、やっと成功しました。
シェルスクリプトはこういった感じで書きます。
※全データベースのパスワードがおんなじ場合

#!/bin/sh

DB_NAMES=(test test_2 test_3)

PW=test

for DB in ${DB_NAMES[@]}

do

/usr/local/mysql/bin/mysqlcheck -o -r –all-databases -u${DB} -p${PW}

done

exit 0

注意 allの前の-ですが、-が2つ連続です。なぜかうまく投稿表示されませんが、、

これでいつでも最適化運営できますね。


WordPress2.9の注意点

WordPress2.9がアップされましたが、少々追加機能が多いので、注意が必要です。
とくにヘッダーに記載されるrel=canonical タグは、all in one Seoプラグインを入れている場合、バッティングするので、テーマのheader.phpに下記のように書くことをお勧め致します。
< ?php remove_action(‘wp_head’, ‘rel_canonical’); ?>
※all in one Seoプラグイン1.6.10でcanonicalタグのバッティングが解消されました
Wordpress2.9に限らず、デフォルトでいろんなヘッダーが表示されるので、私は下記を記載して、最小限のヘッダー表示にしております。
< ?php remove_action(‘wp_head’, ‘wp_generator’); remove_action(‘wp_head’, ‘index_rel_link’); remove_action(‘wp_head’, ‘start_post_rel_link’); remove_action(‘wp_head’,’rsd_link’); remove_action(‘wp_head’,’wlwmanifest_link’); remove_action(‘wp_head’,’adjacent_posts_rel_link’); ?>

あと、wp-config.php ファイルに define(‘WP_ALLOW_REPAIR’, true);を追記すると、自動データベース最適化してくれるそうで、そこも忘れずに記載しときたいですね。
↑↑↑
これはただ単に”wp-admin/maint/repair.php”にアクセスするとデータベース最適化ができるというだけで、一般のユーザーに対して無制限にアクセスされる可能性があるので、記述は推奨しません。


WordPressのカテゴリ毎にテーマを変更する方法

WordPressで親カテゴリとその子カテゴリに対し、共通のテーマを指定する際に下記の記述をするとできます。
カテゴリがtestの場合、

$array_is_category = explode(‘,’,get_category_parents($cat,false,’,’,true));
if(is_category(‘test’) || array_search(‘test’,$array_is_category) === 0){
//testカテゴリのとき
}else{<br />
//その他のカテゴリのとき
}

仕組みとしては、子カテゴリの親カテゴリの情報をget_category_parentsで取得し、
explodeを使い、配列で$array_is_categoryに格納し、
array_searchで一番上のカテゴリに対し検索をかけます。

上の記述でいうと、
is_category(‘test’) でtestカテゴリか判断し、
array_search(‘test’,$array_is_category) === 0で一番上の親カテゴリがtestカテゴリか判断して表示させてます。


Contact Form 7で画像認証(CAPTCHA)を使うための設定

WordPressのプラグインの中で、メールフォームを作成するのに便利なプラグインと言えばContact Form 7が有名だと思います。
そして、Contact Form 7で画像認証(CAPTCHA)を使うための設定方法を記載します

1.まず、Contact Form 7 Ver1.9.4Really Simple CAPTCHA ver1.0を落とします。

以前のContact Form 7ではReally Simple CAPTCHAなしで画像キャプチャできてたのですが、いつの頃からかReally Simple CAPTCHAが必要になってますね。
ちなみに、Really Simple CAPTCHAをインストールしないで画像認証(CAPTCHA)使ってる(使えてないのですが)方、たくさんいらっしゃいます。
たぶん、Contact Form 7だけバージョンアップして、安心してるんでしょうね。
普通そうですもんね。私もそうでしたw

話を戻して、really-simple-captchaのフォルダごと、pluginsフォルダの中に入れ、その際に、tmpフォルダのパーミッションを777にします。
その後、wp-content/uploadsの中にwpcf7_captchaというフォルダを作り、これもパーミッションを777にします。

これで、Contact Form 7で画像認証(CAPTCHA)を使う事が可能です。
あとはWordpressにログインして、ツール→Contact Form 7で設定してあげてください。


ページトップへ