不,您不必转义其他人无法更改的值。
您应该转义可能被其他源更改的输出,例如,如果有一个过滤器在值上运行。
假设您正在使用wp_upload_dir()
要查找上载目录,您绝对应该这样做,因为该目录的位置可以自定义然后有各种过滤器在起作用,所以您应该转义最终的URL。
或者,如果您插入了自己的过滤器选项,那么您可以更改每个插件或子主题的URL–同样,您需要转义。
示例:
$upload_dir = wp_upload_dir();
$upload_url = $upload_dir[\'baseurl\'];
$payment_icons = [
\'visa\' => $upload_url . \'/2022/01/visa02.png\',
\'mastercard\' => $upload_url . \'/2022/01/mastercard.png\',
];
$payment_icons = apply_filters( \'theme_payment_icons\', $payment_icons );
foreach( $payment_icons as $alt => $url ) {
printf(
\'<img src="%1$s" alt="%2$s">\',
esc_url( $url ), // we escape as late as possible!
esc_attr( $alt )
);
}