好吧,我又遇到了一个我似乎无法解决的问题。我搜索了又搜索,找到了答案,但我似乎无法让它发挥作用。
我有一个名为WP Forge的主题,它广泛使用主题定制器。用户可用的选项之一是在页脚中添加或修改版权文本。这可能很简单,比如他们更改年份或公司名称,但人们通常喜欢添加网站链接。我不断收到关于html没有按应有方式输出的电子邮件。所以我想弄清楚这一点。
在WP Forge的主题定制器中,我有以下设置和控制:
$wp_customize->add_setting(\'wpforge_footer_text\',array(/* footer text */
\'default\' => \'\',
\'type\' => \'theme_mod\',
\'transport\' => \'postMessage\',
\'sanitize_callback\' => \'wpforge_sanitize_text\',
\'priority\' => 20,
));
$wp_customize->add_control(\'wpforge_footer_text\',array(
\'label\' => __(\'Footer Text\',\'wp-forge\'),
\'section\' => \'footer_content\',
\'type\' => \'textarea\',
));
正如您所看到的,清理回调是
wpforge_sanitize_text
. 以下是清理功能:
function wpforge_sanitize_text( $input ) {
return wp_kses_post( force_balance_tags( $input ) );
}
如果您只需输入文本,它就可以正常工作。但是,如果我添加以下内容:
Copyright © 2015 - <a href="http://somelinkhere.com">SomeLinkHere</a>
我在预览窗口中看到:
Copyright © 2015 - SomeLinkHere
一切看起来都很好,所以我点击“保存并发布”,然后查看主页,我看到以下内容:
Copyright © 2015 - <a href="http://somelinkhere.com">SomeLinkHere</a>
那么我到底错过了什么呢?有人能帮我按我想要的方式工作吗?非常感谢您的帮助,我提前向您表示感谢。