ブログ同士を繋げるトラックバック機能を使って、たくさんの人と繋がろう
WordPressではピンバックとトラックバックをサポートしています。WordPress同士はピンバック機能があるのでリンクしただけで互いにリンクが貼られます。
それ以外のブログとリンクを貼るには、トラックバック用のURLを入力してもらう必要があります。トラックバック用のURLを表示して、相手のブログと繋がりましょう。
そこで今回は「トラックバック用のURLをコメント欄の後に追加する方法」と「トラックバック機能が動作しないときに陥りがちな失敗の解決法」を紹介します。
追加方法
トラックバック用のURL自体はテーマファイルに以下のタグを追加するだけです。
<!--?php trackback_url(); ?-->
ではこのタグを使って、実際にコメント欄の下にトラックバック用のURLを表示してみます。
「loop-single.php」の<?php comments_template( ”, true ); ?>直後に、下のコードを追加
<h3>この記事のトラックバック用URL</h3> <input class="trackback_field" type="text" readonly="readonly" onfocus="this.select();" value="<?php trackback_url(); ?>">
解説
「readonly=”readonly”」で、入力や改変ができないようにします。
「onfocus=”this.select();”」を追加することで、テキストエリアをシングルクリックした時に全体が選択されるようになります。(Chromeだと選択できません。)
「value=”<?php trackback_url(); ?>”」でトラックバック用のURLを表示しています。
後は「class=”trackback_field”」を指定してあるので「style.css」でデザインを調整すれば完了です。
当サイトでは以下のように追加しました。
.trackback_field{ width: 98%; }
このページの下にサンプルがありますが、こんな感じで表示されます。
トラックバックやピンバックが動作しない場合
「トラックバックを送信してもらってるはずなのに動作しない」そんなときにありがちな失敗と改善方法を解説します。
ディスカッション設定が適切にされていない
WordPressの設定で有効になっていないと、いくらトラックバックを送っても動作しません。有効にするには以下のようにします。
管理画面で、「設定 > ディスカッション設定」をクリック。
「他のブログからの通知 (ピンバック・トラックバック) を受け付ける」にチェック。
「変更を保存」をクリック。
以上で設定完了です。
WP-SpamFreeが原因で動作しない
スパムを強力に弾いてくれるプラグイン「WP-SpamFree」。その威力は正常なトラックバックも弾くほど・・・。って、いかんがな!
というわけで、トラックバックを受け取りたい方はプラグインを停止しましょう。
設定画面で「プラグイン > WP-SpamFree」で「停止」をクリック。
(当サイトでも今までのトラックバック・ピンバックを全て弾いてましたw 今までトラックバック・ピンバック頂いてた方々すいません。)
リンクのないトラックバックを許可しない方法
スパム対策は「Akismet」だけでも十分ですが、「WP-SpamFree」を削除したので、少し不安だ。という方には「Simple Trackback Validation」がおすすめです。
このプラグインは自分のサイトへリンクが無いトラックバックはスパム扱いする。というものです。これでリンクジュース目的のトラックバックスパムは排除できます。
プラグインのインストール方法は「WordPressにプラグインをインストールする方法」を参照してください。
解説
大きく分けて3つの設定をします。
1.「How to deal with spam trackbacks?」はスパム判定したトラックバックの扱いについて。一番上は「承認待ち」に入れるという設定です。削除するかどうか自分で最終判断ができるので、おすすめの設定です。
「Additional options:」というオプションがありますが、スパム判定したトラックバックの先頭に文字列を追加するという設定です。あとで分類するときに便利なのでチェックを入れておきましょう。
2.「Validation Phase 1: IP Address」トラックバックが貼られたブログと送信元のIPが異なる場合にスパム扱いする設定です。某大手ブログなどは別IPになっているのでチェックしないほうがいいです。
3.「Validation Phase 2: URL」はメインの設定です。URLがどういった形で含まれていれば正常のトラックバックと判断するかという設定です。「Validate URL」にチェックを入れて有効。
「Strictness:」でステータスを設定できます。
「Strict: A permalink needs to be used」は厳密にページのURLが含まれているか調べる設定です。この設定がおすすめです。例「http://example.com/hoge」
「Any link beginning with the following URLs is allowed: 」はサイトの一部でもURLが含まれていれば承認する設定です。例「http://example.com」
以上設定が終了したら「Update Options」をクリック。
これで自分のサイトへのURLが含まれないトラックバックを承認待ちに入れる設定が完了です。
サンプルは下のコメント欄をご覧ください。動作確認がしたい場合はこのページにトラックバックを送ってください。このページに限りテスト用トラックバックも承認します。
ピンバック: トラックバックできない その4 | bootaのBLOG、略してBooLOG!
お世話になります。
いつも大変参考にさせていただいております。
無知で申し訳ありませんが、記事のトラックバックを『投稿の編集』画面自体に表示させたいのですが、可能でしょうか?
宜しくお願いします。
cheechさんへ
はじめまして、参考にしていただきありがとうございます。また、ご質問いただきありがとうございます。こうしたアクションがあるのが、1番の励みになります。
トラックバックを「投稿の編集画面自体に表示させたい」とのことですが、「add_meta_box」という関数を利用するのが手軽でお勧めです。
利用しているテーマの「function.php」の最後に以下のコードを追加してください。
これでアイキャッチを設定するメタボックスの下あたりにトラックバック用のURLが表示されるはずです。
表示されない場合は編集画面の右上にある「表示オプション」から「トラックバクURL」にチェックを入れてください。
素早い返信ありがとうございます。
めちゃくちゃ助かりましたm(_ _)m
早速トライしてみます!
これからもよろしくお願いします。
導入できました、どんぴしゃです!
多謝ですm(_ _ )m
ご報告ありがとうございます。
お役に立てたようで、何よりです。
ピンバック: TwentyTenの個別ページにTrackback URLを表示する方法