【发布时间】:2014-06-27 11:57:52
【问题描述】:
我有一个包含帖子元数据的下拉列表:
<form name="search" action="" method="get" class="form-dropdown">
<select name="city">
<option>Stadt wählen</option>
<?php
$metakey = 'city';
$counties = $wpdb->query(
$wpdb->prepare(
"
SELECT DISTINCT meta_value
FROM $wpdb->postmeta AS pm
JOIN $wpdb->post AS p ON pm.post_id = p.ID
WHERE meta_key = %s
AND post_status = 'published'
ORDER BY meta_value ASC
",
$metakey
)
);
if ($counties) {
foreach ($counties as $city) {
echo "<option value=\"" . $city . "\">" . $city . "</option>";
}
}
?>
</select>
<input type="submit" value="Anzeigen" />
</form>
但是
AND post_status = published
这里似乎是错误的。知道如何仅显示已发布帖子中的元数据吗?我使用插件“FeedWordPress”获取每个 RSS 提要的帖子,他将旧帖子置于“已退休”状态,以便显示。不,我在插件中没有找到将它们放入垃圾箱的选项...
【问题讨论】:
-
post_status 不是 postmeta 表中的字段。您必须使用帖子表创建连接查询
-
我认为你是对的,但我不知道如何实现这一点。以前?
标签: php wordpress loops metadata