当前位置: 首页 > 互联网 > 正文

wordpress设置链接在新窗口中打开

1.“查看站点”链接。
这里所说的“查看站点”链接是指:后台控制板左上角的“查看站点”链接。

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

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

&lt;a href=“&lt;?php echo trailingslashit( get_bloginfo( ‘url’ ) ); ?&gt;” title=“&lt;?php esc_attr_e(‘Visit Site’) ?&gt;” &gt;
在最后一个尖括号”&gt;”前插入[target=”_blank”](方括号内的内容)。然后保存该文件。这样,在后台打开前台首页的链接就会在新窗口打开了。

2.访客留言评论链接
(自己进行了尝试,可以在本站查看效果)。

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

第一种方法:知更鸟介绍的方法:

首页打开wp-includes文件夹,找到comment-template.php文件打开。找到以下代码:

$return = “&lt;a href=’$url’ rel=’external nofollow’ class=’url’&gt;$author&lt;/a&gt;”;
在标签中插入一句[target=”_blank”]尖括号中的内容,然后保存。这样,访客昵称所指向的链接就会在新窗口打开了。

当然,你也可以完全不让访客的昵称显示链接,就是将上面这行代码中$author前后的两个尖括号内的内容(a标签)直接删除。最后代码如下:

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

第二种方法:WP函数hook方法(这是自己用的方法)

下面说说自己设置的过程:

1.在网上首先搜索到了如下的设置方法:该方法来源于评论作者链接新窗口打开

把下面的代码扔进主题的 functions.php 里面就行了

function my_get_comment_author_link() { //by zwwooooo
$url = get_comment_author_url( $comment_ID );
$author = get_comment_author( $comment_ID );
if ( empty( $url ) || ‘http://’ == $url )
return $author;
else
return “&lt;a target=’_blank’ href=’$url’ rel=’external nofollow’ class=’url’&gt;$author&lt;/a&gt;”;
}
add_filter(‘get_comment_author_link’, ‘my_get_comment_author_link’);
自己按照该方法进行设置后,发现除了自己登陆账户时,打开页面没有问题,但是用未登录用户就无法打开网站了,分析后发现应该是自己的缓存插件quick cache的“功劳“,随即停用了quick cache,但是用未登录用户打开时,只能打开主页以及部分页面,几乎是所有的页面都无法打开。最后将quick cache删除,同时用登陆FTP,删除了里面的wp content下的cache文件夹,然后打开页面没有任何问题了。

第三种方法:修改WP源文件 wp-includes/comment-template.php 里面的 get_comment_author_link 函数

具体的方法如下

1)、打开 wp-includes/comment-template.php
2)、查找 function get_comment_author_link 找到下面这段代码:

function get_comment_author_link() {
$url = get_comment_author_url();
$author = get_comment_author();
if ( empty( $url ) || ‘http://’ == $url )
$return = $author;
else
$return = “<a class=”url” href=”$url” rel=”external nofollow”&gt;$author”;
return apply_filters(‘get_comment_author_link’, $return);

3)、在第8行中rel=”external nofollow”后面加入target=’_blank’ 结果如下

function get_comment_author_link() {
$url = get_comment_author_url();
$author = get_comment_author();
if ( empty( $url ) || ‘http://’ == $url )
$return = $author;
else
$return = “<a class=”url” href=”$url” rel=”external nofollow” target=”_blank”&gt;$author”;
return apply_filters(‘get_comment_author_link’, $return);

第四种方法:jQuery方法,具体参考评论作者链接新窗口打开

3.友情链接
友情链接在新窗口中打开的方法:

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

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

&lt;input id=“link_target_blank” type=“radio” name=“link_target” value=“_blank” &lt;?php echo ( isset( $link-&gt;link_target ) &amp;&amp; ($link-&gt;link_target == ‘_blank’) ? ‘checked=“checked”‘ : ”); ?&gt; /&gt;
然后将其改为:

&lt;input id=“link_target_blank” type=“radio” name=“link_target” value=“_blank” checked=“checked” /&gt;
这样就可以了。然后我们去添加友情链接,下面的“超链接目标”那里”_blank — 新窗口或新标签。”是不是已经被选中了?是的,以后就不要每次都去点一下了。做个懒惰的人,其实挺好。

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

4.菜单链接
针对菜单链接在新窗口中打开,具体参考WordPress菜单链接在新窗口打开的方法

5.全站链接
下面是全站链接在新窗口中打开的方法:

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

&lt;head&gt;
在其下面加上:

&lt;base target=”_blank”&gt;
自己针对第四种方法进行了尝试,存在明显的弊端,自己的文章的目录链接也是在新页中打开,每个翻页也是新窗口,我估计对于用户的体验估计也不是非常好哦。

上面就博客网站上的链接在新窗口中打开进行了总结,在此参考的资料有以下

让你的wordpress在新窗口打开链接

WordPress菜单链接在新窗口打开的方法

评论作者链接新窗口打开

本文主要针对博客站内的后台控制板左上角的“查看站点”链接、访客留言评论链接、友情链接、菜单链接、甚至于全站的所有的链接在新窗口打开的方法进行了总结,希望对大家有用。

本文链接: http://cn.xxh.me/?p=35 | river 的小宅

该日志由 admin 于2014年01月23日发表在 互联网 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
文章转载请注明: wordpress设置链接在新窗口中打开 | river 的小宅

wordpress设置链接在新窗口中打开:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter