首页 > 解决方案 > 将 esc_attr_e() 连接到 WordPress 中的变量问题

问题描述

我正在尝试编写 wordPress 搜索插件。一切正常,但是当我将所有代码放在我的简码函数中时,esc_attr_e()它在 php 中不起作用。我不知道它对我有什么作用。这是我的台词:

<button type="submit" title="<?php esc_attr_e('Search', 'woocommerce'); ?>" class="search"><span><?php esc_attr_e('Search','woocommerce');?></span></button>

这就是我试图在 php 中实现这一点的方法:

<?php
$search = '<button type="submit" title="'.esc_attr_e('Search', 'woocommerce'). '" class="search"><span>';
$search .= ''.esc_attr_e('Search','woocommerce').'</span></button></form>';
?> 

非常感谢任何帮助

标签: phpwordpresswoocommerceescapingconcatenation

解决方案


该函数esc_attr_e() 回显(显示)已转义的翻译文本,这就是为什么您在尝试将其连接到变量时遇到问题的原因。

而是使用esc_attr__()可以毫无问题地连接的简单函数,因为它返回已转义的翻译文本。

<?php
$search = '<button type="submit" title="'.esc_attr_e('Search', 'woocommerce'). '" class="search"><span>';
$search .= ''.esc_attr__('Search','woocommerce').'</span></button></form>';
?> 

推荐阅读