|
Smarty
WARNING: All discussion is moving to https://reddit.com/r/smarty, please go there! This forum will be closing soon. |
|
View previous topic :: View next topic |
Author |
Message |
bimal Smarty Elite
Joined: 19 Apr 2007 Posts: 423
|
Posted: Thu Oct 15, 2009 8:28 am Post subject: Creating dynamic CSS using .htaccess, css file and php |
|
|
Wondering about how to work with Dynamic CSS? It is possible in numerous ways. And here, I am explaining about how to do URL Rewriting and use PHP variables to write the dynamic css. This article is not related to core Smarty, but can aid more advantages in producing user specific dynamic css, for your project.
Yet, it is supporting external css files, which is the main aim to demonstrate here.
You can make it dynamic per session, per user or just randomly dynamic.
The contents of .htaccess in your css folder should be: Code: |
<IfModule mod_rewrite.c>
# Rewrite example: main.css => index.php?css=main
RewriteEngine On
RewriteRule ^$ index.php [L]
RewriteRule (.*).css index.php?css=$1 [QSA,L]
</ifmodule> |
Now, anytime, you access .css file in this folder, index.php file will be activated, which can then: read the dynamic values for some css attributes and place them in the css output.
A quick trick on index.php is (more details are here, for downloading working codes): Code: |
# Set some variables, use config file, or user specific database configurations.
$css = array();
$css['body']['color'] = '000033';
$css['body']['bgcolor'] = 'CCCCCC';
$css['h1']['color'] = '003399';
$css['a']['color'] = '990000';
# Validates and maintains a copy of default css file that works.
# If dynamic css file is verified, use it.
$css_file = isset($_GET['css'])?(string)$_GET['css'].'.css':'default.css';
$css_file = (file_exists($css_file))?$css_file:'default.css';
# Now begin writing your dynamic css using your variables.
# Below code is a true css content.
require_once($css_file);
|
All you have to do is maintain $css_file correctly, that can utilize the dynamic variables.
Must see for:
a demo – working copy.
More details and download: Help Self discussion.
Rejoice again. Thanks and let me know your feedback. |
|
Back to top |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|