1) “类别存档页需要按时间升序排列,但前提是它们包含我指定的自定义帖子类型中的一篇或多篇帖子”
我认为这是不可能的;至少不实用。然而,自从发布这个问题以来,我已经为我的自定义帖子类型设置了自定义分类法,这就不需要这样做了。自定义帖子类型归档页面已经按照我想要的方式进行了排序,因此由于类别不再包含自定义帖子类型,它们的排序可以通过一个简单的类别排序插件来处理。
默认分页标记不正确。即,最旧的帖子位于第一页的顶部,当我滚动到底部时,链接标记为“旧帖子”,但此链接确实会将您带到新帖子
这是由主题处理的,在国际海事组织看来相当愚蠢。参见下面的注释*。
2013年使用twentythirteen_paging_nav()
功能(包含在functions.php
) 要设置这些分页链接。。。
function twentythirteen_paging_nav() {
global $wp_query;
// Don\'t print empty markup if there\'s only one page.
if ( $wp_query->max_num_pages < 2 )
return;
?>
<nav class="navigation paging-navigation" role="navigation">
<h1 class="screen-reader-text"><?php _e( \'Posts navigation\', \'twentythirteen\' ); ?></h1>
<div class="nav-links">
<?php if ( get_next_posts_link() ) : ?>
<div class="nav-previous"><?php next_posts_link( __( \'<span class="meta-nav">←</span> Older posts\', \'twentythirteen\' ) ); ?></div>
<?php endif; ?>
<?php if ( get_previous_posts_link() ) : ?>
<div class="nav-next"><?php previous_posts_link( __( \'Newer posts <span class="meta-nav">→</span>\', \'twentythirteen\' ) ); ?></div>
<?php endif; ?>
</div><!-- .nav-links -->
</nav><!-- .navigation -->
<?php
}
仔细查看上面的代码,忽略“旧/新”标签。在“next”链接的条件逻辑中,您有
next_posts_link()
函数包装在标记为
nav-previous
. 反之亦然,对于其他链接。。。这个
previous_posts_link()
函数包装在内部
nav-next
. 就像我之前说的。。。高飞。
我的解决方法很简单。我将整个函数复制到我的子主题functions.php
文件因为原稿是包在里面的if ( ! function_exists( \'twentythirteen_paging_nav\' ) )
, 子主题中的副本将优先。然后我重新安排了函数,以便next_posts_link()
显示在.nav-next
div
并重新标记为"Next page"
, 并且对previous_posts_link()
作用
function twentythirteen_paging_nav() {
global $wp_query;
// Don\'t print empty markup if there\'s only one page.
if ( $wp_query->max_num_pages < 2 )
return;
?>
<nav class="navigation paging-navigation" role="navigation">
<h1 class="screen-reader-text"><?php _e( \'Posts navigation\', \'twentythirteen\' ); ?></h1>
<div class="nav-links">
<?php if ( get_next_posts_link() ) : ?>
<div class="nav-next">
<?php next_posts_link( __( \'Next page <span class="meta-nav">→</span>\', \'twentythirteen\' ) ); ?>
</div>
<?php endif; ?>
<?php if ( get_previous_posts_link() ) : ?>
<div class="nav-previous">
<?php previous_posts_link( __( \'<span class="meta-nav">←</span> Previous page\', \'twentythirteen\' ) ); ?>
</div>
<?php endif; ?>
</div><!-- .nav-links -->
</nav><!-- .navigation -->
<?php
}
最后一步是调整CSS,因为第二十三条使得左下角的“上一条”链接(正式称为“旧帖”)比其他链接大60%。我想他们的想法是把“下一页”的按钮放大。由于位置和标签是翻转的,因此必须调整CSS大小。
<小时>*Notes: 在最新帖子位于顶部的情况下,“下一页”将是“较旧”的帖子。在这个主题中,指向“下一页”的链接被标记为“旧帖子”,它指向左边,表示“后退”。我称之为“傻瓜”,因为当帖子以任何其他方式排序时,它会完全崩溃。当最旧的帖子位于顶部、按字母顺序排序等时,“旧”标签将变得毫无意义。因为从技术上讲,它会进入结果查询的下一页,所以它应该被标记为“下一页”,实际上是next_posts_link()
函数是如何创建的。然而,简单地将其重新标记为“下一个”是不够的,因为它位于左下角,并向后指向左侧。用适当的CSS包装它class
nav-next
如我在上面的回答中所述修复此问题。