根据Wordpress codex,使用esc_url_raw
esc\\u url\\u raw()函数类似于esc\\u url()(并实际使用它),但与esc\\u url()不同,它不替换要显示的实体。生成的URL可以安全地用于数据库查询、重定向和HTTP请求。
所以,可能应该这样写:
// escape url before using update_post_meta
update_post_meta( $post_id, \'url\', esc_url_raw( $url ) );
// escape url on output
echo esc_url( get_post_meta( $post_id, \'url\', true ) );
综上所述,
esc_url_raw
用于数据库存储,以及
esc_url
用于显示。