wp.vicunaのテンプレートを使っていると、投稿の際に「more」を入れると、「continue reading」という表示になります。英語だとわかりにくいので、日本語表記に変更したいのと、この「continue reading」をクリックすると、記事ファイルに「#extended」がついてしまって、ブックマークするにもURLも分散するので好ましくありません。
それを解消する方法を書いておきます。WordPressをアップグレードしたら最初にやること – Spherical-moss.netさんを参考にさせていただきました。ありがとうございます。
続きを読む、に表記変更する方法
wp.vicuna/index.phpというファイル内で、
<?php the_content(__(‘continue reading’, ‘vicuna’)); ?>
を検索
<?php the_content(__(‘…続きを読む‘, ‘vicuna’)); ?>
に変更。
- index.php
- single.php
- archives.php
- page.php
- category.php
の全てを修正しておきましょう。その際、保存の時に「UTF-8」で保存しておかないと文字化けするので注意。
#extendedをなくして記事ファイル名そのままにする方法
post-templete.phpをいじる方法、もあるらしいのですが、WordPressをアップグレードしたら最初にやること – Spherical-moss.netによると、ここはいじらずに、wp.vicuna内のfunction.phpをいじる方がよいらしいです。
wp.vicuna > function.php
$content = preg_replace(‘/\s*<p><span id=”more-([0-9]+?)”><\/span>(.*?)<\/p>/’, “\n\t\t\t</div>\n$indentText<div class=\”textBody\” id=\”extended\”>\n$indentText\t<p>\\2</p>”, $content);
$content = preg_replace(‘/\s*<span id=”more-([0-9]+?)”><\/span>(.*?)<\/p>/’, “\t</p>\n\t\t\t</div>\n$indentText<div class=\”textBody\” id=\”extended\”>\n$indentText\t<p>\\2</p>”, $content);
$content = preg_replace(‘/\s*<p><span id=”more-([0-9]+?)”><\/span>(.*?)<br\s*\/>/’, “\n\t\t\t</div>\n$indentText<div class=\”textBody\” id=\”extended\”>\n<p>$indentText\t<p>\\2</p>”, $content);
それぞれのid=\”extended\”を削除します。それから、
// Replace ‘<p><a>’ by ‘<p><a>’.
// (href=”hoge#more-**”を、href=”hoge#extended”に置換)
の部分の下に
$content = preg_replace(‘/<p(\s.+?=”.+?”>|>)\s?<a href=”(.+?)#more-([0-9]+?)”>(.+?)<\/a><\/p>/’, ‘<p><a href=”\2extended” title=”‘ . $entry_title . ‘ 全文を読む” rel=”nofollow”>\4</a></p>’, $content);
という部分があるので extended 部分を削除して
$content = preg_replace(‘/<p(\s.+?=”.+?”>|>)\s?<a href=”(.+?)#more-([0-9]+?)”>(.+?)<\/a><\/p>/’, ‘<p><a href=”\2” title=”‘ . $entry_title . ‘ 全文を読む” rel=”nofollow”>\4</a></p>’, $content);
にする。その下の
// <p>から始まらない場合の<a>を<p><a>に置き換える
の下にも
$content = preg_replace(‘/\s*<a href=”(.+?)#more-([0-9]+?)”>(.+?)<\/a><\/p>/’, “</p>\n\t\t\t\t”.'<p><a href=”\1extended” title=”‘ . $entry_title . ‘ 全文を読む” rel=”nofollow”>\3</a></p>’, $content);
があるので、そちらも同様に、以下のように修正。
$content = preg_replace(‘/\s*<a href=”(.+?)#more-([0-9]+?)”>(.+?)<\/a><\/p>/’, “</p>\n\t\t\t\t”.'<p><a href=”\1” title=”‘ . $entry_title . ‘ 全文を読む” rel=”nofollow”>\3</a></p>’, $content);
保存してアップロードすればオーケーです。
[…] sorariumというブログさんの「 wp.vicunaのcontinue reading…を”続きを読む”に変更して#extendedをなくす方法」という記事を参考に、英語の部分を日本語に直し、#extendedをなくしました。 […]