创建子主题的需求可能有很多方面,但对于我来说只有一个,主题他会经常更新而我在主题代码里面做了几个更改,它一更新我就得重新来过,好麻烦。
以前碰到过这样的问题,所以知道了子主题这么个东西。但一个是需求不是很强烈,一个是操作比较复杂,遂放弃之。
需求不是很强烈,因为以前用的是阿里云的轻量应用服务器,当WordPress更新、主题有更新的时候会通知我,需要我手动更新,我很少会去更新它,即使更新了也会提前将我修改过的部分代码临时拷贝出来放在TXT文本里面,马上就可以直接用到。所以,要么就懒得更新,要么就是有准备的更新。
操作比较复杂,因为以前折腾过,网上找过资料,创建过子主题,没成功,直接就弃了,太麻烦了。
前段时间某一天晚上,准备发布一篇文字,后台打开编辑页面,嗯,块编辑器?什么鬼,以前的设置失效了吗?登录网站前端,有一种一朝回到解放前的感觉,所有修改都失效了,好丑!
想了想,我没有点任何更新,主题还是以前的主题,唯一改变的是空间商变了,那么很有可能是老薛主机支持自动更新,我一点准备都没有,蛋碎了一地啊。
发个狠心,干脆做个子主题吧。
第一步,网站备份。(极其重要)
第二步,网上找攻略资料,有点多有点杂有点过头。
第三步,进入老薛主机后台的文件管理器,以前用服务器的时候阿里云控制台是没有这个的,当时是使用的一个插件,好像也叫文件管理器,很方便。攻略是说在父主题同目录下新建个子主题文件夹,名称随便起,但是一般为了方便区分会直接用父主题的名字再加上-child。
第四步,在新文件夹中新建一个子主题唯一必要的文件style.css,啥新建啊,直接从父主题下载这个文件到电脑桌面,notepad++打开,清空内容,粘贴网上拷贝过来的头部信息代码和一行导入代码,然后删除头部信息代码里面不必要也不想要的信息,头部必要的两条信息是theme name和template,保存,上传。搞定,刷新一下WordPress主题页,出来一个没有背景图像的新主题。
1 2 3 4 5 6 7 8 9 10 11 | /* Theme Name: Twenty Twelve Child Theme URI: Description: Child theme for the Twenty Twelve theme Author: Author URI: Template: twentytwelve Version: 0.1 */ @import url("../twentytwelve/style.css"); |
第五步,创建非必要文件。修改首页只显示文章摘要需要用到content.php,修改页脚需要用到footer.php,修改文章编辑器需要用到functions.php,那么我需要新建这三个文件。网上找到的攻略到此为止,因为大家都说这个很简单,新建一下就好了。直接copy父主题的functions.php过来,保存,刷新,前端后台全部报错,回退不了的那种,这时候第一步就起到了关键作用,之间重置。
第六步,重新开始第四步和第五步,报错,重置。一样样尝试,不断报错、重置。
第七步,最后将functions.php的内容除头部信息全部删掉,头部信息只保留一句描述的句子其他也干掉,再在下方加上自己编辑器的代码,成功。content.php和footer.php将头部信息删除到只有一句描述的句子,下面代码不动,再找到需要修改的代码按照需要修改后保存,上传。
1 2 3 | /** * The template for displaying the footer */ |
第八步,子主题创建完成,一共有4个文件。但是有个问题还是没有解决,新建的“归档”页因为不懂css没有进行页面设置,导致文字都挤在一坨,这个在子主题好像解决不了。
第九步,F12找到“归档”页面控制行距的那一行代码,回到父主题style.css,找到那一行,将行距改为2。完成。
记录这些过程是为了以后万一还要折腾的时候,给以后的自己做攻略参考用的。第七步里面各种修改的代码基本都是从前面文章找到然后直接copy,免得再去网上找,省事。