我想创建一个主题选项页面的基础上改变整个网站的CSS样式。例如,正文/容器背景色、字体大小、字体颜色等。
我通过在头文件中使用指向php文件的样式表链接实现了这一点,该头文件echo是CSS,并使用get\\u选项。
例如background-color: <?php echo get_option(\'background_color\'); ?>;
如果有很多选择,我认为这是一个糟糕的想法,从性能角度来看,这是正确的吗?
我尝试过其他方法,但它们似乎都添加了内联或嵌入式样式,这是我不想要的,如何避免这种情况?
创建一个写入静态CSS文件的自定义脚本是一个好主意吗?
设置API有什么方法可以处理这个问题吗?
**回答得很好,但我决定实际上还是写一个静态文件,因为它提供了更少的开销。
最合适的回答,由SO网友:Bainternet 整理而成
创建一个写入静态CSS文件的自定义脚本是个坏主意!!!每次保存任何更改时,都需要重新生成文件。
更好的解决方案是将所有选项保存在选项数组中,例如:
$MyCSS[\'background_color\'] = #009988;
$MyCSS[\'background_repeat\'] = no-repeat;
update_option(\'theme_settings\',$MyCSS);
这就是为什么只调用一次“get\\u option()”函数的原因。
$MyCSS = get_option(\'theme_settings\');
// and use :
echo $MyCSS[\'background_color\'];
如果从性能角度考虑,则对数据库的调用要少得多,使用的资源也要少得多。