其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

WordPress新手必看的SEO优化技巧(一):主题代码优化篇

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


大家好,这里是关于[WordPress子主题创建使用教程],[WordPress新手必看的SEO优化技巧(一):主题代码优化篇]问题的解答,希望对您有所帮助。如果你还想了解更多这方面的信息,请关注本站其他相关内容,共同学习吧!

WordPress子主题创建使用教程

教程大全wordpress,子主题

WordPress子主题官方就有个很详细的教程。

https://codex.wordpress.org/zh-cn:%E5%AD%90%E4%B8%BB%E9%A2%98

这里就讲一下本站实际使用时侯的操作步骤例子吧。

子主题的作用

很多时候我们需要修改主题的一些style.css之类的文件,或者在functions.php文件加一些功能代码。我们修改后,如果后期主题更新会将我们修改的文件同时更新掉。

子主题的功能就是能够保持主题正常更新的情况下,保留我们修改的功能可以正常使用。

教程示例

以本站当前主题为例。

修改了:默认文章页面内容宽度、默认文章标题字体大小、底部footer距离文章主体内容的距离。

添加了:评论移除网址表单、百度快速收录 API 提交代码

这些修改在主题的style.cc和functions.php文件中。下面我就开始创建一个子主题。

原主题名字:Twenty Twenty-One
原主题目录名:twentytwentyone

子主题名字:Twenty Twenty-One Child
子主题目录名:twentytwentyone-child

创建子主题目录

我们需要先在WordPress的主题目录wp-content/themes内创建一个子主题的目录。该目录名设为twentytwentyone-child这样比较容易区分原主题和子主题目录关系。你给子主题目录改成其他的也没关系。

子主题必须包含一些文件:

style.css (必需)

functions.php (可选)

Template files (可选)

Other files (可选)

这里我们只需要在子主题目录里创建style.css和functions.php这两个即可。

创建子主题style.css文件

子主题的style.css有着固定的要求。必须包含以下头部信息:

/*

Theme Name: 子主题名字(随便写)

Theme URI: 子主题URL(随便写)

Description: 子主题的描述(随便写)

Author: 主题作者名字(随便写)

Author URI: 主题作者URL(随便写)

Template: 原主题目录名(必须准确)

Version: 版本(随便写)

*/

本站子主题的头部文件代码如下:

/*

Theme Name: Twenty Twenty-One Child

Theme URI: http: //example.com/

Description: Child theme for the Twenty Twenty-One theme

Author: Cheshirex

Author URI: http: //www.cheshirex.com

Template: twentytwentyone

Version: 0.1.0

*/

然后将我在原主题修改的代码复制进去。复制后整个文件内的代码如下:

/*

Theme Name: Twenty Twenty-One Child

Theme URI: https://www.cheshirex.com

Description: Child theme for the Twenty Twenty-One theme

Author: Cheshirex

Author URI: http: //www.cheshirex.com

Template: twentytwentyone

Version: 0.1.0

*/

:root {

/* Spacing */

--global--spacing-unit: 20px;

--global--spacing-measure: unset;

--global--spacing-horizontal: 25px;

--global--spacing-vertical: 30px;

/* Font Size */

--global--font-size-base: 1.25rem;

--global--font-size-xs: 1rem;

--global--font-size-sm: 1.125rem;

--global--font-size-md: 1.25rem;

--global--font-size-lg: 1.5rem;

--global--font-size-xl: 2.25rem;

--global--font-size-xxl: 4rem;

--global--font-size-xxxl: 5rem;

--global--font-size-page-title: var(--global--font-size-xxl);

--global--letter-spacing: normal;

}

@import url(\"../twentytwentyone/style.css\");

.widget-area {

margin-top: calc(1 * var(--global--spacing-vertical));

padding-bottom: calc(var(--global--spacing-vertical) / 3);

color: var(--footer--color-text);

font-size: var(--footer--font-size);

font-family: var(--footer--font-family);

}

@media only screen and (min-width: 482px) {

:root {

--responsive--aligndefault-width: min(calc(100vw - 4 * var(--global--spacing-horizontal)), 1000px);

--responsive--alignwide-width: calc(100vw - 4 * var(--global--spacing-horizontal));

--responsive--alignright-margin: calc(0.5 * (100vw - var(--responsive--aligndefault-width)));

--responsive--alignleft-margin: calc(0.5 * (100vw - var(--responsive--aligndefault-width)));

}

}

@media only screen and (min-width: 822px) {

:root {

--responsive--aligndefault-width: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 1000px);

--responsive--alignwide-width: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 1240px);

}

}

@media only screen and (min-width: 652px) {

:root {

--global--font-size-xl: 2.5rem;

--global--font-size-xxl: 3.5rem;

--global--font-size-xxxl: 9rem;

--heading--font-size-h3: 2rem;

--heading--font-size-h2: 3rem;

}

}

:root .is-huge-text,

:root .has-huge-font-size {

font-size: var(--global--font-size-xxl);

line-height: var(--global--line-height-heading);

font-weight: var(--heading--font-weight-page-title);

}

修改完成后保存这个文件就可以了。

建子主题functions.php文件

functions.php文件比较简单,我们只需要在文件内加上php起始标签,然后标签内放入我们添加的代码即可。

本站代码示例:

<?php

// 移除网址表单

function url_filtered($fields) {

if(isset($fields[\'url\']))

unset($fields[\'url\']);

return $fields;

}

add_filter(\'comment_form_default_fields\', \'url_filtered\');

/* WordPress 百度快速收录 API 提交代码 */

if(!function_exists(\'Baidu_Submit\')){

function Baidu_Submit($post_ID) {

$WEB_TOKEN = \'隐藏内容\'; //这里请换成你的网站的百度主动推送的token值

$WEB_DOMAIN = get_option(\'home\');

//已成功推送的文章不再推送

if(get_post_meta($post_ID,\'Baidusubmit\',true) == 1) return;

$url = get_permalink($post_ID);

$api = \'http://data.zz.baidu.com/urls?site=\'.$WEB_DOMAIN.\'&token=\'.$WEB_TOKEN;

$request = new WP_Http;

$result = $request->request( $api , array( \'method\' => \'POST\', \'body\' => $url , \'headers\' => \'Content-Type: text/plain\') );

$result = json_decode($result[\'body\'],true);

//如果推送成功则在文章新增自定义栏目Baidusubmit,值为1

if (array_key_exists(\'success\',$result)) {

add_post_meta($post_ID, \'Baidusubmit\', 1, true);

}

}

add_action(\'publish_post\', \'Baidu_Submit\', 0);

}

?>

注意事项:

style.css

子主题的style.css文件内代码和原主题是覆盖关系。一段代码我们修改后放入子主题,在我们访问网页时它会自动重写原主题style.css文件代码。

functions.php

如果你在原主题内添加了一段代码,然后创建子主题后直接将这段代码剪切到子主题文件内。不要再原主题继续保留代码。否则可能会报错。

这里子主题代码和原主题仅是子主题代码执行优先,原主题的代码会在子主题之后继续执行。子主题在父主题文件加载之前先载入。


以上操作都完成后目录是这样子:

关于子主题的更多信息,请查看本文开头的官方教程链接。

WordPress新手必看的SEO优化技巧(一):主题代码优化篇

虽然wordpress的免费主题在网络上已经有成千上万个了,但是在我看来,很多主题都是不符合SEO优化的。

这些主题不但不美观,而且大部分充斥着作者的暗链、广告,其实对站长们的伤害很大,为了帮助同学们更好的使用wordpress进行自己网站的优化,我决定出一个wordpress系列的教程,给大家做个参考,第一篇我们讲讲wordpress主题代码的优化。

WordPress主题代码优化

wordpress代码优化的核心在于:代码能少则少,以提高网站加载速度为核心目的!优化你的代码,如果你的网站是放在虚拟空间,不要让你的网站加载时间超过5秒以上;如果是放在VPS中,不要让你的网站加载时间超过3秒以上。

为什么我这样说呢?那是因为百度对网站的打开速度有硬性的审核标准,甚至在百度站长工具中还特地推出了页面优化建议工具。这意味着百度是希望站长优化自己网站的打开速度的。如果你的网站打开速度慢则很有可能被降权。

那怎么做主题代码优化呢?

请大家不要着急,我接下来给大家一个重要的解决方案:将我们的主题代码优化到最精简。其最重要的是优化table嵌套、header优化、js和css的合并分离优化。

1、 避免table嵌套:我看了很多的wordpress免费主题,为了简单,采用大量的table嵌套,而浏览器在加载table的时候,是需要将程序完全加载才能渲染出来的,有一些主题甚至缺少table的关闭标签,导致浏览器无法正常渲染而卡在table标签处。做网站,应该尽量少用table标签,采用div+css的方式来绘制表格可以更好的提高网站打开速度。

2、 header优化:大家可以查看一下自己网站的header标签,是否有一大堆不知道什么用的meta标签?如下图所示(某使用wordpress默认模版的网站):

一大堆乱七八糟的链接和注释,甚至引用了其他网站的文件,众所周知,只要你的代码中引用了文件,那么浏览器就会去加载完这些文件才会继续执行之后的代码,如果其他网站的文件丢失了,那么浏览器将会花大量时间等待这个文件响应,而这些都是会增加网站打开时间的。而我的网站则通过精简,只保留搜索引擎需要的meta信息和必要的文件链接,从而使得header更加简洁和高效,如下图:

3、 js和css的合并分离优化:很多网站的所有js和css代码,都是写在一个文件里面的,这样虽然方便了管理,但是会导致页面加载的时候,需要加载很多不必要的代码,导致时间加长。

而我的解决方法就是将每个页面都需要的js和css分别放置在一个文件内,而其他每个页面特有的js和css,则自己独立创建文件,针对性的引用。比如共同的css都放在style.css中,首页才有的css就写在style-home.css中,只有在首页才引用,其他页面则不引用,这样就可以大大提高网站的加载速度了。

没有多余的代码,自然加载速度可以优化到最快。

标签:

提交需求或反馈

Demand feedback