web-dev-qa-db-ja.com

ワードプレス REST API - JSONの「レンダリングされた」コンテンツが正しくない

私はウェブサイトからブログを取得するためにwordpress rest apiを使用するAndroidアプリケーションで作業しています、私はphpまたはwordpressについての知識を持っていませんが、私はそれについて学ぶためにしばらく時間がかかります。内容には不明な段落が含まれています。この問題を解決する方法がわかりません。助けてください Android application json youtube video 

2
monsieur Moumni

あなたが参照しているコンテンツはそのサイトのElegant Themes Page Builderプラグインから来ています。

ページビルダーは WordPress Shortcodes を使用してWordPressサイトにコンテンツをレンダリングします。ただし、REST AP​​Iを使用すると、コンテンツはWordPressデータベースから取得され、ショートコードは最初に処理/レンダリングされません。

アプリに表示される前に、返されたJSONからショートコードを削除する必要があります。アプリにコンテンツを表示する前に、このようなものを使用してショートコードを削除することができます。

// Remove Divi/ET Page Builder shortcodes
$content = preg_replace('/\[\/?et_pb.*?\]/', '', $content);
2
Mat

あなたのテーマのfunctions.phpファイルにこのコードを入れることができます:

function awh_filter_post_json( $data, $post, $context ) {
    $data = json_encode($data); //convert array or object to JSON string
    $data = preg_replace('/\[\/?et_pb.*?\]/', '', $data); //remove shortcodes
    $data = json_decode($data); //convert JSON String to array or object
    return $data;
}

add_filter( 'rest_prepare_post', 'awh_filter_post_json', 10, 3 );
0
Joe