张贴分页的名字,而不是数字

时间:2012-02-14 作者:James

目前,使用<!--nextpage--> 在一个柱子上只拉数字。我希望能够命名每个分页符,然后调用名称,而不仅仅是一个数字。类似于:

<!--nextpage: Introduction-->

我说的不是url重命名,只是用于页面链接的名称。

有人能帮忙吗?

1 个回复
SO网友:Matthew Boynes

的文本<!--nextpage--> 是硬编码的,所以您不能专门修改它。wp_link_pages 仅适用于一致的文本,因此我认为您也不能真正使其完全满足您的需要,但它确实接受一个参数echo 您可以设置为false 返回值。利用这一点,有很多方法可以完成你想要做的事情。三个简单的选项是使用短代码、另一个HTML注释,或者可以使用post meta。就我个人而言,我可能会选择另一条HTML注释,就在每个“页面”的顶部。帖子可能会这样:

<!--Section:Introduction-->
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
<!--nextpage-->

<!--Section:Method-->
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
<!--nextpage-->

<!--Section:Discussion-->
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
<!--nextpage-->

<!--Section:Reference-->
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
解决方案将此添加到函数中。php文件并根据您的使用自定义它,然后您可以调用my_wp_link_pages() 而不是wp_link_pages() 要获取自定义链接,请执行以下操作:

/**
 * Replace page numbers with section titles in HTML comments
 *
 * @return void
 * @author Matthew Boynes
 */
function my_wp_link_pages() {
    global $post, $numpages, $multipage;
    if ($multipage) {
        $links = wp_link_pages(array(
            \'before\' => \'<div class="page-link">\' . __( \'Pages:\', \'toolbox\' ),
            \'after\' => \'</div>\',
            \'link_before\' => \'<b>\',
            \'link_after\' => \'</b>\',
            \'echo\' => 0
        ));
        if (preg_match_all(\'/<!--Section:(.*?)-->/i\', $post->post_content, $custom_links)) {
            for ( $i = 1; $i < ($numpages+1); $i = $i + 1 ) {
                $links = preg_replace("#<b>$i</b>#",$custom_links[1][$i-1],$links);
            }
        }
        echo $links;
    }
}
注意:这使用正则表达式将链接中的数字替换为节标题。你可能想知道<b> 标签,对吗?这些只是为了确保我们只识别和替换我们想要的数字,否则regex就没有什么可“锁定”的,很可能会出现不可预测的行为(例如slug/juniors-1st-birthday/ 可能会变成/juniors-Introductionst-birthday/).

结束

相关推荐

Pagination throws 404

显示自定义帖子类型时,我的分页遇到一些问题。我想显示9篇文章,然后显示数字分页。这是可行的,一些链接是用(对我来说)正确的URL生成的:http://mywebsite/tutorial/page/2 或http://mywebsite/tutorial/taxonomy/page/2 但它总是在404页上完成。欢迎您提出任何想法,以下是我的代码,如果您发现任何问题:)提前谢谢。西里尔<?php $args = array( \'post_type\' =&g