1

尝试将几个 WordPress 表行从 wp_posts 转换为 .json 文件。不是我多次看到的 JSON API 插件。我已经尝试过了,它产生了太多的数据。我只想要 ID、标题和帖子或页面内容。而已。此外,JSON API 实际上并不导出 .json 文件。我想要在服务器上动态。

所以我使用这个脚本来生成 .json 文件。

<?php $con=mysql_connect("localhost","username","password") or die("Database connection failed");

if($con)
{
mysql_selectdb("database_wp",$con);
}
?>

<?php

$data=array();
$qa=array();
$query=mysql_query("SELECT id, title, content FROM wp_posts ORDER BY id");
while($geteach=mysql_fetch_array($query))
{
$id=$getdata[0];
$title=$getdata[1];
$content=$getdata[2];
$qa[]=array('id'=> $id, 'title'=> $title, 'content'=> $content);
}
$data['qa']=$qa;

$fp = fopen('myjson.json', 'w');
fwrite($fp, json_encode($data));
fclose($fp);

?>

但是我在生成的 .json 文件中得到{"qa":[]}的只是这些。服务器上有数据。那我怎么拉不进去?解决方法是什么?

4

2 回答 2

1

我认为问题出在您的 while 循环中。

你用

while($geteach=mysql_fetch_array($query))
{
  $id=$getdata[0];
  $title=$getdata[1];
  $content=$getdata[2];
  $qa[]=array('id'=> $id, 'title'=> $title, 'content'=> $content);
}

我认为应该是:

while($getdata=mysql_fetch_array($query))
{
  $id=$getdata[0];
  $title=$getdata[1];
  $content=$getdata[2];
  $qa[]=array('id'=> $id, 'title'=> $title, 'content'=> $content);
}

因为 else$getdata是空的。

于 2013-11-25T10:47:18.013 回答
0

为什么不使用 WP API 插件并以这种方式使用数据?

于 2016-09-19T05:22:55.603 回答