我一直在尝试创建一个最近发布的小部件,其中只显示/显示同时具有X和Y(或更多)类别的帖子。类别X和Y是用户定义的,因此我计划将其设置为如下所示:
事实上,这张图片是我成功创建的实际屏幕截图。
如果我只从一个类别中选择,效果很好。它将显示所有类别为X(或X的子级)的帖子。然而,如果我再添加一个类别,它将停止工作——相反,小部件将显示所有最近的帖子,而不管类别如何。
为了创建此代码,基本上我复制了widget_recent_posts
分类自default-widget.php
并为ID输入添加字段。它利用WP_query
查询帖子和category__and
选择职位:
$r = new WP_Query( apply_filters( \'widget_posts_args\', array( \'posts_per_page\' => $number, \'no_found_rows\' => true, \'post_status\' => \'publish\', \'category__and\' => array($category_name), \'ignore_sticky_posts\' => true ) ) );
到目前为止,我创建的内容(完整类)可在此处找到:
http://codepad.org/yf1ZFAt5如果有人能帮助我,我会非常感激,因为我已经在这件事上胡闹了好几个小时,但还没有设法解决它s
最合适的回答,由SO网友:Mridul Aggarwal 整理而成
您正在使用\'category__and\' => array($category_name)
根据输入变成\'category__and\' => array(\'594,3\')
此处“594,3”不是有效的id
相反,请尝试\'category__and\' => explode(\',\', $category_name)
这将使输入成为\'category__and\' => array(\'594\', \'3\')