2017-09-28 16 views
0

次のコードでは、スペースの代わりに "%20"というリンクタイトルを付け、タイトルの前に "http://"を付け加えています。PHP URLのタイトルが面白いです

「user_url」はリンクURLです。

"キャッチフレーズ" タイトルテキスト(例えば "Loremのイプサムの悲しみは... consectetur adipiscing ELIT、AMET座る")され

出力は次のようになります。私が欲しいもの "http://Lorem&20ipsum&20dolor&20sit&20amet&20consectetur&20adipiscing&20elit"

だけできれいですテキスト。

アドバイスはありますか?

<?php if(!empty($current_author_profile->user_url)) {?> 
 
<li><i class="fa fa-link"></i><a href="<?php echo esc_url($current_author_profile->user_url);?>" target="_blank" title="<?php echo esc_url($current_author_profile->tagline);?>"><?php echo docdirect_parse_url($current_author_profile->user_url);?></a></li> 
 
<?php }?>

ありがとう:

は、ここでは、コードです!

title="<?php echo $current_author_profile->tagline;?>" 

作業をする必要があります:あなたはURLエスケープあなたのタイトルをしているためだ:)

+0

クリアテキストの意味 –

+0

リンクをクリックすると、「Lorem ipsum dolor sit amet、consectetur adipiscing elit」ではなく「http」//Lorem&20ipsum&20dolor&20sit&20amet&20consecturur&20adipiscing&20elit " –

+0

しかし、私はこのリンクがハイフンであるべきだと思います –

答えて

2

htmlentities()タイトルをダブルクォートでエスケープする必要があるので、ダブルクォート自体が含まれていると、タイトルが破れたり、htmlタグの機能が乱雑になることがあります。

にhtmlentities - 私はhtmlentities() -functionの2番目のパラメータflagsENT_QUOTESでダブルとシングルの両方の引用符を引用することを好む

title="<?php echo htmlentities($current_author_profile->tagline, ENT_QUOTES | ENT_HTML5);?>" 

HTMLエンティティに適用可能なすべての文字を変換します http://php.net/manual/en/function.htmlentities.phpを参照してください。利用可能なフラグ、エンコーディングパラメータなどの詳細については、ドキュメントのリンクを確認してください。

+0

それは私の知識を超えていますが、コードが機能し、残りの部分についてあなたが言ったことを信頼するつもりです。ありがとうございました! –

2

+0

魅力的です:)ありがとう! –

関連する問題