自定义WordPress主题而不更改它?


19

我找到并下载了一个主题。但是我想对CSS进行一些调整,以稍微更改设计,颜色等。我应该如何去做,同时仍然能够更新主题而不会丢失更改。

Answers:


21

虽然不能不对其进行修改就不能对其进行修改,但是可以通过创建子主题来隔离更改的部分。综上所述:

  1. 使用“父”主题在同级上创建主题目录,
  2. style.css在新目录中创建一个文件,该文件Template:的注释中要声明一个名称,以命名父主题,并@import url(../%parent-theme%/style.css)从父主题导入CSS,
  3. 在WordPress管理控制台中激活您的新主题,
  4. 在父主题目录中添加新文件和/或将文件复制到子主题目录,并根据自己的喜好对其进行修改,以及
  5. 而已!

我可以为您提供更多详细信息,但是基本上,这个家伙在解释如何创建儿童主题方面做得非常好,所以我只为您指出这一点。

当您想升级父主题时,只需升级即可。它将使您的孩子主题保持完整。当然,如果子主题更改了太多父主题和/或如果您复制和修改了主题文件并在新版本中进行了更新,则您的子主题可能无法完美运行,如果不对其进行修改也不会获得新功能,但这是一个从每次开始都要好得多!

希望能有所帮助。


2
儿童主题是去恕我直言的方式
Ryan Gibbons 2010年

2

如果您只想更改一点CSS,则可以在主题目录中创建一个自定义CSS文件。在主题的标题中包含您的自定义css文件,并仅在自定义css文件中写入新的声明,从而覆盖主题的默认css声明。

默认样式表

body{background:white;width: 960px;margin: 25px auto;}

自定义样式表

body{width:800px;}

您的浏览器将分别为两个样式表进行http调用,并按照列出的顺序应用样式。无论最后执行什么声明,都将覆盖在它们之前所做的声明。因此,请确保在header.php中包含任何其他样式表之后,再包括您的自定义样式表。

如果最终要更改模板文件(例如archive.php或page.php),MikeSchinkel的答案将允许您在发布新版本时更新主题,而不会丢失您的修改。但是,如果您只想更改某些CSS,则此方法会很好用。只需确保在更新主题目录之前保存自定义样式表即可。


1
如果您修改的主题不是您的主题,则可能会出现问题,因此您的更改可能会在主题更新时被覆盖。
hakre 2010年

1

您绝对可以创建一个子主题。子主题使您的主主题保持其原始格式。

我个人所做的是,我正在使用MyThemeShop中高级WordPress主题。在这种情况下,我将style.css和主题选项文件保持不变。我只是将文件的数据复制到另一个文件,并命名不同。例如,如果我使用SociallyViral主题创建其子主题,我将从其style.css文件中复制数据并将其保存到另一个名为childstyle.css的文件中。

之后,我现在将设计特定的功能,并可以通过在childstyle.css文件中添加更多功能来重新设计主题。

这将使我的原始style.css文件保持原样,并使我能够以原始格式进行更新。


我不知道你的意思为“我将复制其的style.css文件中的数据”,但通常它足以只有那些样式添加到孩子的主题,是不同从父-子主题的样式添加到和/或覆盖父级的样式。顺便说一句:您的答案如何为6年前已经接受的答案添加任何内容?
tillinberlin

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.