我在 WordPress 中有这个插件,我已经进行了大量修改。该插件的目的最初是显示您告诉它的任何类别的缩略图。截至目前,我已经完成的远不止这些。但无论如何,这是插件的简码..
[categorythumbnaillist 7]
7 当然是类别 ID。该插件会获取您告诉它的任何类别的帖子(即 7、3、4),并使用我制作的以下代码对它们进行排序:
$args=array(
'showposts'=>5,
'category'=> $listCatId[1],
'orderby'=> $categoryThumbnailList_OrderType,
'order'=> $categoryThumbnailList_Order
);
$myposts = get_posts( $args);
现在,我希望插件仅在其中包含“新闻”标签时才显示帖子。所以我做了这样的新闻标签:
$args=array(
'tag' => 'news',
'showposts'=>5,
'category'=> $listCatId[1],
'orderby'=> $categoryThumbnailList_OrderType,
'order'=> $categoryThumbnailList_Order
);
$myposts = get_posts( $args);
如果其中有“新闻”标签,这将成功显示 5 个帖子。但问题来了……
我将在一页上多次使用这个插件。因此,当我使用上面列出的具有不同类别 ID 的短代码时,插件不会显示相应类别的帖子,因为除了新闻类别之外,没有任何帖子标记为“新闻”。:(
要解决此问题并使插件仅显示带有“新闻”标签的新闻帖子,同时仍能正确显示其他类别的帖子……我尝试设置一个简单的 if / else 语句……像这样:
$args=array(
'tag' => 'news',
'showposts'=>5,
'category'=> $listCatId[1],
'orderby'=> $categoryThumbnailList_OrderType,
'order'=> $categoryThumbnailList_Order
);
$targs=array(
'showposts'=>5,
'category'=> $listCatId[1],
'orderby'=> $categoryThumbnailList_OrderType,
'order'=> $categoryThumbnailList_Order
);
if ( tag == true ) {
$myposts = get_posts( $args);
}
else {
$myposts = get_posts( $targs);
}
这成功地过滤了新闻帖子,只显示其中带有“新闻”标签的帖子。但是它没有得到任何其他类别的帖子。:(
如果有人知道我将如何解决此 if / else 语句或更改代码以使插件仅显示带有“新闻”标签的新闻帖子,同时仍能正确显示其他类别的帖子,请填写我!:)