2020年でもWordPressでPINGを送りたい

WordPress

なんかトラックバックサービスが減ってきて、トラックバックを使うことが標準じゃなくなった今日この毎。
しかしトラックバックというか『PINGを送る』ことには、アクセスアップ的には意味がある。
WordPressでも送らなくなってしまって…と思っていたら、まだ使えた!
ので、その設定方法とより使い勝手がよくなるプラグインのメモ。

PING送る設定する

ありがたいことに、標準装備でPING送信機能がある。

記事毎に設定する

WordPress『ダッシュボード』→『新規投稿を追加』または『投稿の編集』→『表示オプション』→『トラックバック送信』にチェック
すると『トラックバック送信』なる項目が出るので、URLを入力する。

ピンバック設定

相手がwordpressのときに、こっちでURLを指定することなく、送ってもらえる素敵。
WordPress『ダッシュボード』→『設定』→『ディスカッション』
『デフォルトの投稿設定』→『投稿中からリンクしたすべてのブログへの通知を試みる』をチェック入れる。

全体的な設定

WordPress『ダッシュボード』→『設定』→『投稿設定』→『更新情報サービス』
で前はできた…無くなったようだ

プラグイン『WordPress Ping Optimizer』を入れる

デフォルトでもPINGが送れた……のだが、消息不明になってしまった機能もある。
そこでオススメするのは『WordPress Ping Optimizer』というプラグイン。
名前の通り『PINGを最適化する』。
WordPress標準のままでは、更新時や下書き保存時に、毎回毎回Pingを送信する。
それを良いか悪いかは置いておいて、Pingの送信は記事の公開時に一度しか行われないようにしてくれる。

『WordPress Ping Optimizer』を入れるメリット

Googleのスパム判定回避
重複送信することでスパム扱いされないようPing送信を最適化する
インデックススピードが早くなる
「更新したよ」て報告することになるので、アクセスアップが期待できる

『WordPress Ping Optimizer』設定方法

WordPress『ダッシュボード』→『設定』→『WordPress Ping Optimizer』
『URIs to Ping』にPING送信先リストを入力する。
PING送信先リストについては、こちらを参照
『Enable pinging』にチェック。
『Limit excessive pinging in short time』にもチェック。
そうして出てきた『Ping at most □ time(s) within □ minute(s)』に時間を設定する。
設定内容は『[1個めの□]度Ping送信されてから[2個めの□]分以内に下書き保存をしてもPing送信しない』となる。
なので『1 time(s) 15 minute(s)』あたりでいいかと思うけど、この辺は個々の環境に合わせて設定してみてください。
ここで心配になる人もいるだろうが、ここにチェックを入れていても『公開』をクリックした場合は、設定した制限時間内であろうと、Ping送信される。
なので、安心して設定するといいです。
そして『Save Settings』を押して更新する。

PINGの送り先

PINGの送信先リスト』を、ご参照ください。
PINGは廃れし機能であるため、年々変動するので、別ページに分けてある。

マルチサイト状態で使う際の注意点

1個のWordPressで複数のサイトを運営する『マルチサイト機能』。
それを使用した場合、全体に適用させる『ネットワークで有効化』にしたくなるが、『個別に有効化』させる必要がある。
『サイトネットワークで有効化』させても『Plugin NOT upgraded properly. Please reactivate the plugin.』というメッセージが出て、使えるようにならない。
必要なテーブルが作られないことが原因なので、使うサイトごとに1個1個有効化すること!
ところが、メインサイトで有効にならない場合がある。
そんなときは『マルチサイト機能でメインサイト(blog_id:1)のpluginが個別で有効にならない』を参照ください。

『WordPress Ping Optimizer』PHP7.2・WP5対応修正

『WordPress Ping Optimizer』はPHP7.2とWP5に対応にはなっていない様子。
なのでソレ用に修正した。
両方『cbnet-ping-optimizer.php』を修正している。

WordPress5対応

『add_option がバージョン 2.3.0 から非推奨になった引数付きで呼び出されました。代替は用意されていません。』
と言われ処理が止まるので、

function cbnetpoActivate() {
$default_options = array('cbnetpo_version' => cbnetpo_VERSION, 'limit_ping' => 0, 'limit_number' => 1, 'limit_time' => 15);
add_option('cbnetpo_options', $default_options);
add_option('cbnetpo_ping_optimizer', 1, 'WordPress Ping Optimizer plugin options', 'no');
if ( $this->cbnetpo_wp_version < 2.4 ) {

   ↓に変更

function cbnetpoActivate() {
$default_options = array('cbnetpo_version' => cbnetpo_VERSION, 'limit_ping' => 0, 'limit_number' => 1, 'limit_time' => 15);
add_option('cbnetpo_options', $default_options);
add_option('cbnetpo_ping_optimizer', 1, '', 'no');
if ( $this->cbnetpo_wp_version < 2.4 ) {

PHP7.2対応

エラーが出るそうなので『WordPress Ping Optimizerのエラー表示 533行目の解決方法』に対応した。

function cbnetpoFuturePing() {
global $wpdb;
$pingCount=0;
// handle null before count
if (is_null($this->cbnetpo_future_pings))
$pingCount=0;
elseif(is_array($this->cbnetpo_future_pings))
$pingCount=count($this->cbnetpo_future_pings);

   ↓に変更

function cbnetpoFuturePing() {
global $wpdb;
$pingCount=0;
// handle null before count
if (is_null($this->cbnetpo_future_pings))
$pingCount=0;
elseif(is_array($this->cbnetpo_future_pings))
$pingCount = $this->cbnetpo_future_pings ? count( $this->cbnetpo_future_pings ) : 0;

最後に

PINGは廃れし機能であるため、年々送り先が減っている。
増えることは、まぁ、まず無い。
フリーブログでも受信が無くなったりしているので、いつかはなくなってしまうのかも知れない。
でも送れるうちは使っておくといいと思う。

コメント

タイトルとURLをコピーしました