我正在开发一个用于在多个域上保存页面的基本系统。我打算在数据库中填充值,并使用这些值生成页面。
我使用的值将包括颜色值,然后我想将其注入到CSS文件和SVG文件中。
目前我正在考虑使用。htaccess来处理。css/。svg作为PHP,并从那里删除值,但是有没有更有效/优雅的方式,而不必处理这些文件格式为PHP?
感谢所有建议。
许多谢谢。免责声明:我没有真正使用svg,但从一些示例代码来看,我认为这与我的答案无关。
你的css文件中关于php的一些内容让我感觉不太舒服。我以前试过,但并没有让事情变得更容易。默认情况下,CSS文件不解析php,即使您可以设置它们,也很容易忘记如何设置。以下是我的处理方法:
如果每个页面的css部分是不同的,那么在html/svg页面的头部声明它是有意义的。您可以将默认样式表与几乎所有样式链接起来,然后只需覆盖页面头部的特定颜色值。或者甚至内联,如果这样可以使输出更容易的话。您不必担心在多个文件中为同一个页面输出php。
或者,如果要重用的样式集有限,那么在同一个文件中给它们所有的类名并没有什么错。然后,您可以使用php输出类名,并为所有内容使用相同的css文件。这将使您保持组织,并且文件必须非常大,以便未使用的类影响性能。
我认为最好把这些都做成PHP(或者至少是服务器端)。可以使用PHP输出CSS和SVG。您可以为它们制作文件,然后像执行PHP一样执行它们。大多数内容都是静态的,但是在一些地方可以使用PHP填充值。
对于CSS,您可以查看LessCSS(或lesssphp)。
无论如何,我不会为此使用Javascript。至少,不是客户端Javascript。这通常应该在服务器上完成。
我一直在考虑做这样的事情。但在我的例子中,我使用的是一个名为MODx的CMS。
你可以在MODx中创建一个css文件,然后在调用时使用php代码片段填充css文件。我的想法是让大多数css文件不是动态的,然后有一个或几个php片段,根据用户所在的页面返回特定的css,我发送的变量片段,等等。
个人提示:MODx是一个超级强大的CMS,你可以用它做几乎任何事情。