EFFICIENTというワールドプレス・テンプレートを使っています。

descriptionがソースコード上、改行し表示されます。
改行しない事は可能でしょうか。
(実際の文では改行して、ソースは改行しないという意味。
descriptionは文のはじめから引っ張ってくる設定でOKです。)
アドバイスいただけると幸いです。

<meta name="description" content="<?php
if( is_single() )
echo ( has_excerpt() ) ? get_the_excerpt()
: mb_substr( strip_tags($post->post_content), 0, 200 ) ."...";

elseif( is_category() )
echo ( category_description() ) ? strip_tags( category_description() )
: '「'. trim( wp_title('', false) ) .'」のページです。';

elseif( is_page() || is_archive() )
echo '「'. trim( wp_title('', false) ) .'」のページです。';

else
echo get_bloginfo('description');
?>" />

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2013/04/01 19:40:31
  • 終了:2013/04/02 19:25:53

ベストアンサー

id:rouge_2008 No.1

rouge_2008回答回数594ベストアンサー獲得回数3512013/04/02 01:56:02

ポイント100pt

次のようにして改行コードを削除するといいようです。

<meta name="description" content="<?php
if( is_single() )
echo ( has_excerpt() ) ? preg_replace( '!\n!', '', strip_tags( get_the_excerpt() ) )
: mb_substr( preg_replace( array('!\n!', '!\[[^]]+\]!'), '', strip_tags($post->post_content) ), 0, 200 ) ."...";

elseif( is_category() )
echo ( category_description() ) ? preg_replace( '!\n!', '', strip_tags( category_description() ) )
: '「'. trim( wp_title('', false) ) .'」のページです。';


※コンテンツ本文から取得する場合、ショートコードも削除するように変更してあります。

※カテゴリーディスクリプションが記述されていない場合や、年月別アーカイブ、固定ページ等ではタイトル+「のページです。」と表示するようにしているようですが、Googleのウェブマスターツールで「短いメタデータ」として検出される可能性があります。
また条件に一致しなかったページはすべて一般設定のキャッチフレーズを表示しますので、こちらは「重複するメタデータ」として検出される可能性があります。
検出されるページ数がある程度多くなると、検索順位にも何らかの影響がある可能性があります。
カテゴリーディスクリプションはすべて記入し、固定ページおよび年月別アーカイブについては、タイトル以外の出力を行うようにするなどした方が良さそうです。
さらに、最後の条件をトップページの場合にして、本文も取得・表示するようにした方がいいように思います。
※インデックスやアーカイブでは、「$post」には最初の投稿の情報が入っています。

id:akakak

本当に本当にありがとうございました!

2013/04/05 14:30:06
id:akakak

この解答者様は本当にいいです。

2013/04/09 15:11:45

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません