我使用wordpress构建网站。
我在数据库中有一个包含帖子ID的列,我想使用所有帖子的模板来获取数据。
我想要做的是:如果post id与数据库列中的相同,则获取数据并显示它。
我现在正在使用sql查询,但它会显示所有帖子的数据。如何获取特定帖子的数据?
数据库看起来像这样:
column: wordpress_id = 275 | name = example1
column: wordpress_id = 285 | name = example2
275和285是wordpress中帖子的id。如果我说
$sql = "SELECT * FROM tablename WHERE wordpress_id=275";
在模板中,它不会显示帖子ID 285的数据。
答案 0 :(得分:1)
阅读本文档:https://developer.wordpress.org/reference/functions/get_post/
在WordPress中,您的帖子和自定义帖子类型存储在同一个表中,并且不需要指定帖子类型。因此,您可以使用以下代码使用id从数据库中获取帖子。
$id = YOUR_POST_ID;
$post = get_post( $id );
检查输出并获取所需的值。
注意:如果您使用的是WordPress中可用的挂钩,则可以使用从数据库获取数据的方法,而无需使用普通的MySQL查询。
我希望这会有所帮助。
答案 1 :(得分:0)
我找到了解决方案:
<?php
$id = get_the_ID();
$sql = "SELECT * FROM example WHERE wordpress_id=$id";
$result = $conn->query($sql);
while($row = mysqli_fetch_array($result))
{
echo "Example: " . $row["example1"]. "<br>";
}
mysqli_close($con);
?>