Ersatz für stylesheet.php

Hilfe zu Modulen und Tags
Piratos

Ersatz für stylesheet.php

Post by Piratos »

Die im Standard überall eingesetzte Stylesheet.php verwendet PHP Resourcen aus dem gesamten Fundus der CMS.
Das sind immerhin rund 3,5 MB, die zusätzlich bei jedem Seitenbesuch als separater Task zu den rund 4,9 MB der CMS kommen (ja die CMS verballert real 8,4 MB!).

Fazit - Stylessheet.php schnürt die Anzahl der maximalen Besucher ein, die mit einer angemessenen Geschwindigkeit bedient werden können.

Dieser Ersatz für Stylesheet.php verbraucht rund 40KB und das ist eine ziemliche Ersparnis.

das Script führt nur eine einzige Mysql - Abfrage durch (CMSMS immer zwei).

Es kann dann eingesetzt werden, wenn eine Standardverwendung gegeben ist, also wenn man es so verwendet, wie es normal vorgesehen ist.

Und - es funktioniert nur mit Mysql in allen Varianten, da ein Zugriff unabhängig von ADODB erfolgt.

Das Script als stylesheet.php in die Root speichern - fertig.
Wer will kann sich ja vorher die alte stylesheet.php umbenennen.

Code: Select all

<?php
if (isset($_GET["templateid"])) $templateid = $_GET["templateid"]; else return "";
require_once('config.php');
if ($config['default_encoding'] =='') $encoding=$config['admin_encoding']; else $encoding=$config['default_encoding'];
if ($encoding=='') $encoding='UTF-8';
$out="";
$db = mysql_connect($config['db_hostname'],$config['db_username'],$config['db_password']);
mysql_select_db($config['db_name']);
$sql="SELECT c.css_text,c.css_id FROM ".$config['db_prefix']."css c,".$config['db_prefix']."css_assoc ac WHERE ac.assoc_type='template' AND ac.assoc_to_id = $templateid AND ac.assoc_css_id = c.css_id";
$result=mysql_query($sql);
while ($result && $row = mysql_fetch_assoc($result)){$out .=$row['css_text'];}
header("Content-Type: text/css; charset=" .$encoding);
echo $out;
?>
THX1138

Re: Ersatz für stylesheet.php

Post by THX1138 »

Hab's gleich mal ausprobiert - funktioniert und ist spürbar schneller! Ich kann nicht so ganz verstehen, warum auf Deine Kritik von seiten der Entwickler nicht mehr eingegangen wird...
Piratos

Re: Ersatz für stylesheet.php

Post by Piratos »

von seiten der Entwickler nicht mehr eingegangen wird
Nun ganz so ist es nicht - ihr arbeitet tatsächlich schon mit Dingen und Ideen die ich mal eingebracht habe und es köcheln immer noch welche und werden auf Verwertbarkeit überprüft - aber es dauert - ist ja eine Freizeitgemeinschaft.
Piratos

Ersatz für stylesheet.php-Version für alle DBS

Post by Piratos »

Damit auch die wenigen glücklich werden können die postgresql einsetzen hier die veränderte Version, die alle bislang von der CMS unterstützen DBS bedient:

Code: Select all

<?php
if (isset($_GET["templateid"])) $templateid = $_GET["templateid"]; else return "";
require_once('config.php');
if ($config['default_encoding'] =='') $encoding=$config['admin_encoding']; else $encoding=$config['default_encoding'];
if ($encoding=='') $encoding='UTF-8';
$sql="SELECT c.css_text,c.css_id FROM ".$config['db_prefix']."css c,".$config['db_prefix']."css_assoc ac WHERE ac.assoc_type='template' AND ac.assoc_to_id = $templateid AND ac.assoc_css_id = c.css_id";
$out="";
if ($config['dbms'] == 'mysqli' OR $config['dbms'] == 'mysql')
{
$db = mysql_connect($config['db_hostname'],$config['db_username'],$config['db_password']);
mysql_select_db($config['db_name']);
$result=mysql_query($sql);
while ($result && $row = mysql_fetch_assoc($result)){$out .=$row['css_text'];}
}
else
{
  $db=pg_connect("host=".$config['db_hostname']." dbname=".$config['db_name']." user=".$config['db_username']." password=".$config['db_password']);
  $result=pg_query($db,$sql);
  while ($result && $row = pg_fetch_array($result, null, PGSQL_ASSOC)){$out .=$row['css_text'];}
}
header("Content-Type: text/css; charset=" .$encoding);
echo $out;
?>
Last edited by Piratos on Sat Apr 29, 2006 11:06 am, edited 1 time in total.
Piratos

Re: Ersatz für stylesheet.php

Post by Piratos »

Wer mal das gemütliche und vor allem sichtbare Verhalten der Original - Stylesheet.php beobachten möchte, der schaue sich einmal das Forum mit Opera an  - der weiss dann sofort was Sache ist.

Ursache - erst kommt die Forum CSS dann sehr viel später die von der Stylesheet.php.
Piratos

Re: Ersatz für stylesheet.php

Post by Piratos »

Message:
I do like this idea (and it's on the cmsmadesimple site now).  But,
it still needs some additional things before it can replace it.
Mainly, name parameter handling and media type handling.
Für nicht coder - die zusätzliochen Dinge sind wegen der Kompatibilität mit Uraltversionen die in der Praxis aber so gut wie keiner einsetzt.

Das neue Layout hier im Forum haben wir wohl meiner Meldung in der Lounge zu verdanken.
cyberman

Re: Ersatz für stylesheet.php

Post by cyberman »

Piratos wrote: Das neue Layout hier im Forum haben wir wohl meiner Meldung in der Lounge zu verdanken.
Schau mal in den Footer der Seite:
CMS made simple is Free software under the GNU/GPL licence. This site is currently running CMS Made Simple 0.13.
Website designed by bluebinary and Daniel Westergren (westis)
CMS Made Simple | Powered by SMF 1.0.7.
Ted hat wie versprochen das neue Layout aufgespielt  :) ...
Piratos

Re: Ersatz für stylesheet.php

Post by Piratos »

Selbstnutzung ist immer die beste Werbung.
cyberman

Re: Ersatz für stylesheet.php

Post by cyberman »

Meine Worte an Ted  :) ...
cyberman

Re: Ersatz für stylesheet.php

Post by cyberman »

Piratos wrote: Kompatibilität mit Uraltversionen
Apropo Uraltversionen, fürs Protokoll - das Script funzt (wie erwartet) auch mit Version 0.11.2 :) ...
Piratos

Re: Ersatz für stylesheet.php

Post by Piratos »

0.11 ist die älteste die ich noch habe, auch da klappt es.
cyberman

Re: Ersatz für stylesheet.php

Post by cyberman »

Spasseshalber mal mit der 0.8.2 gescheckt - funzt  :).
Volker

Re: Ersatz für stylesheet.php

Post by Volker »

Gracias Piratos - funzt echt schnellerrrrrr  ;D
cyberman

Re: Ersatz für stylesheet.php

Post by cyberman »

Da es in die gleiche Richtung geht, kram ich einfach noch mal den alten Thread raus  :D.

Bekanntermaßen wird das Stylesheet bei CMSms über den {stylesheet}-Tag (Verzeichnis /plugins) in das Template eingebunden. Der Autor dieses Threads hat für sein CMS einen Ersatz erstellt. Dieses ist mit einer kleinen Anpassung auch für CMSms einsetzbar und im Anhang zu finden  :).

Praktisch wird dabei die CSS als .zip-Datei gecached, was die Verarbeitung des Templates beschleunigt.

[gelöscht durch Administrator]
cyberman

Re: Ersatz für stylesheet.php

Post by cyberman »

cyberman wrote: die CSS als .zip-Datei gecached
... was bedeutet, dass der Cache geleert werden muss, wenn die CSS geändert wurde.
Post Reply

Return to “Module und Tags”