web-dev-qa-db-ja.com

Esc_urlとハードコーディングされたURLの併用

次のURLを私のテーマに追加しましたが、esc_url()を使わなければならないことを知らされました。わかりませんでしたが、次のコードでその関数を使用する方法を教えてください。

<a href="http://pinterest.com/pin/create/button/?url=<?php echo urlencode( get_the_permalink() ); ?>&amp;media=<?php echo urlencode($thumbnail); ?>&amp;description=<?php echo urlencode( get_the_title() ); ?>" target="_blank">Pinterest</a> 
1
kashan

私はあなたがそれを必要としていると思います。たとえば、URLでタイトルを使用しており、タイトルを動的に取得しています。そのため、タイトルがURLで使用されるのに有効かどうかを正確に知ることはできません。それで、それを使うのが良いです。

ほんの一例です。タイトルが ホワイトスペースを含み、ホワイトスペースがURLで使用されるために包含される必要があるのは非常に一般的です

最初に完全なURL文字列を構築し、次にesc_url()を使用します。これは現在、何らかの属性値に使用されています。

$url_params = array(
    'url'         => get_the_permalink(),
    'media'       => $thumbnail,
    'description' => get_the_title()
);

$url = "http://pinterest.com/pin/create/button/?" . http_build_query( $url_params );

echo '<a href="' . esc_url( $url ) . '">Pinterest</a>';
1
cybmeta