我在首页上运行了3个循环。
一个用于滑块,它需要具有“滑块”标签的帖子。
一篇专题文章,它想要标记为“精选”的帖子。
第三个我在loop_latest.php中调用,它想要6个最新帖子;这里的诀窍是那些没有标签“slider”或“featured”的6个晚期。
所以我有这个问题。
$query = new WP_Query(
array(
'showposts' => '6',
'tag_not_in' => array('featured, slider'),
) );
我很确定这里的问题是“tag_not_in”不喜欢字符串,它需要ID。
SO!有没有办法将字符串传递给它?
如果没有,我如何判断标签的ID是什么?
我可以在“functions.php”中运行一些代码来设置和保留ID吗?精选== 777,滑块== 888
那样的东西?
我希望能够设置它们以便打包这个主题。而不是希望当客户端注册标签“slider”和“featured”时,它们与我在循环/查询中选择的内容相匹配。
答案 0 :(得分:0)
correct parameter为tag__not_in
(带有2个下划线)。
另外 - 要获取您的代码ID,请将此代码放入functions.php
function get_tag_id_by_name($tag_name) {
global $wpdb;
$tag_ID = $wpdb->get_var("SELECT * FROM ".$wpdb->terms." WHERE `name` = '".$tag_name."'");
return $tag_ID;
}
并且您的新代码应为:
$featuredtag = get_tag_id_by_name('featured');
$slidertag = get_tag_id_by_name('slider');
$query = new WP_Query(
array(
'showposts' => '6',
'tag__not_in' => array($featuredtag, $slidertag),
) );