web creating

POROA



【WordPress】内部リンクを貼るとコメント扱い(ピンバック)になる現象の解決方法

WordPressの記事内に自サイトのリンクを貼ると「コメント」扱いになって、管理画面でコメント1となっていたり、メールに「新しいピンバックが承認待ちです。」といったメールが届いたりします。

これはWordPressのピンバック機能の為、自動的に送信してしまうためです。

結構、「コメントがあった?」など。勘違いをしてしまいますので、今回は消す方法をまとめました。


そもそも、ピンバックとは?

記事を書く際に「参考にした記事」や「説明」「関連リンク」など、記事内に外部リンクを貼る場合があります。

これを、相手側に
「記事のリンクを貼ったんでよろしくーーー」
という、メールを自動で出すWordPressの機能です。

もし、相手のブログ(サイト)がWordPressで作成している場合、相手側が承認するとコメント欄に自動的に表示するといった機能です。

被リンクを増やしたり、リンクを通知することでアクセスを増やしたりとSEOで効果がありそうですが、相手側WordPressでないと意味がありませんので、必要ない場合は送らないように設定をしても良いでしょう。


方法1.リンクを相対パスにする。

例えば
http://www.poroanet.com/blog/css/923.html

こういったフルパスを
/blog/css/923.html
と変更すると、ピンバック送信を防ぐことができます。


方法2.WordPressの設定を変更する。

こちらは、二通りあります。

WordPressの管理画面へ進んでいただき
左のメニューの
設定のディスカッションを選択し

1.この投稿に含まれるすべてのリンクへの通知を試みる

2.新しい記事に対し他のブログからの通知 (ピンバック・トラックバック) を受け付ける
のチェックを外します。
1はピンバック送信を禁止します。2は、他の方(自分も)からのピンバック通知を拒否します。

両方とも、デメリットとして、今後、ピンバックの送受信ができませんので、こちらからの流入がある方などは考えて設定したほうがいいでしょう。


方法3.functions.phpを変更する

functions.phpに

function no_self_ping( &$links ) {
$home = get_option( 'home' );
foreach ( $links as $l => $link )
if ( 0 === strpos( $link, $home ) )
unset($links[$l]);
}
add_action( 'pre_ping', 'no_self_ping' );

を追加するとセルフピンバック送信を停止します。

こちらは、自サイトのリンクはピンバック送信をしないので、一番いい方法でしょう。

その他にもプラグインを使用するという方法もあるのですが、こちらは、サイトを重くする原因になったり、エラーの元にもなりますので、あまりお勧めしません。


以上です。

いかかでしたでしょうか?

みさまの環境にあった設定をしてみてください。
著者:poroa  |  投稿日:2016年11月29日
■最新記事
■カテゴリ一覧
CSS
Excel
Google Analytics
HTML
jQuery
PHP
SEO
WordPress
ホームページ作成
ホームページ作成講座
未分類
■アーカイブ
2016年12月
2016年11月
2016年10月
2016年9月
2016年8月
■ランキング