wordpress 用のJSON API プラグインを使用して、構築中の phonegap アプリケーションでサイトのコンテンツを操作できるようにしています。
ただし、サイトの一部のコンテンツは複雑であるため (グラフやスライダーなどを出力するショートコードが原因)、モバイル アプリでの表示には適していません。JSON 出力からショートコードを削除する必要があります。
the_content
ワードプレスのフィルターにフックしremove_shortcode
て、必要なショートコードを取り出すことができることがわかりました。しかし、問題は、ブラウザ経由で json の URL にアクセスした場合にのみこれを実行できることです。
たとえば、http://example.com?json=1
最近の投稿を返すために使用することがあります。これを URL バーに入力すると、URL を解析し、json=1
そこにあると判断してショートコードを取り除くことができます。
json
ただし、モバイル アプリケーションから ajax (JSONP) リクエストを実行しているときに、パラメーターの URL を確認できないように見えるため、ショートコードが削除されていません。JSONP
私が信じているリクエストの性質上、ヘッダーが作成されないため、ヘッダーを渡すことさえできません。
ショートコードを削除できるように、モバイル アプリケーションからの JSON 要求をいつ受信したかを把握する方法について、誰かアイデアはありますか?
何かのようなもの
if(is_json()){
//remove shortcodes
}
そして、それが持ち出される前に、Wordpress Stackexchangeでこれを尋ねましたが、役に立ちませんでした
更新:モバイルアプリからのajaxリクエストに使用するコードは次のとおりです
$.ajax({
url: "http://www.example.com/?json=1",
dataType: "jsonp",
async: true,
success: function(result) {
app.populate(result)
},
error: function(request, error) {
alert('Network error has occurred please try again!');
}
});