在使用wordpress过程中笔者发现还有一些不太完善的地方,没有充分考虑到用户体验。所以,在使用wordpress建博之初,我们有必要对wordpress进行一次小改造,让wordpress更个性、更符合SEO规范。

wordpress的链接绝大多数都是在当前窗口打开,对于站内链接还好,要是是站外链接,那么用户点击链接之后就离开你的博客了。这一点不仅仅对SEO不利,而且也不符合用户体验。我比较钟爱新窗口打开链接,这样我可以同时开着两个页面、三个页面或者更多。

wordpress中,最好在新窗口打开链接的地方有好几处。

1、后台控制板左上角的“查看站点”链接。

由于各种原因,笔者经常需要在后台和前台之间不断切换,在同一个页面中切换很麻烦,所以我把它改造了一下,让此处的查看站点链接在新窗口打开。

操作步骤:打开wp-admin文件夹,找到admin-header.php文件打开。找到以下代码:

  1. <a href=“<?php echo trailingslashit( get_bloginfo( ‘url’ ) ); ?>” title=“<?php esc_attr_e(‘Visit Site’) ?>” >

在最后一个尖括号”>”前插入[target=”_blank”](方括号内的内容)。然后保存该文件。这样,在后台打开前台首页的链接就会在新窗口打开了。

2、访客留言评论链接。

默认会将留言者的昵称加上链接(如果访客有填写网站地址),而且同样也是在同窗口跳转。笔者认为wordpress在这一点做得不是很好,当然我们可以自己修改。

首先打开wp-includes文件夹,找到comment-template.php文件打开,在大约216行找到以下代码:

  1. $return = “<a href=’$url’ rel=’external nofollow’ class=’url’>$author</a>”;

替换为:

  1. $return = “<a target=’_blank’ href=’$url’ rel=’external nofollow’ class=’url’>$author</a>”;

然后保存,这样,访客昵称所指向的链接就会在新窗口打开了。

其实,笔者认为让访客昵称带上链接更有利于吸引人气。况且,我们都看到了nofollow这个属性,就是说即使搜索引擎见到这个链接也不会追踪过去,更不会传递权重或者PR。google和百度都支持nofollow属性。

3、友情链接在新窗口打开

wordpress的友情链接在新窗口打开其实是可以的,在添加链接的时候,下面有一个选项“超链接目标”,将第一个”_blank — 新窗口或新标签。”选中就可以了。但是笔者是个懒惰的人,常常会忘记这个操作。那么有没有一劳永逸的办法呢?其实,我们通过小小的修改一下代码,还是可以实现让友情链接默认在新窗口打开的。

打开wp-admin目录下的includes文件夹,找到meta-boxes.php文件打开。找到以下代码:

  1. <input id=“link_target_blank” type=“radio” name=“link_target” value=“_blank” <?php echo ( isset( $link->link_target ) && ($link->link_target == ‘_blank’) ? ‘checked=“checked”‘ : ”); ?> />

然后将其改为:

  1. <input id=“link_target_blank” type=“radio” name=“link_target” value=“_blank” checked=“checked” />

这样就可以了。然后我们去添加友情链接,下面的“超链接目标”那里”_blank — 新窗口或新标签。”是不是已经被选中了?是的,以后就不要每次都去点一下了。做个懒惰的人,其实挺好。

经过以上几处小小的修改,那些该在新窗口打开的链接已经都实现了在新窗口打开。


补一个全站链接在新窗口或标签中打开方法:

不需要修改程序文件,只需在主题的header模版中找到

  1. <head>

在其下面加上:

  1. <base target=“_blank”>

让你的wordpress在新窗口打开链接的更多相关文章

  1. 如何用CSS实现在新窗口打开链接?

    *如何用CSS实现在新窗口打开链接? <style type="text/css"> <!-- .target2 a:active {test:expressio ...

  2. javascript新窗口打开链接window.open()被阻拦的解决办法

    场景是ajax提交,比较后端效验数据,需要用户登录,提示后并需要新窗口打开登录的链接,使用window.open(url);往往会被浏览器认为是广告而被拦截. data.url是ajax返回的链接地址 ...

  3. jquery新窗口打开链接

    第一种:下面的代码是针对m35ui这个样式下的a都是在新窗口打开    <script type="text/javascript">  jQuery(document ...

  4. router-link 返回上页 和 新窗口打开链接

    1.如果使用了Vue-router的话,就可以用 this.$router.go(-1) 实现返回: 2.如果没使用vue-router,就可以用 window.history.go(-1) 实现返回 ...

  5. 更喜欢从一而终?bing测试在新窗口打开链接遭美国网友痛批

                  原链接地址:http://www.cnbeta.com/articles/186529.htm 我们都知道在中国网站点击一个链接之后,默认在新窗口或新标签打开,大家也很熟悉 ...

  6. c#: WebBrowser 禁止在新窗口打开链接

    项目中碰到此需求.几番比对,此为最好的解决方案,聊做备忘. 1.加入Microsoft Internet Controls引用: 项目右键->添加引用->COM->Microsoft ...

  7. selenium实现在新窗口打开链接

    问题:页面代码中不存在target="_blank",怎么实现点击一个按钮,在新窗口中打开? WebElement link = element.findElement(By.ta ...

  8. 【转载】实现a元素href URL链接自动刷新或新窗口打开

    又是我偶像的新文,这个小技巧的用户体验真的非常非常棒! 文章转载自 张鑫旭-鑫空间-鑫生活 http://www.zhangxinxu.com/ 原文链接:https://www.zhangxinxu ...

  9. jQuery外链新窗口打开

    对于外链,为了留住用户在本站,我们通常会使用新窗口打开,你可以设置target="_blank".然而手动一个是麻烦,另一个则是有可能会遗漏,本文通过jQuery查询要点击的链接, ...

随机推荐

  1. java并发编程——Excutor

    概述 Excutor这个接口用的不多,但是ThreadPoolExcutor这个就用的比较多了,ThreadPoolExcutor是Excutor的一个实现.Excutor体系难点没有,大部分的关键点 ...

  2. jenkins 自动上传代码到nexus 私库

    1.jenkins 项目配置上传 2.jenkins 访问私库下载配置 -X clean install 3.maven 配置文件 /usr/local/maven/conf/settings.xml ...

  3. 搭建OpenSTF+Jenkins持续集成环境的协同开发

    最近在研究如何将OpenSTF与Jenkins进行协同开发,刚刚爬梯子看了些资料,赶紧记录下来. 转载请注明出处:https://www.cnblogs.com/v88v/p/10405338.htm ...

  4. python图像处理(1)图像的打开与保存

    使用python进行图像处理时有三种库可以使用分别是:PIL.matplotlib.pyplot.opencv(opencv未接触) 注意:matplotlib读取进来的图片是unit8,0-255范 ...

  5. HTML6的10个高级新特性

    网络技术正趋向于发展为一个巨大的移动APP市场,在Web开发的革命浪潮中起着指示性作用,自HTML引入以来,应用程序变得So easy,web开发中运用先进技术也很容易处理各种复杂Bug. 作为专业的 ...

  6. 0.3 CMD常用命令!以及用CMD显得自己高大上

    CMD是大家熟知的Windows命令提示符(cmd.exe),它是 Windows NT 下的一个用于运行 Windows 控制面板程序或某些 DOS 程序的shell程序. CMD命令快捷键是:wi ...

  7. python-模拟掷骰子,两个筛子数据可视化

    """ 作者:zxj 功能:模拟掷骰子,两个筛子数据可视化 版本:3.0 日期:19/3/24 """ import random impo ...

  8. Mac下基于testrpc和truffle的以太坊智能合约开发环境搭建

    原文地址:石匠的blog truffle是一个基于Javascript开发的一套智能合约开发框架,使用Solidity语言编写合约.truffle有一套自动的项目构建机制,集成了开发,测试和部署的各个 ...

  9. PHP 预定义变量

    1.$_SERVER <?php $a=$_SERVER; var_dump($a); ?> 2.$_FILES <?php if($_FILES){ echo "< ...

  10. 9.Hive Metastore Administration

    前言metastore参数metastore的基本参数metastore的额外参数客户端参数使用zk自动发现mestastore启动hive metastore服务 前言 本节讲metastore相关 ...