如何使用WordPress设置自定义样式表中的颜色

时间:2017-04-30 作者:Tom Nolan

因此,我们正在为我们的公司构建一个内部WordPress主题,该主题将用于我们的几十个网站。网站之间唯一不同的是配色方案。

我们正在尝试找出处理颜色的最佳方法,以允许更新所有站点,而不必单独上载每个站点的文件。

Child Theme

我们讨论了尝试为每个内部站点使用子主题,但在缩放或添加新功能时,我们必须单独为每个子主题添加配色方案样式。因此,这并不理想。

Theme Customizer

WordPress有一个内置的主题定制器API,看起来很有前途,但我想知道是否有人能提供一些关于它实际工作原理的见解。如果我们有链接、按钮、标题等元素,以及他们网站的独特配色方案,那么它是否必须在<style> 每个元素的块,那么?

这意味着您只是以以下方式在主题文件中创建样式:

<style>
    .button {
        color: <?php echo setting value here! ?>
    }
</style>
如果是这样,您是否处理外部样式表中的大多数样式(不需要自定义变量的样式)?

Color Options

很多WordPress主题都有一个颜色设置页面,我们也可以使用它,但我认为这在呈现CSS方面是一样的<style> 块。

Specific File

创建一个包含所有样式的PHP文件,本质上使用WordPress中的变量,这是一个荒谬的选择吗?大致如下:

<?php $primary = get color from WordPress ?>

<style>
    .button {
        display: block;
        border-radius: 5px;
        color: $primary;
    }
</style>   
有什么想法可以用上面的选项来处理这个问题,还是我遗漏了什么?

2 个回复
SO网友:Kenneth Odle

我建议您选择一种颜色。通常,颜色选项只加载单独的样式表。E、 g.加载style-blue.css 样式表将包含所有您希望为蓝色的元素。(除了主样式表之外,您还可以加载它。)这是多少主题的工作,所以这是一个行之有效的方法。这还利用了缓存,这将加快速度并减少服务器负载。

然而,如果进行更改所需的代码量很小(比如说少于20行),我只会使用定制者的定制CSS选项。

SO网友:Mark Kaplun

您正在开发N个软件产品,只需使用N个代码库即可。假设本地化(这可能是描述您需要做什么的恰当术语)最终只会导致颜色方案的差异,这是一个天真的错误。使用GIT或SVN,为主题(或子主题,但可能只是不必要的工作)设置一个主分支,并从中分支出特定的本地化。

在DB中存储选项不利于测试,在需要跟踪更改时也不利于测试。如果您真的认为这是一条出路(只有一个核心代码,但在配置上只有区别),只需在子主题中添加一个配置文件,并在其中定义相关值即可。保持管理员干净,不要添加管理员不能更改的选项。

相关推荐

Child-theme breaks site

所以,我有一个子主题,里面除了所需的CSS文件之外什么都没有。一旦我激活了这个儿童主题,我的整个网站就关闭了。最后我有两个问题:激活一个只有CSS的子主题怎么能破坏我的网站</我怎样才能回到我原来的主题</这些是网站给我的错误:Warning: require_once(/wp-content/themes/interio_child/admin/options-framework.php) [function.require-once]: 无法打开流:中没有此类文件或目录/wp-c