WordPress中会默认会自动转义一些字符,如将‘–’转义为‘-’破折号,以及转义为表情符号,网络上也称“转换全半角标点符号”或者“代码转义”。因为Wordpress 会智能地将源代码中的所有半角符号自动修正为全角符号,以防止外部源代码在网页上执行。这个功能所带来的麻烦就是在输入代码后,显示的不是原始代码,被人复制粘贴使用就会有问题。如果你的WordPress博客经常要分享代码的话,就需要彻底解决WordPress 中 半角全角字符转义 的问题。
创新互联网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都网站设计、网站制作,成都App定制开发以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
结合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在创建账号密码完成界面点击安装后,网页突然无法显示。刷新一下,显示已经创建成功。
登陆的时候,账号密码正确,却显示错误:无效用户名。
找回密码的时候,输入用户名显示错误:无效用户名或者电邮地址;输入邮箱显示错误:未能通过电子邮件地址找到用户。
网站可以正常访问!
因为常有人问我同样的问题,每次都要我重复一遍,觉得很麻烦。
在我的百度空间里有答案。望采纳。不明白的可以问我QQ。
另外我的博客里面也有,百度搜下易趣百科,网址equ8后缀是net的就是我的博客。在电脑网络分类下面有。
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
我以前也遇到了这个种问题 纠结了好长时间搞不好,最后找到了一种不用插件实现分页的功能
具体实现方法:
首先将下面一段函数代码添加到主题的functions.php模板文件中:
function pagination($query_string){
global $posts_per_page, $paged;
$my_query = new WP_Query($query_string ."posts_per_page=-1");
$total_posts = $my_query-post_count;
if(empty($paged))$paged = 1;
$prev = $paged – 1;
$next = $paged + 1;
$range = 2; // only edit this if you want to show more page-links
$showitems = ($range * 2)+1;
$pages = ceil($total_posts/$posts_per_page);
if(1 != $pages){
echo "div class='pagination'";
echo ($paged 2 $paged+$range+1 $pages $showitems $pages)? "a href='".get_pagenum_link(1)."'最前/a":"";
echo ($paged 1 $showitems $pages)? "a href='".get_pagenum_link($prev)."'上一页/a":"";
for ($i=1; $i = $pages; $i++){
if (1 != $pages ( !($i = $paged+$range+1 || $i = $paged-$range-1) || $pages = $showitems )){
echo ($paged == $i)? "span class='current'".$i."/span":"a href='".get_pagenum_link($i)."' class='inactive' ".$i."/a";
}
}
echo ($paged $pages $showitems $pages) ? "a href='".get_pagenum_link($next)."'下一页/a" :"";
echo ($paged $pages-1 $paged+$range-1 $pages $showitems $pages) ? "a href='".get_pagenum_link($pages)."'最后/a":"";
echo "/div\n";
}
}
接下来用下面的代码替换原来模板中默认翻页代码或分页插件代码:
?php pagination($query_string); ?
最后再把下面的样式代码添加到style.css中,刷新一下页面,与使用插件实现的翻页效果一样。
.pagination{
line-height:23px;
}
.pagination span, .pagination a{
font-size:12px;
margin: 2px 6px 2px 0;
background:#fff;
border:1px solid #e5e5e5;
color:#787878;
padding:2px 5px 2px 5px;
text-decoration:none;
}
.pagination a:hover{
background: #8391A7;
border:1px solid #fff;
color:#fff;
}
.pagination .current{
background: #fff;
border:1px solid #8d8d8d;
color:#393939;
font-size:12px;
padding:2px 5px 2px 5px;
}
有不明白的给我留言