A-A+
wordpress 为上一篇下一篇文章添加 title 属性的方法
在使用 wordpress 过程中,发现文章内容中的上一篇下一篇链接,并没有 title 属性,这对于SEO来说,不太友好,在检查了 wordpress 主题上一篇下一篇的代码后,发现其使用的是 previous_post_link 的函数,这个函数本身是不带 title 属性的,我们先来看一下 wordpress 主题是如何调用这个函数的,如下代码:
- <?php previous_post_link('%link','<<') ?> <?php next_post_link('%link','>>') ?>
解析出来之后大概就是下面这个样子了,如下所示:
- <a href="……"> …… </a> <a href="……"> …… </a>
实际就是一个简单的 a 标记链接,不附加任何属性,想要添加 title 或者 target 等属性的话,可以修改这个函数的核心代码,但是有一个缺点就是一旦 wordpress 进行更新升级的时候,如果涉及到这个文件,还要重新修改,所以夏日博客的建议是,再找可以替代的函数,不知道大家有没有接触过 get_previous_post、get_next_post 这两个函数,通过这两个函数是可以获取到上一篇下一篇的信息的,也就是说这两个函数进行简单的修改后是完全可以代替 previous_post_link 和 next_post_link 两个函数来实现增加 A 标记其它属性的。
好了,先找到 wordpress 主题中如下代码:
- <?php previous_post_link('%link','<<') ?> <?php next_post_link('%link','>>') ?>
将这一段代码替换为如下的代码:
- <?php
- $prev_post = get_previous_post();
- if (!emptyempty( $prev_post )): ?>
- <a title="<?php echo $prev_post->post_title; ?>" href="<?php echo get_permalink( $prev_post->ID ); ?>"><?php echo $prev_post->post_title; ?></a>
- <?php endif; ?>
- <?php
- $next_post = get_next_post();
- if (!emptyempty( $next_post )): ?>
- <a title="<?php echo $next_post->post_title; ?>" href="<?php echo get_permalink( $next_post->ID ); ?>"><?php echo $next_post->post_title; ?></a>
- <?php endif; ?>
仔细看上面的代码,已经在 a 标记中添加了 title 属性,如果想要链接在新窗口中打开的话,再添加一个target:"_blank" 的代码就可以了。
这个不错,我也去加一下。
有利于SEO的优化。