为什么我不能从php脚本查询wordpress数据库?
我也在Wordpress论坛上发布了这篇文章: 但是没有人回答,所以我想我也应该试试 我将展示我所使用的全部代码,但归根结底,我如何从wordpress数据库中获取帖子的内容,并用该内容替换HTML的内容 在页面加载时,我使用php为相应的图像生成post ID,即: onmousedown=javascript:getDescription onmousedown调用一个javascript,该javascript将我要查询的帖子的值传递给一个php文件,即:为什么我不能从php脚本查询wordpress数据库?,php,wordpress,Php,Wordpress,我也在Wordpress论坛上发布了这篇文章: 但是没有人回答,所以我想我也应该试试 我将展示我所使用的全部代码,但归根结底,我如何从wordpress数据库中获取帖子的内容,并用该内容替换HTML的内容 在页面加载时,我使用php为相应的图像生成post ID,即: onmousedown=javascript:getDescription onmousedown调用一个javascript,该javascript将我要查询的帖子的值传递给一个php文件,即: `<script type
`<script type="text/javascript">
function getDescription(for_id) {
$.ajax({
type: 'GET',
url: "<?php bloginfo('template_url');/>/assets/includes/get-description.php?id=" + for_id,
success: function(data, textStatus, jqXHR){
$('#textdescription').html(data);
}
});
}
</script>`
php文件get-description.php应该执行查询并返回post内容,然后javascript使用该内容更新内容:
`<p><?php
$contentVar = $_GET['id'];
$post = get_post($contentVar);
$content = $post->post_content;
echo $title;
?></p>`
所以,这一切都经过测试并正常工作,除了应该执行数据库查询的php文件——我无法让它在查询时返回任何内容。我可以返回其他内容,包括我收到的帖子id,因此我知道所有管道都已连接并正常工作
我不是一个非常老练的程序员,所以这可能是我缺少的一些非常简单和基本的东西。但如果你能帮我弄清楚,我会非常感激的。谢谢 您是否尝试过在PHP文件中包含必要的WordPress标题,以便调用以获取帖子 尝试在get-description.php文件的顶部打上这个标签 标题应该包含在任何函数之外的全局范围内,否则您可能会遇到WordPress认为它尚未配置/安装的一些问题
您还可以尝试按照此处的说明进行操作:考虑将get-description.php代码作为插件的一部分,然后查看有关如何使其正常工作的分步说明。具体地说,面向查看器的Ajax和“wp_Ajax_my_action”,在您的例子中可能是“wp_Ajax_get_description”
快速更新:请记住,get_post调用会通过所有标准过滤器,因此您还应该快速检查是否有其他插件影响调用。您是否收到任何错误消息?如果get_post函数在wordpress构造之外工作,我会感到惊讶。我会得到500个内部服务器错误。但我对我所掌握的工具不够了解,无法更详细地确定这一点……:我觉得应该是这样的——php文件中的后期检索代码是直接从codex中提取出来的,所以显然我需要做一些事情来告诉它如何处理这些命令。但是我尝试了./wp-blog-header.php,其中包含的文件根本不会返回任何内容。是的,我认为更好的解决方案可能是根本不使用ajax,而是在按下链接时加载实际页面。我本来打算对我正在使用的主题进行最小程度的定制,但我认为这样做会更好。但我想知道今后如何做到这一点。
<?php require_once ('path/to/wordpress/wp-blog-header.php');?>