Zugriff auf head und body vom Modul |
Willkommen, Gast ( Anmelden | Registrierung ) [ Hilfe | Mitglieder | Suche ]
Zugriff auf head und body vom Modul |
Sat. 9. December 2006, 13:34
Beitrag
#1
|
|
Advanced Member Gruppe: AdvancedMembers Beiträge: 442 Mitglied seit: 02.07.2006 Wohnort: Halle Mitglieds-Nr.: 71 |
Man kann Module ja einbetten, wo man will bzw. wo es die Funktionalität geben soll. Ist es möglich auch Zugriff auf einen Breich zu bekommen in dem das Modul nicht eingebettet ist (z.B. auf zusätzliches JS im head) oder umgedreht wenn das Modul im <head> eingebettet ist auf den body (bpws. um eine typegroup zu platzieren, die ja sonst nicht angezeigt werden kann?
-------------------- |
|
|
Sat. 9. December 2006, 19:39
Beitrag
#2
|
|
Advanced Member Gruppe: AdvancedMembers Beiträge: 680 Mitglied seit: 09.08.2006 Wohnort: nähe Mainz Mitglieds-Nr.: 182 |
Hmmm
Du kannst zwei Module bauen. Das erste im Head speichert was in einer Variable ab, z.B. $_evil_var_for_saving_data_of_module_blablabla = array('aa', 'bb', 'cc'); und im zweiten Modul liest du das dann aus. Beispiel wäre im Dedi die implementierung der Fußnoten, da werden die während des Parsens in so einer Variable abgelegt und vom Fußnotenmodul ausgegeben. Ist aber eher ein Hack als ne Dauerlösung. Gruß, Peter |
|
|
Sat. 9. December 2006, 20:47
Beitrag
#3
|
|
Advanced Member Gruppe: AdvancedMembers Beiträge: 442 Mitglied seit: 02.07.2006 Wohnort: Halle Mitglieds-Nr.: 71 |
Das habe ich befürchtet. Es wäre nett, wenn es eine SFinterne Möglichkeit geben würden, Modulspezifisches JS in den Head zu laden.
Ich kann also per Modul im body eine JS schreiben, aber ich kann Sie nicht automatisch einbinden. Am besten wäre es, wenn im <cms:lay type="head" /> zusätzlich noch eine Funktion enthalten wäre, für die importierten Module je Seite zusätzliche Dateien (js oder css) mit einzulesen. Mit file_exist könnte unter Umständen geprüft werden ob eine Datei idcatside8_textarea1.js existiert und eingebunden werden kann. Nun ja, ist glaube ich mehr ein Featurerequest geworden. 8) -------------------- |
|
|
Sat. 9. December 2006, 20:59
Beitrag
#4
|
|
Advanced Member Gruppe: AdvancedMembers Beiträge: 680 Mitglied seit: 09.08.2006 Wohnort: nähe Mainz Mitglieds-Nr.: 182 |
ZITAT Es wäre nett, wenn es eine SFinterne Möglichkeit geben würden, Modulspezifisches JS in den Head zu laden. Bitte zusätzlich auch noch für Stylesheets und Metatags.. Kannst du darauch einen FR machen? Gruß, Peter |
|
|
Mon. 11. December 2006, 00:28
Beitrag
#5
|
|
Newbie Gruppe: Members Beiträge: 6 Mitglied seit: 05.07.2006 Mitglieds-Nr.: 108 |
In mein "Navigation2" Modul habe ich eine Funktion eingebaut, mit der man beliebige Zeichenketten in den <head>-Bereich einfügen kann. Das Ganze funktioniert über den 'manipulate_output'-Mechanismus.
Der Code aus dem Modul: In "$mod['tpl'][30]" befindet sich die einzufügende Zeichenkette. QUELLTEXT if ($mod['tpl'][30])
{ if (is_array($navigation2_head)) { array_push($navigation2_head, $mod['tpl'][30]); } else { //TODO: modrewrite_replace für den neuen output noch einmal aufrufen oder darauf hinweisen, dass der output nicht ersetzt wird $navigation2_head = array($mod['tpl'][30]); $mod['manipulate_output'] = '$magic = "<!--START head//-->";'; $mod['manipulate_output'] .= '$start = strpos($output, $magic) + strlen($magic);'; $mod['manipulate_output'] .= '$new_output = substr($output, 0, $start);'; $mod['manipulate_output'] .= '$new_output .= implode("", $navigation2_head);'; $mod['manipulate_output'] .= '$new_output .= substr($output, $start);'; $mod['manipulate_output'] .= '$output = $new_output;'; $cfg_client['manipulate_output'] = $mod['manipulate_output'] . $cfg_client['manipulate_output']; } } |
|
|
Mon. 11. December 2006, 20:41
Beitrag
#6
|
|
Advanced Member Gruppe: AdvancedMembers Beiträge: 442 Mitglied seit: 02.07.2006 Wohnort: Halle Mitglieds-Nr.: 71 |
Ist das schon SF ? Du suchst also im Output nach <!--START head//-->? Sehr spannend.
Kann ich das gesamte Modul mal sehen? -------------------- |
|
|
Tue. 12. December 2006, 00:08
Beitrag
#7
|
|
Newbie Gruppe: Members Beiträge: 6 Mitglied seit: 05.07.2006 Mitglieds-Nr.: 108 |
Navigation2 Thread. War auch oben schon verlinkt.
Das Ganze hatte ich für DeDi entwickelt, sollte aber relativ einfach portiert werden können. Der Beitrag wurde von ketti bearbeitet: Tue. 12. December 2006, 00:13 |
|
|
Vereinfachte Darstellung | Aktuelles Datum: 28.4.24 - 22:54 |