主机优惠
信息分享

wordpress自动为文章内的标签添加内链与文章图片自动添加alt和title属性

wordpress是个不错的建站程序,不管是企业还是个人使用者还是非常多的,特别是博客建站方面可以说是用户群体很大。对于有一些SEO优化方面可能需要自行操作,比如文章图片自动添加alt和title属性,又比如自动为文章的标签添加内链等。当然有不少wordpress主题集成了这样的一些功能,也有不少的wordpress主题并没有添加,不过这些都可以自己添加上去,具体的操作方法也比较简单,只需要把代码复制到主题函数functions.php文件当中,功能就可以实现了。

1、将下面代码添加到functions.php文件中即可实现文章图片自动添加alt和title属性:

//文章图片自动添加alt和title属性
function image_alt_tag($content){
    global $post;preg_match_all('/<img (.*?)\/>/', $content, $images);
    if(!is_null($images)) {foreach($images[1] as $index => $value)
    {$new_img = str_replace('<img', '<img alt="'.get_the_title().'-'.get_bloginfo('name').'" title="'.get_the_title().'-'.get_bloginfo('name').'"', $images[0][$index]);
    $content = str_replace($images[0][$index], $new_img, $content);}}
    return $content;
}
add_filter('the_content', 'image_alt_tag', 99999);

2、降下面的代码添加带主题的functions.php文件中可以实现自动为文章的标签添加内链:

/* 自动为文章内的标签添加内链开始 */
$match_num_from = 1; //一篇文章中同一个标签少于几次不自动链接
$match_num_to = 1; //一篇文章中同一个标签最多自动链接几次
function tag_sort($a, $b){
 if ( $a->name == $b->name ) return 0;
 return ( strlen($a->name) > strlen($b->name) ) ? -1 : 1;
}
function tag_link($content){
 global $match_num_from,$match_num_to;
 $posttags = get_the_tags();
 if ($posttags) {
 usort($posttags, "tag_sort");
 foreach($posttags as $tag) {
 $link = get_tag_link($tag->term_id);
 $keyword = $tag->name;
 $cleankeyword = stripslashes($keyword);
 $url = "<a href=\"$link\" title=\"".str_replace('%s',addcslashes($cleankeyword, '$'),__('【查看含有[%s]标签的文章】'))."\"";
 $url .= ' target="_blank"';
 $url .= ">".addcslashes($cleankeyword, '$')."</a>";
 $limit = rand($match_num_from,$match_num_to);
 $content = preg_replace( '|(<a[^>]+>)(.*)('.$ex_word.')(.*)(</a[^>]*>)|U'.$case, '$1$2%&&&&&%$4$5', $content);
 $content = preg_replace( '|(<img)(.*?)('.$ex_word.')(.*?)(>)|U'.$case, '$1$2%&&&&&%$4$5', $content);
 $cleankeyword = preg_quote($cleankeyword,'\'');
 $regEx = '\'(?!((<.*?)|(<a.*?)))('. $cleankeyword . ')(?!(([^<>]*?)>)|([^>]*?</a>))\'s' . $case;
 $content = preg_replace($regEx,$url,$content,$limit);
 $content = str_replace( '%&&&&&%', stripslashes($ex_word), $content);
 }
 }
 return $content;
}
add_filter('the_content','tag_link',1);
/* 自动为文章内的标签添加内链结束 */

说明:以上代码来源于网络,具体原创未知;另外在添加的时候请一定要备份一下原文件,以防万一需求!另外代码可能对有部分主题无效或者出现错误,所以无法保证所有主题通用!

赞(0)
欢迎转载:VPS推荐网 » wordpress自动为文章内的标签添加内链与文章图片自动添加alt和title属性