建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

WordPress标题关键词和描述完美SEO优化(wordpress后台为什么会出现乱码?)

GG网络技术分享 2025-03-18 16:14 0


WordPress标题关键词和描述完美SEO优化

在谈到WordPress优化时,每个人都不禁提到标题关键字和描述的优化,尽管搜索引擎现在说元关键字和元描述不再像过去那样重要。但我们仍然相信它们在搜索引擎排名中的重要性。曾经很受欢迎的插件之一All in one SEO pack可以完成这些SEO优化,但是这个插件的一些博主表明百度的搜索引擎不是很友好并占用资源。实际上,我们可以使用这个插件。原理,我用代码实现SEO优化,这样可以减少使用更多的插件,为我们的Wordoress减肥;并且可以实现我们的优化目的。好的,让我们看看代码并将以下代码添加到主题的head标签中以替换原始主题:

<?php if (is_home()){

$keywords = \"指点聚,wordpress主题,wordpress主题开发,wordpress实用教程,运营干货,PHP源码\";

$description = \"指点聚,你要的我不一定有,但是我有的一定是干货 - https://www.tinggezhao.com\";

} elseif (is_single()){

if ($post->post_excerpt) {

$description = $post->post_excerpt;

} else {

$str = csubstr(strip_tags($post->post_content),0,220);

$str = trim($str);

$str = strip_tags($str,\"\");

$str = ereg_replace(\"\\t\",\"\",$str);

$str = ereg_replace(\"\\r\\n\",\"\",$str);

$str = ereg_replace(\"\\r\",\"\",$str);

$str = ereg_replace(\"\\n\",\"\",$str);

$str = ereg_replace(\" \",\" \",$str);

$description = trim($str);

}

$keywords = \"\";

$tags = wp_get_post_tags($post->ID);

foreach ($tags as $tag ) {

$keywords = $keywords . $tag->name . \", \";

}

}

?>

<meta name=\"keywords\" content=\"<?=$keywords?>\" />

<meta name=\"description\" content=\"<?=$description?>\" />

<title><?php

global $page, $paged;

wp_title( \'|\', true, \'right\' );

bloginfo( \'name\' );

$site_description = get_bloginfo( \'description\', \'display\' );

if ( $site_description && ( is_home() || is_front_page() ) )

echo \" | $site_description\";

if ( $paged >= 2 || $page >= 2 )

echo \' | \' . sprintf( __( \'Page %s\' ), max( $paged, $page ) );

?></title>

注意:当截获文章内容以进行描述时,将自动删除所有空格和换行符。

添加后,刷在前台看效果,是不是已经出来了。嘿……不要开心,你需要实现meta部分的完美优化,你必须迈出一步。让我们仔细看看这部分的元描述。您可以阅读更多文章,您会发现其中一个问题:当编码为UTF-8时,描述的截取有时会在最后变为乱码。为什么是这样?因为当拦截文章内容时描述是基于字符(默认设置是220),我们都知道Wordpress模板的字符集是UTF-8,它是一个字母和一个字节,用于英文(8位) )。 )编码,而中文是一个汉字三个字节(24位)进行编码。因此截断的函数只会判断要剪切的字节数。如果汉字仅显示该位置的三分之一或三分之二,则汉字无法完全显示,并且该功能不能智能。如果你有一个以上的字节或少一个字节怎么办?然后就是乱码。因此,我们需要用处理替换截断的函数。

将:添加到主题的模板函数(functions.php)

// 解决utf8截取乱码问题

function csubstr($string, $beginIndex, $length){

if(strlen($string) < $length){

return substr($string, $beginIndex);

}

$char = ord($string[$beginIndex + $length - 1]);

if($char >= 224 && $char <= 239){

$str = substr($string, $beginIndex, $length - 1);

return $str;

}

$char = ord($string[$beginIndex + $length - 2]);

if($char >= 224 && $char <= 239){

$str = substr($string, $beginIndex, $length - 2);

return $str;

}

return substr($string, $beginIndex, $length);

}

到这里已经完美解决,本文所用的方法是从网上收集整理出来的,希望对各位有用。本人入门尚浅,如有不正确之处,望请高手纠正,欢迎(轻点)拍砖。

wordpress后台为什么会出现乱码?

wordpress后台为什么会出现乱码? 为网站新装了一个主题,本以为很不错的,一切正常,但就一进后台,问题就出现了。打开后台,就会在后台的顶部出现下面这些代码:

Warning: Cannot modify header information - headers already sent by (output started at /home/ssmaycom/domains/ssmay.com/public_html/wp-content/themes/Hcms/functions.php:568) in /home/ssmaycom/domains/ssmay.com/public_html/wp-includes/functions.php on line 862

我也不知是什么意思,肯定是出问题了呗。因为用WP自带的主题就不会出现这些代码。经过我仔细地琢磨,用DEAMWEAVER软件对主题里的FUNCTIONS.PHP文件进行一次检查,终于让我发现了问题之所在,原来这个文件的结尾出现了好几个空格。我把空格给去掉了,保存后,再上传网站,问题就解决了。只要让结尾再出现几个空格,问题马上就又会出现。

综上总结:有些虚拟主机可能对PHP文件要求比较严格(因为我在本地就不会出现这个问题,还有另外一个网站也没有出现这个问题),文件不能出现多余的空格,否则就会出现类似情况。通过这一件事,又让我学到了一点。

标签:

提交需求或反馈

Demand feedback