【发布时间】:2018-05-27 16:39:51
【问题描述】:
我有一个自定义代码作为插件,使用 wordpress 中的钩子(最新版本)。我在数据库中也有一些自定义的表。我正在从数据库中查询一些数据并使用 JSON 输出数组。输出很好,但由于它是基于钩子的,所以输出带有一个完整的页面(html 标题和正文)。我需要的是只输出 JSON 代码,以便我的移动应用程序可以理解代码。
这是一个例子:
我的钩子代码:
<?php
$getPosts = $wpdb->get_results("SELECT * FROM gc_posts WHERE
userid=$organization");
foreach($getPosts as $getPosts){
$imageLocation = $target_dir . $getPosts->image;
$myContents->title = "$getPosts->title";
$myContents->description = "$getPosts->description";
$myContents->image = "$imageLocation";
}
wp_send_json($myContents);
这是当前的输出:
<!DOCTYPE html>
<html lang="en-US" class="no-js no-svg">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="profile" href="http://gmpg.org/xfn/11">
<script>(func
...
<body>
...
{"title":"Museum","description":"Open from 10 am to 10 pm","image":"1_1527407746.jpg"}
...
虽然我正在寻找的只是 JSON 代码,例如:
{"title":"Museum","description":"Open from 10 am to 10 pm","image":"1_1527407746.jpg"}
有什么想法吗?
【问题讨论】:
-
没有看到一些代码,无法回答。
-
添加了我的代码。请检查您是否可以提供帮助!
-
问题是您使用的 URL 被 WordPress 解释为对 HTML 文档的请求,因此 WordPress 将您的输出包装在 HTML 文档中。 WordPress 支持仅数据请求的 AJAX 入口点。您应该使用它来返回 JSON。
-
非常感谢。这解决了我的问题。