PHPの中にはPHPを入れられないので、Moreリンクのカスタマイズが難航した件orz
WordPressでmoreリンクを付けると個別ページのURLを開くのではなくて、URL末尾に「#more-XXX」とかになってしまってSEO的にもあまりよろしくないってかちびと.netさんの記事で見かけたので早速私もやってみた!
細かい方法は御本家の記事を見ていただけばいいと思うんだけど・・・
若干問題が発生しましたp( q´Д`。)゜+。*゜+
何が問題だったのか?
確かにMoreリンクのとび先は個別ページになったし、リンクテキストも記事タイトルになった。
しかし、問題は「私のブログは記事タイトルが長い!」ってことです。
テキストだけを使っていれば特段問題になるようなことはないのですが、このブログのMoreリンクがテキスト+画像も使っているので長すぎるタイトルの場合表示が崩れて非常に不細工になってしまうのです・・・
つまり、長すぎるタイトルだと不細工なのでMoreリンクのアンカーテキストの長さを制限したいってことです!!
方法は解ってるんだけど・・・
もともと使っていたソースは下記の通りです。
<?php the_content(『 . the_title(”,”,false) . 』の続きを読む ); ?>
これを使うと「タイトル」+「の続きを読む」となるのですが、前述の通り私のブログの記事タイトルは長いのが多いので文字数制限をする必要があります。
(functions.phpの編集とかも必要ですけどね)
・・・で、その方法をググってみると下記のソースで対応できるとのこと
<?php echo mb_substr($post->post_title, 0, 15).'...'; ?>
参考にさせていただきました「ネットは広大だわ」
さて、上記の二つのソースを組み合わせると「個別ページのURLを開く」「リンクテキストが記事タイトルになる」「タイトルの文字数を制限する」が実現するはず。
つまり、最初のソースの「the_title(”,”,false)」
の部分を<?php echo mb_substr($post->post_title, 0, 10).’…’; ?>
に書き換える必要があるんですけど、PHPの中に直接PHPを書くことはできません。
どうすればいいの?
<?php the_content(『 . <?php echo mb_substr($post->post_title, 0, 15).’…’; ?> . 』の続きを読む ); ?>
↑↑↑こんなことできないお?
案外簡単に解決した!!
直接PHPの中にPHPを書くことはできないけど、入れ子を使えばいいんだね!
<?php $str= mb_substr($post->post_title, 0, 15).’…’;
the_content(『 . ($str) . 』の続きを読む ); ?>
こんなことで数十分悩んでしまいましたよ・・・
mb_substr($post->post_title, 0, 15).'...'
の部分を$str
で呼び出しただけなんだけど、これで解決!
____
/ _ノ ヽ、\
/o゚((>)) ((<))゚o また一つお利口さんになったおww
/ .:゚~(__人__)~゚:\
| |r┬-| |
\、 i⌒i‐’ ,;/
/ ⌒ヽ.ノ ノ く
/ ,_ \ l||l 从\ \
と___)_ヽ_つ_;_ヾ_つ.;.
ベシベシベシ
いいよね?
最後まで私の拙いエントリーを読んでいただいてありがとうございます!もしもこの記事が少しでもあなたのお役に立てたなら、ぜひ「いいね!」していってください。
また何か新しい発見をお届けできるかもしれません。
何か見つかるかもね
コメント
※コメントは承認制ですので、表示されるまで時間がかかる場合があります。この記事へのトラックバックはありません。

この記事へのコメントはありません。