WordPress の more-link にはURL の後ろに #more-xxxx がつきます。ええとつまり、ブログホームから記事にジャンプするためには、記事のタイトルをクリックするか、記事の「続きを読む →」をクリックしますけども、「続きを読む →」の場合はURL の後ろに #more-xxxx がつきます。ひとつの記事に対して二つのURL があるのは紛らわしいので #more-xxxx がつかないようにしたいと思います。
調べました。
- 方法が公式の「続きを読む」のカスタマイズ – WordPress Codex 日本語版に載っています。テーマのプログラム、function.php の何処か適当な場所にページに掲載のソースを追記します。
- もっと短く、美しく。more-link の #more-xxxx を削除する : dogmap.jpでは #more- があるかどうか判定する部分を一行で済ませています。preg_replace 関数の正規表現検索および置換を使っています。短いソース、素敵です。
今回は、公式の方法を採用します。
実際にやって見ます。
function.php を編集します。
vim /var/www/html/oki2a24.com/wp-content/themes/oki2a24/functions.php
ファイルの最後に次を追加します。
/** * moreタグでURL末端に付く #more-xxxx を削除します。 */ function remove_more_jump_link($link) { $offset = strpos($link, '#more-'); if ($offset) { $end = strpos($link, '"',$offset); } if ($end) { $link = substr_replace($link, '', $offset, $end-$offset); } return $link; } add_filter('the_content_more_link', 'remove_more_jump_link');
以上です。