WPJAM BASIC是我爱水煮鱼开发的一款Wordpress插件,在中文wordpress里知名度很高,几乎凡是介绍Wordpress插件的文章或网站就会推荐WPJAM BASIC这个插件。因为它的功能实在是太强大、太实用了,WPJAM BASIC插件包含SMTP、百度站长、数据库优化、性能优化、用户角色、文章目录、七牛镜像、简单SEO等实用性很强的功能。可以说,用了WPJAM BASIC可以少装不少插件。
不过WPJAM BASIC有一个比较烦的地方,在安装启用后,会在Wordpress后台左侧生成一个“WP问题”的链接。“WP问题”是作者提供的一个简单的Wordpress相关的问答社区,任何有Wordpress或技术问题都可以直接点击这个链接提问(有没有人回答就另外一回事了)。
虽然这个设定的初衷是好的,可以让所有Wordpress的用户第一时间提问,但是据我使用WPJAM BASIC插件这么长时间来看,这个功能基本上用不到,不但从来没有在上面提过问,而且我也从来没有点进去查找过相关问题。除了最开始看到这个“WP问题”时好奇是什么点进去过,以及后来使用Wordpress的时候不小心点到过,我从来就没有点进过这个链接。
这个“WP问题”默认是无法删除和去掉的,而且有人在“WP问题”里提了相关的问题,问怎么才能删掉这个“WP问题”,WPJAM BASIC的开发者Denis也是直接回复说“请不要使用WPJAM的任何插件”或“请卸载WPJAM所有插件”之类。
但这个“WP问题”在左侧多占一个位置,且根本又用不到,所以我还是很希望删掉。看了一下插件的代码,删掉还是很简单的。
1、找到插件的”wpjam-basic/include/topic.php”文件,找到如下代码(大概在第83行到112行):
add_filter('wpjam_pages', 'wpjam_topic_admin_pages');
add_filter('wpjam_network_pages', 'wpjam_topic_admin_pages');
function wpjam_topic_admin_pages($wpjam_pages){
$subs = array();
$menu_title = 'WP问题';
if(wpjam_topic_get_weixin_user()){
$wpjam_topic_messages = wpjam_get_topic_messages();
if($unread_count = $wpjam_topic_messages['unread_count']){
$menu_title .= '<span class="update-plugins count-'.$unread_count.'"><span class="plugin-count">'.$unread_count.'</span></span>';
}
$subs['wpjam-topics'] = array('menu_title'=> '所有问答', 'function'=>'wpjam_topics_page', 'capability' => 'read');
$subs['wpjam-topic'] = array('menu_title'=> '我要提问', 'function'=>'wpjam_topic_edit_page','capability' => 'read');
$subs['wpjam-topic-user'] = array('menu_title'=> '个人资料', 'function'=>'wpjam_topic_user_page','capability' => 'read');
if(isset($_GET['page']) && ($_GET['page'] == 'wpjam-topic-messages')){
$subs['wpjam-topic-messages'] = array('menu_title'=> '消息提醒', 'function'=>'wpjam_topic_messages_page','capability' => 'read');
}
}
$wpjam_pages['wpjam-topics'] = array(
'menu_title' => $menu_title,
'icon' => 'dashicons-wordpress',
'subs' => $subs,
'capability' => 'read'
);
return $wpjam_pages;
}
2、将上面的所有代码注释掉或删除掉即可,上面的代码应该是将“WP问题”这个按钮添加到后台左侧导航的意思,只要将该函数删除即不会在左侧添加按钮了,也不影响插件的其他正常运行。为了插件的安全起见,我没有直接删除代码,而是选择注释。注释后的效果如下图所示:
我看到其他的Wordpress相关的论坛里,有人担心这个“WP问题”会不安全、会窃取自己网站数据的,这个可以完全放心的,作者没必要怎么干。一来WPJAM BASIC是提交到了wordpress插件官方的,如果有这些不安全的因素Wordpress也不会通过,而且七牛云的官方插件推荐里,也有WPJAM BASIC;二来看插件的代码就知道,这个“WP问题”只是通过API的方式调用作者服务器的数据而已。所以,如果是基于这种安全考虑的,就太小看我爱水煮鱼了。
另外,如果启用了WPJAM BASIC插件里面的“文章目录”功能,而刚好网站又设置了全站链接都是新窗口打开的话,那么将会导致点击文章目录的链接时也是新窗口打开,这样不利于用户体验也看着很别扭。解决办法是,在“文章目录”的设置项里,找到“JavaScript 代码”,在第二行添加如下代码:
jQuery("#toc a").attr("target","_self"); //设置不在新窗口打开。
修改后的完整代码如下:
jQuery(document).ready(function(){
jQuery("#toc a").attr("target","_self"); //设置不在新窗口打开。
jQuery('#toc span').on('click',function(){
if(jQuery('#toc span').html() == '[显示]'){
jQuery('#toc span').html('[隐藏]');
}else{
jQuery('#toc span').html('[显示]');
}
jQuery('#toc ul').toggle();
jQuery('#toc small').toggle();
});
});
这样,就算你的网站设置了全站所有链接都是新窗口打开的,点击文章目录的时候也不会采用新窗口。
感谢您的来访,获取更多精彩文章请收藏本站。

暂无评论内容