十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
esc_html()(转义
企业建站必须是能够以充分展现企业形象为主要目的,是企业文化与产品对外扩展宣传的重要窗口,一个合格的网站不仅仅能为公司带来巨大的互联网上的收集和信息发布平台,成都创新互联面向各种领域:茶楼设计等成都网站设计、全网营销推广解决方案、网站设计等建站排名服务。
Html)
esc_html()
函数用来转义
Html
代码,让
Html
代码不转义。
用法
esc_html(
$text
);
参数
$text
(字符串)(必须)要转义的字符串。
默认值:None
返回值
(字符串)返回转义后的字符。
例子
echo
esc_html(
'a
href=""A
link/a'
);
上边的代码将输出:
WordPress
函数:esc_html()(转义
Html)
(为了防止浏览器转码,我直接截了一张图)
更多
此函数位于:wp-includes/formatting.php
esc_url()(过滤链接)
很多
URL
会有一些小错误,用
esc_url()
函数可以屏蔽或者修正这些错误,并且可以拒绝不安全的协议。
esc_url()
函数的工作内容:
默认拒绝不是下面协议的
URL:defaulting
to
http、https、ftp、ftps、mailto、news、irc、gopher、nntp、feed
和
telnet
删除无效字符和危险的字符
将字符转换成
HTML
实体字符
使用方法
esc_url(
$url,
$protocols,
$_context
);
参数
$url
(字符串)(必须)要被过滤的
URL.
默认值:None
$protocols
(数组)(可选)可以接收协议的数组,如果没有设置,则默认为:defaulting
to
http、https、ftp、ftps、mailto、news、irc、gopher、nntp、feed
和
telnet.
默认值:None
$_context
(字符串)(可选)如何返回
URL.
默认值:(字符串)display
返回值
(字符串)返回过滤后的链接。
例子
?php
echo
esc_url(
''
);//输出:
?
更多
此函数位于:wp-includes/formatting.php
WordPress中会默认会自动转义一些字符,如将‘–’转义为‘-’破折号,以及转义为表情符号,网络上也称“转换全半角标点符号”或者“代码转义”。因为Wordpress 会智能地将源代码中的所有半角符号自动修正为全角符号,以防止外部源代码在网页上执行。这个功能所带来的麻烦就是在输入代码后,显示的不是原始代码,被人复制粘贴使用就会有问题。如果你的WordPress博客经常要分享代码的话,就需要彻底解决WordPress 中 半角全角字符转义 的问题。
结合Jeff的使用经验,结合网络上相关代码,以下给出终极攻略:
移除wptexturize()函数
WordPress作怪的函数就是wptexturize(),点这里查看WordPress官方说明。既然如此,那就移除它。将下面的代码加入主题的funtions.php文件的最后一个 ? 中:
//取消内容转义
remove_filter('the_content', 'wptexturize');
//取消摘要转义
remove_filter('the_excerpt', 'wptexturize');
//取消评论转义
remove_filter('comment_text', 'wptexturize');
删除WordPress程序文件中相关代码
修改 wp-includes/formatting.php 文件,把实现自动替换的相关语句注释掉。找到:
// static strings
$curl = str_replace($static_characters, $static_replacements, $curl);
// regular expressions
$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
将$curl 开头的两句代码注释掉,即改为:
// static strings
//$curl = str_replace($static_characters, $static_replacements, $curl);
// regular expressions
//$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
这个方法可选,因为每次升级WordPress 程序后,都需手动修改一下文件。也可以安装 Quotmarks Replacer 插件实现同样的效果。
更改编辑器默认视图为HTML/文本
WordPress默认的是,在后台新建文章后,编辑器就自动跳转到“可视化”视图。如果我们更改编辑器默认视图为HTML/文本,就不会因为要切换模式而导致代码转义了。
将以下代码添加到主题的functions.php文件里即可实现:
add_filter('wp_default_editor', create_function('', 'return "html";'));
wordpress的页面内容是转义之后存入数据库保存的,当请求页面时,将数据库中代码以字符串形式输出到页面,所以,没办法通过在页面内写javascript和PHP代码来运行。如果非要这么做,只能修改WordPress源码,这个就仁者见仁智者见智了
推荐答案 完全是在胡扯,跟WordPress完全不搭调!
WordPress的文章编辑框右上角可以切换编辑模式,一个是”可视化“ , 一个是”HTML“
你在可视化下填的HTML代码,WordPress会自动转义的,可以正常显示出来!
你可以试试在可视化模式下输入以下HTML代码:
a href="#"123/a
切换到HTML模式,你将会看到:
a href="#"123/a
这样WordPress是可以显示你的代码的!