这将是一种黑客行为,但也可以使用其他函数。
将此添加到主题functions.php 文件
function wp_link_pages_titled($args = \'\') {
$defaults = array(
\'before\' => \'<p>\' . __(\'Pages:\'),
\'after\' => \'</p>\',
\'link_before\' => \'\',
\'link_after\' => \'\',
\'echo\' => 1
);
$r = wp_parse_args( $args, $defaults );
extract( $r, EXTR_SKIP );
global $page, $numpages, $multipage, $more, $pagenow, $pages;
$output = \'\';
if ( $multipage ) {
$output .= $before;
for ( $i = 1; $i < ($numpages+1); $i = $i + 1 ) {
$part_content = $pages[$i-1];
$has_part_title = strpos( $part_content, \'<!--pagetitle:\' );
if( 0 === $has_part_title ) {
$end = strpos( $part_content, \'-->\' );
$title = trim( str_replace( \'<!--pagetitle:\', \'\', substr( $part_content, 0, $end ) ) );
}
$output .= \' \';
if ( ($i != $page) || ((!$more) && ($page==1)) ) {
$output .= _wp_link_page($i);
}
$title = isset( $title ) && ( strlen( $title ) > 0 ) ? $title : \'First\';
$output .= $link_before . $title . $link_after;
if ( ($i != $page) || ((!$more) && ($page==1)) )
$output .= \'</a>\';
}
$output .= $after;
}
if ( $echo )
echo $output;
return $output;
}
现在更新您必须的每个通话
wp_link_pages
而是调用新函数
wp_link_pages_titled
.
它不是完美的,而且有点黑,但它会满足你的要求,只是确保你在将它们写入帖子时使用这种格式。。
Content intro
<!--nextpage--><!--pagetitle: Title 1 -->
Next page content 1
<!--nextpage--><!--pagetitle: Title 2 -->
Next page content 2
<!--nextpage--><!--pagetitle: Title 3 is longer -->
Next page content 3
<!--nextpage--><!--pagetitle: Another Title -->
Next page content 4
您也可以将链接标题设置为第一页,但它必须出现在任何其他内容之前,例如,就在第一行。。
<!--pagetitle: Title for very first link -->
Content intro
编写代码的目的是让它工作起来,还有改进的空间,我主要想说明这是可能的,这取决于您(或任何其他人)对其进行扩展。
希望这能帮助您顺利完成任务……)