首先要去查一下佈景主題裡 哪裡呼叫執行,通常是在 functions.php
add_filter( 'get_the_excerpt', 佈景主題自定的 Reading More函式名稱' );
add_filter('excerpt_more', 佈景主題自定的 Reading More函式名稱');
add_filter('the_content_more_link', 佈景主題自定的 Reading More 函式名稱');
以上三個是佈景主題呼叫 add_filter 去修改 wordpres 內定 Read more 文字。
如果有發現的話,記下佈景主題的函式名稱,
然後在 functions.php 程式碼最後呼叫執行對應的
remove_filter( 'get_the_excerpt', 佈景主題自定的 Reading More函式名稱' );
remove_filter('excerpt_more', 佈景主題自定的 Reading More函式名稱');
remove_filter('the_content_more_link', 佈景主題自定的 Reading More 函式名稱');
接下來寫好自定 Read More 函式,再去呼叫 add_filter,讓你自定的函式與 wordpress 掛勾(hook)
例如:在 Twenty Eleven 佈景主題
remove_filter( 'excerpt_more', 'twentyeleven_auto_excerpt_more' ); function my_excerpt_more($more) { global $post; return '<a class="moretag" href="'. get_permalink($post->ID) . '">繼續閱讀</a>'; } add_filter('excerpt_more', 'my_excerpt_more'); |
remove_filter( 'get_the_excerpt', 'twentyeleven_custom_excerpt_more' ); function my_continue_reading_link() { return ' <a class="moretag" href="'. esc_url( get_permalink() ) . '">' . __( '繼續閱讀 <span class="meta-nav">→</span>', 'twentyeleven' ) . '</a>'; } function my_custom_excerpt_more( $output ) { if ( has_excerpt() && ! is_attachment() && ! is_admin() ) { $output .= my_continue_reading_link(); } return $output; } add_filter( 'get_the_excerpt', 'my_custom_excerpt_more' ); |
PS.如果佈景主題本身有定義 Read More 文字,你卻沒呼叫 remove_filter ,會造成新舊 Read More 文字都同時出現。