備忘録:WordPress4.9.6にアップデートしたらプラグイン「Search Everything」が悪さをして新規投稿を公開した際Syntax errorになった件

WordPress4.9.6にアップデートして、最近新規に投稿していなかったので気づかなかったのですが、「Search Everything」プラグインを入れていると、新規に投稿した際にSyntax errorが出ます。
実は、見たことあったのですが、外の格安スマホ激遅環境でしていたのでそれが原因かと思っていました。

エラーはこんな感じのですね。

私はエックスサーバーなので上みたいなのですが、ロリポップだと500エラーの画面が出ます。

ちなみに、エラーは出ますが、公開はきちんとされているし、投稿一覧に戻ってもう一度更新などするとエラーは出ません。

新規に投稿する時のみエラーが出るようです。

修正方法を探していたら、親切に答えてくれているサイトがありましたので紹介。

teratail「[Wordpress]プラグインsearch-everything。公開時にエラーが出ます。」

ここに掲載している方法で修正したら大丈夫になりました。

Search Everythingは1年以上アップデートされていないようですが、一応私が直したバージョンは、8.1.9です。

function se_post_publish_ping($post_id) {
    //should happen only on first publish
    $status = false;
    if( ( $_POST['post_status'] == 'publish' ) && ( $_POST['original_post_status'] != 'publish' ) ) {
        $permalink = get_permalink($post_id);
        $zemanta_response = se_api(array(
            'method' => 'zemanta.post_published_ping',
            'current_url' => $permalink,
            'post_url' => $permalink,
            'post_rid' => '',
            'interface' => 'wordpress-se',
            'deployment' => 'search-everything',
            'format' => 'json'
        ));
        if (!is_wp_error($zemanta_response)) {
            $status = json_decode($zemanta_response['body'])->status;
        }
    }
    return $status;
}

add_action('publish_post', 'se_post_publish_ping');

上記のように修正させてもらいました。

助かりました。備忘録でアップしておきます。

ちなみに、このブログもエラーが出るので直さなくては冷や汗 (顔)


Categories:

Tags:


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です