Hallo Klaus und Liste
>danke für die Hinweise - mir ist noch nicht ganz klar, wann das Problem auftritt,
>für das Du eine Lösung entwickelt hast.
>Möchtest Du die Art der Anzeige eines Artikels in Abhängigkeit von seinem Inhalt steuern?
>Könntest Du ein Beispeil für den SPIP-Code geben, der durch Deinen Filter möglich wird? In Deiner Mail >beschreibts Du den Code des Filters, wi ich ihn anwende erschließt sich mir nicht direkt.
Es klappt - man könnte so auch ganz "normale" Globals verwenden.
Also ich habe unterschiedliche Subsites, die sich z.B. auf Grund des Footer-Inhaltes und andere Daten unterscheiden. Da braucht es die gleichen Boucles, jeweils mit anderen Schlüsseln z.B. Diving. (Name der Sub-Site)
An einem zentralen Ort am Anfang der Templates, können diese Werte nun initialisiert werden:
Man kann es jetzt sicher nochmals verbessern und verschönern. Im <INCLURE> hab ich zur Zeit eine Selektion, die durch die globale Variable $SelSite gesteuert wird.. Den Filter kann man natürlich nicht ins inclure nehmen, ansonsten hat man ja keinen kontextabhängigen und eindeutigen Wert mehr.
Auf jeden Fall kann ich jetzt mit einer einzigen Variablen, das richtige Layout assignen. D.h. ich kann eine template.html rumkopieren, ohne das Template als solches anpassen zu müssen.
http://protecsardinia.com.jovinus-meta.net/spip1.82d/rubrique.php3?id_rubrique=84 (Gelb mit richtigem Footer)
<?php
$SelSite=[(#CHARSET|SetURLVars{selsite,Sard})]; /* intern: $_GET["$var"]= $default; */
# Zuweisung anderer Werte, z.B. Navi-Parameter (in Arbeit)
?>
<INCLURE (parmstyles.php3)>
Der Boucle sieht dann so aus:
Den #ENV-Wert könnte man so immer noch über die URL übersteuern.
<BOUCLE_article_footer(ARTICLES)
{titre==(#ENV{selsite,default}|GetURLVars{selsite,default})} {titre_mot=mainfooter}>
#TEXTE
</BOUCLE_article_footer>
Wenn nun alle Templates identisch sind, erspart mir das einiges an Arbeit.
Die Navi ist z.B. identisch, setzt einfach auf einer andere Rubrik auf.
Ich kann jetzt jeden <BOUCLE> "fernsteuern".
Ich hoffe, der Nutzen ist ersichtlich 
Gruss
Patrick
-----
#mes_foncions.php3
function SetURLVars($texte,$var,$default){
# Sets Global Variable, which can be used in GetURLVars
$_GET["$var"]= $default;
# echo("2)$texte/$var/$default-"."@|".$_GET["$var"]."|@");
return($_GET["$var"]);
}
function GetURLVars($texte,$var,$default)
# #ENV evaluates at the very beginning.
# Filter to evaluate *actual* URL
# values from SetURLVars
#------------------------------------------
# P.Ogay / 2006. Feb. 21
{
# echo("2)$texte/$var/$default-"."#|".$_GET["$var"]."|#");
if ($texte==$default){
if ($_GET["$var"]) return $_GET["$var"];
else return($default);
}
else return($texte);
}