wordpress3.7 改造成适合国人的博客程序---修改PHP源代码

wordpress3.5以上已经达到了不用插件不适合用的臃肿的PHP博客程序了。与此同时,百度又出插件讨好wordpress,加之国内的博客程序经营不下去了,一个接一个的关门了。而国内的PHP开源程序各自为政,都觉得自已很牛X,模板又是一套标签写法,如DZ,DEDE,PHPCMS,ECMS等等各不相同,提高了外人开发模板的门槛,加之本身的官方免费模板不多。程序员到30岁很难继续程序工作,于是玩转各个CMS的人越来越少。汗,不说了,先暂时用WP吧,改下,使之成为能适合国人的程序吧。


为什么要花大力气修改wordpress呢?想必你也知道,插件越多,运行速度越慢。
现在的wordpress已经成为No Plugins No WordPress!

而且发现WP是面向代码,不像国产程序面向用户(虽然有漏洞,虽然有后门,但毕竟适合国人习惯呐)。它们的出发点不同。用WP的人多,可能是因为WP出现较早,且佣有海量的模板和插件,使用方便。但真心笨重呀。能不用插件搞定的坚决不用插件。



1、禁止HTML评论
      /wp-includes/kses.php文件, 找到 $allowedposttags 将要屏蔽的标签注释掉或者删掉。例如:a标签对应的就是a数组:

a' => array(
'href' => true,
'rel' => true,
'rev' => true,
'name' => true,
'target' => true,
),

     删掉或者注释掉,评论中就不会出现链接了。

 

2、删除评论表单里带有的<a>等这类的标签提示:
      /wp-includes/comment-template.php文件,函数comment_form约1978行'comment_notes_after' 这句,注释掉或者删掉。

     经过上面两步,WP评论已经无法发超链接了。
      

3、并不是每个人都会把文章摘要填写,所以需要截取

if(!is_single()) { 
the_excerpt(); 
} else { 
the_content(__('(more…)'));
}



4、防止垃圾评论(/wp-comments-post.php约92行):用正则去掉纯英文、日文、俄文等非中文语言
      PS:似乎我测试的无效,不知道为啥网上疯狂的乱转载。还是用插件吧,简单些。

$pattern = '/[一-龥]/u';
if(!preg_match($pattern, $comment_content)) {
    wp_die( "You should type some Chinese word (like \"你好\") in your comment to pass the spam-check, thanks for your patience! 您的评论中必须包含汉字!" );
}

// If the user is logged in

其它语言扩展:

//禁止全英文和日文评论
$pattern = '/[一-龥]/u';
$pattern = '/[一-龥]/u';
$jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u';
if(!preg_match($pattern, $incoming_comment['comment_content'])) {
    wp_die( "写点汉字吧,博主外语很捉急! Please write some chinese words!" );
}
if(preg_match($jpattern, $incoming_comment['comment_content'])){
    wp_die( "日文滚粗!Japanese Get out!日本語出て行け!" );
}
//禁止真主阿拉留言(阿拉伯语,部分)
$arattern ='/[؟-ض]+|[ط-ل]+|[م-م]+/u';
if(preg_match($arattern, $incoming_comment['comment_content'])){
    wp_die( "不要用阿拉伯语!Please do not use Arabic!!من فضلك لا تستخدم اللغة العربية" );
}
//禁止朝鲜半岛幸福人民留言(朝鲜语/韩语)
$krattern ='/[갂-줎]+|[줐-쥯]+|[쥱-짛]+|[짞-쪧]+|[쪨-쬊]+|[쬋-쭬]+|[쵡-힝]+/u';
if(preg_match($krattern, $incoming_comment['comment_content'])){
    wp_die( "不要用韩语/朝鲜语思密达!Please do not use Korean!하시기 바랍니다 한국 / 한국어 사용하지 마십시오!" );
}
//禁止人妖部落留言(泰语)
$thattern ='/[ก-๛]+/u';
if(preg_match($thattern, $incoming_comment['comment_content'])){
    wp_die( "人妖你好,人妖再见!Please do not use Thai!กรุณาอย่าใช้ภาษาไทย!" );
}
//禁止北方野蛮人留言(俄语)
$ruattern ='/[А-я]+/u';
if(preg_match($ruattern, $incoming_comment['comment_content'])){
    wp_die( "北方野人讲的话我们不欢迎!Russians, get away!Savage выйти из Русского Севера!" );
}

// If the user is logged in


5、前台“功能”去掉wordpress.org链接
       /wp-includes/default-widgets.php约318行到<?php wp_meta();?>前面这一段。

6、让wordpress佣有友情链接

       在“外观”-“编辑”-"functions.php"里最后面加上:

//友情链接
add_filter('pre_option_link_manager_enabled','__return_true'); 

 后,左侧菜单栏会显示出“链接”。
注:必须在“链接”里添加“分类目录”:友情链接,在前台才会显示友情链接字样,否则还是会显示“链接”
 

//首页调用方法:

<?php wp_reset_query(); if ( is_home()) { ?>

<?php wp_list_bookmarks(); ?>

<?php } ?>

//只在首页显示友情链接


7、禁止wordpress触目惊心的版本提示和自动更新

  •  /wp-config.php里加入:

//禁止自动更新
define('WP_AUTO_UPDATE_CORE',false);
define('AUTOMATIC_UPDATER_DISABLED', true );

  •  /wp-admin/includes/update.php约219行:注释掉,如下

               //add_action( 'admin_notices', 'update_nag', 3 );
               //add_action( 'network_admin_notices', 'update_nag', 3 );

  • /wp-includes/class-wp-admin-bar.php约488行:注释掉,如下

              //add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 40 );

  • /wp-admin/menu.php约43行:注释掉,如下:

             //$submenu[ 'index.php' ][10] = array( sprintf( __('Updates %s'), "<span class='update-plugins count-{$update_data['counts']['total']}' title='{$update_data['title']}'><span class='update-count'>" . number_format_i18n($update_data['counts']['total']) . "</span></span>" ), $cap, 'update-core.php');

  • /wp-admin/admin-footer.php约49行:注释掉,如下:

             //echo apply_filters( 'update_footer', '' );



 至此,后台不会再有版本更新的提示。后台速度也会快一点点。为啥官方不用ajax去检查版本的升级呢,非要用PHP去请求,造成阻塞。是官方不懂ajax技术还是高手都走了。


8、上传中文文件名乱码
       暂时不要有这个想法了,WP是一个烂东西。

9、添加文章时,后台的顶部导航条,真是烦人,鼠标一移上去,就出现下拉菜单。不爽,直接你。

wordpress\wp-includes\class-wp-admin-bar.php

约485行处,注释下面:

//add_action( 'admin_bar_menu', 'wp_admin_bar_wp_menu', 10 );
//add_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 );
//add_action( 'admin_bar_menu', 'wp_admin_bar_site_menu', 30 );
//add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 40 );

//add_action( 'admin_bar_menu', 'wp_admin_bar_new_content_menu', 70 );

现在OK了,后台又会更简洁一点。用着这个WP,感觉真是折腾呀。

 

300*300
 文章首页关于迷茫时代关于我写意人生
版权所有:迷茫时代 All rights reserved   
执行时间:0.00690 秒