WordPress导航只显示第一页的文章,即使在第二页也是如此

时间:2012-03-13 作者:Kurt Bunch

有点小问题,希望我能得到一些帮助。我注意到,在我的索引中添加了“按帖子排序”代码后,我的导航中断了。如果你点击第二页,你仍然可以看到第一页的内容。我做了一些挖掘,发现了问题,唯一的问题是我不知道如何解决它。这是我的索引页中的循环。现在我需要从主循环中排除一个选定的类别,这是第一部分。第二部分是,如果我向query\\u posts字符串(最后一行的第二行)添加$orderby,那么导航将中断。如果我移除它,它就会工作。我试图查询\\u posts字符串,但没有成功。不管怎么说,要做到这一点,还是我必须为了另一个而放弃一个?

        <?php
    $featcat = get_option($shortname.\'_featured_category\');      
    $category_id = get_cat_ID($featcat);
$paged = (get_query_var(\'paged\'))?get_query_var(\'paged\'):1;
$q = array();
$q[\'category__not_in\'] = array($category_id);
$q[\'paged\'] = $paged;
query_posts($q.$orderby);
if (have_posts()) : while (have_posts()) : the_post(); ?>

1 个回复
SO网友:Stephen Harris

问题是$q is与数组和$orderby 是字符串。所以$q.$orderby 没有道理。(未测试)但删除$orderby 并尝试

$q[\'orderby\']=\'title\';
(Theorderby 键可以具有给定的任何值in this list in the Codex.). 此外,使用以下语法会更简洁:

$q = array(
    \'category__not_in\'=> array($category_id),
    \'paged\' => $paged,
    \'orderby\'=>\'title\',
);
query_posts($q);
如果您试图使其与WP PostRatings插件兼容,而不是使用查询字符串,请更新&r_sortby=highest_rated&r_orderby=desc, 您可以将其设置为数组格式:

$q = array(
    \'category__not_in\'=> array($category_id),
    \'paged\' => $paged,
    \'meta_key\' => \'highest_rated\',
    \'orderby\'=>\'meta value\',
    \'order\'=>\'DESC\',
);
query_posts($q);
*注意,我没有对此进行测试,也没有检查插件”,但“highest\\u rated”应该是帖子评级的元键。See the Codex 了解更多详细信息*

结束

相关推荐

Thesis -style Navigation

我正在研究一个主题,我希望用户能够像论文一样选择要在主题选项页面中显示的页面。我已经在谷歌上搜索了几个小时的逆向工程论文,但还没有找到一个很好的解决方案。我想知道是否有人做过这件事或看过教程。