【发布时间】:2014-10-10 17:25:39
【问题描述】:
我正在为 wordpress 使用JSON API plugin,以允许我在我正在构建的 phonegap 应用程序中处理网站内容。
但是,由于网站上某些内容的复杂性(由输出图表、滑块等的简码引起),这些内容不适合在移动应用中显示。我需要从 JSON 输出中删除短代码。
我发现我可以连接到 wordpress 中的 the_content 过滤器并使用 remove_shortcode 取出必要的简码。但问题是我只能在通过浏览器访问 json url 时这样做。
例如,我可以使用http://example.com?json=1 来返回最近的帖子。如果我在我的 url 栏中输入这个,我可以解析 url,确定 json=1 在那里并去除短代码。
但是,当我从我的移动应用程序执行 ajax (JSONP) 请求时,它似乎无法检查 json 参数的 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!');
}
});
【问题讨论】: