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

なんかトラックバックサービスが減ってきて、トラックバックを使うことが標準じゃなくなった今日この毎。
しかしトラックバックというか『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をコピーしました