WordPress的获取帖子ID与PHP文件
问题描述:
我一直坚持这个星期。我有一个使用Reveal.js的HTML幻灯片演示文稿。我想在最后一张幻灯片上运行一个php脚本。WordPress的获取帖子ID与PHP文件
这是一个WordPress帖子中的最后一张幻灯片的HTML按钮:
<button onclick="myFunction()">Open php file</button>
<script>
function myFunction() {
window.open("../../testing/test.php", "_self");
}
</script>
这是我试图运行test.php的文件中的代码,但它返回null:
define('WP_USE_THEMES', false);
require_once('../wp-load.php');
echo "Post ID: ".get_the_ID(); // Returns nulls but I want this to return 86.
帖子ID是86.我可以硬编码到html(如果我必须),但我不想将它硬编码到php文件中。另外,我宁愿不使用jQuery。我怎样才能获得帖子ID到PHP文件?谢谢。
答
您是否尝试过使用全局$ post变量?
global $post;
在这之后,你可以得到的ID,
echo "Post ID: ".$post->
另一种方法是使用$wpdb
全局变量来使数据库查询。
您还可以使用JavaScript将您的帖子ID使用javaScript表单,Ajax或jQuery发送到另一个php文件。 jQuery Post。
也许最适合你的最简单的方法是这样的
function myJavascriptFunction() {
var javascriptVariable = "John";
window.location.href = "myphpfile.php?name=" + javascriptVariable;
}
在您myphpfile.php可以使用$_GET['name']
被执行你的JavaScript后。
是的,我尝试了很多使用全局变体的变体。他们都返回null。我认为问题在于PHP没有在帖子中加载。它直接从站点的核心文件中的服务器运行。 php文件不在wordpress安装中。 – Lumo5
如果它不在wordpress中,那么您应该使用全局$ wpdb使用数据库查询。这个链接可能是一个帮助。 https://www.sitepoint.com/working-with-databases-in-wordpress/ – uvishere
好主意。我从来没想过这点。不过,我认为这需要制作许多PHP文件来处理每篇文章。我想只使用一个PHP来处理每个用户的每篇文章。我将如何查询用户正在阅读的最后一篇文章? – Lumo5