【发布时间】:2016-12-18 19:36:52
【问题描述】:
我只是找不到答案,也找不到针对我的具体案例的相关文章(或者我找到但不认识它)。
所以,我有正常的博客文章,并且我有自定义字段名称“标签”,其中只有 1 个单词“音乐”(标签是文本类型)。
我用于选择“标签”中包含“音乐”的所有帖子的 php 是:
add_filter('query_vars', function( $vars ) {
$vars[] = 'tag';
return $vars;
});
add_action( 'pre_get_posts', function ( $query ) {
if (!empty($_GET)) {
if ($tag = get_query_var('tag', false)) {
$meta_query[] = array(
'key' => 'tag',
'value' => $tag,
'compare' => '='
);
}
$query->query_vars['meta_query'] = $meta_query;
}
}, 1);
现在,当我输入网址时,例如:localhost/myblog/?tag=music 没有显示任何帖子,即使我在“标签”字段中几乎没有包含“音乐”的帖子。 我想先得到这个简单案例的解决方案,因为我不知道我做错了什么。
另外,如果我想在文本字段“标签”中创建多个值,我想要解决方案,例如:“音乐、电影、流行音乐、生活”,所以当人们输入搜索“生活电影”时,他们会得到所有带有这些的帖子具体领域。谢谢你,很抱歉文字墙比预期的要大。如有任何帮助,我们将不胜感激。
【问题讨论】:
标签: php wordpress get advanced-custom-fields posts