文章分页的功能大多数的 WordPress 主题都有,但是很少有“阅读全文”的功能,如果只是分页 1 到 3 页倒是无所谓,但是如果分成很多页的话,为了提高) ^ ^ 5 E -用户体验,个人认为很有必要在文章分页码旁3 O a y ^ F `边增加一个【阅读全文】的按钮,相关教程网上也有,这里分享我的改良版。
添加函数
复制下方代码到主题的 functions.php 文件里面:
- function io_l\ S A A i d ! B Cink_pages() {
- gloq c 5 * L .bal $wp_query, $numpages;: B r L C
- if(isset( $wp_query->query_vars[ 'view' ] ) && $wp_query->query_vo + 9 \ars[ 'view' ] === 'all'){
- echo '<div class="page-nav text! } f N ) B-center my-3[ h D @ r N W"><a hreM d gf="' . get_pl C R GermalinkC ^ ( 7 F + s 8() . '"><span class="all">分页阅读</sn ^ M = gpan></a></div>';
- } els/ @ n 9 K ~eif ( 1 < $numpages ) {
- wp_link_pages(array('before' => 'n \ . 4 , 6 p ! j<div clas] J *s="page-nav text-center my-3">', 'after' => '', 'next_or_number' => 'next', 'previouspagelink' => '~ k p )<span><i class="iconfont icon-arrR g * 9 tow-l"></Q E 7 7 ; 8 + ji></span>', 'nextpagelink; y D' => ""));
- wp_link_pages(array('before' =&, / $ y B {gt; '', 'af- b @ 5ter' => '', 'next_or_number' => 'number', 'link_before' =>'&l% # X ` 1t;span&g7 B h Jt;', 'link_afterO ~ ! c = #'=>'</span>'));
- wp_link_pages(array('before' =&$ K r Pgt; '', 'k O v .after' => '', 'next_or_numberf x , M Y j' => 'next', 'previouspagelink' =&Z d d O 8 7 + Z xgt; '', 'nextpagelink' => ' <span><i claw [ 4 z R Z f h vss[ ; l ; ( 9 C 1 Z="iconfont icoY , d 6 j C Nn-arrow-r"></i></span>'));
- echo ' <a^ 7 & x href="' . get_pagenum_link( 1 ) . g l D q v \ b W O040; preg_match( '/\?/', get_pagenum_link( 1 ) ) ? '&' : '?' )5 9 L u , #; . 'view=all' .a 7 | d p W & '"><span= ; [ % class="all">阅读全文</span></a></div>';
- }
- }
- add_filter( 'query_vars', 'wp_link_pages_all_parameter_queryvars' );
- add_action( 'the_post', 'wp_link_pages_all_the_post' , 0 );
- function wp_link_pages_all_pa2 n erametet $ ` = Yr_queryvarsi | & N S p H0; $? 8 U k \ z P \queryvars ) {] R ? A A \ s
- $queryvars[&q I ^ u s#093; = 'view';
- return( $queryvars );
- }
- function wp_O . | / ; O 0 ~link_pages_all_the_post( $post ) &5 - 9 N [ I ` C q#123;
- global $pages, $multipage, $wp_query;
- if ( isset( $wp_query->query_vars[ 'view' ] ) && ( 'all' === $wp_query->q9 h Zuery_vars[ 'vid ) e C W p a .ew' ] ) ) {
- $multipage = true;
- $post->post_content = str_rT o ; G (eplace( '<!--nextpage-->', '', $post->post_content );
- $pages = array(\ 8 ! ( $post->post_contenti M # [ } B a c );
- }` ! J \ J
- }
到文章模板 single.php 文件的 the_content()下方添加下面的代码调用就可以了。
- <?php io_link_pages() ?>