我正在使用wp_link_pages()
来显示分页,如下所示:
1
<a href="/2">2</a>
<a href="/3">3</a>
<a href="/4">4</a>
由于这只是返回一个像上面这样的格式化的html字符串,我发现很难将当前页码包裹在一个范围内,如下所示:
<span class="current">1</span>
<a href="/2">2</a>
<a href="/3">3</a>
<a href="/4">4</a>
如何在span标记中包装一个用空格包围的数字(有时甚至没有<a>
个标记)?
答案 0 :(得分:2)
将此代码放在functions.php
中function custom_wp_link_pages( $args = '' ) {
$defaults = array(
'before' => '<p id="post-pagination">' . __( 'Pages:' ),
'after' => '</p>',`enter code here`
'text_before' => '',
'text_after' => '',
'next_or_number' => 'number',
'nextpagelink' => __( 'Next page' ),
'previouspagelink' => __( 'Previous page' ),
'pagelink' => '%',
'echo' => 1
);
$r = wp_parse_args( $args, $defaults );
$r = apply_filters( 'wp_link_pages_args', $r );
extract( $r, EXTR_SKIP );
global $page, $numpages, $multipage, $more, $pagenow;
$output = '';
if ( $multipage ) {
if ( 'number' == $next_or_number ) {
$output .= $before;
for ( $i = 1; $i < ( $numpages + 1 ); $i = $i + 1 ) {
$j = str_replace( '%', $i, $pagelink );
$output .= ' ';
if ( $i != $page || ( ( ! $more ) && ( $page == 1 ) ) )
$output .= _wp_link_page( $i );
else
$output .= '<span class="current-post-page">';
$output .= $text_before . $j . $text_after;
if ( $i != $page || ( ( ! $more ) && ( $page == 1 ) ) )
$output .= '</a>';
else
$output .= '</span>';
}
$output .= $after;
} else {
if ( $more ) {
$output .= $before;
$i = $page - 1;
if ( $i && $more ) {
$output .= _wp_link_page( $i );
$output .= $text_before . $previouspagelink . $text_after . '</a>';
}
$i = $page + 1;
if ( $i <= $numpages && $more ) {
$output .= _wp_link_page( $i );
$output .= $text_before . $nextpagelink . $text_after . '</a>';
}
$output .= $after;
}
}
}
if ( $echo )
echo $output;
return $output;
}
使用custom_wp_link_pages()
来源:http://bavotasan.com/2012/a-better-wp_link_pages-for-wordpress/
答案 1 :(得分:0)
为什么正则表达式作为标记?
您需要使用以下内容:
段落标记中的页面链接
<?php wp_link_pages('before=<p>&after=</p>&next_or_number=number&pagelink=page %'); ?>
显示段落标记中包含的页面链接。
DIV中的网页链接
<?php wp_link_pages('before=<div id="page-links">&after=</div>'); ?>
在DIV中显示CSS参考的页面链接<div id="page-links">
。
文档参考:http://codex.wordpress.org/Function_Reference/wp_link_pages