Neues "MultiOnePage" - Plugin

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Holger
Site Admin
Posts: 3470
Joined: Mon May 19, 2008 7:10 pm
Location: Hessen, Germany

Re: Neues "MultiOnePage" - Plugin

Post by Holger » Wed Sep 09, 2020 9:43 am

frase wrote:
Wed Sep 09, 2020 9:31 am
Der Link-Aufruf im Template (unten) lautet immer noch:

Code: Select all

<div class="topLink"><?=multionepage_toplink('','to-top.svg')?></div>
Und: Es funktioniert nicht.
Na ja. Du müsstest die neue Template-Funktion "fhsOP3_toplink()" halt auch im Template aufrufen.
Wie sonst soll das Template denn wissen, dass es die neue Funktion verwenden soll?

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by frase » Wed Sep 09, 2020 9:53 am

Holger wrote:
Wed Sep 09, 2020 9:43 am
Na ja. Du müsstest die neue Template-Funktion "fhsOP3_toplink()" halt auch im Template aufrufen.
Wie sonst soll das Template denn wissen, dass es die neue Funktion verwenden soll?
Ha, beim Content lautete der neue Aufruf: fhsOP3_multionepage_content()
Also mit "_multionepage_".
Versucht hatte ich schon: "fhsOP3_multionepage_toplink()" und das hat nicht geklappt.

Jetzt tut es, wie es soll. *ganz dolle freu*
Es ist "einfärbbar".
Danke!

Holger
Site Admin
Posts: 3470
Joined: Mon May 19, 2008 7:10 pm
Location: Hessen, Germany

Re: Neues "MultiOnePage" - Plugin

Post by Holger » Wed Sep 09, 2020 10:12 am

frase wrote:
Wed Sep 09, 2020 9:53 am
Ha, beim Content lautete der neue Aufruf: fhsOP3_multionepage_content()
Also mit "_multionepage_".
Na ja, wie man die Funktionen nennt, ist eigentlich egal. Und ja, sie müssen natürlich eindeutig sein und sollten alle dem gleichem Namensschema folgen. Da hab' ich jetzt nicht richtig aufgepasst. Erklärt hatte ich es aber schon weiter oben.
Ob du nun "_multionepage_" beibehälst, oder einfach nur mit Präfix "fhsOP3" ersetzt, ist eigentlich egal.

Fakt ist halt nur: du musst die Funktion, die du neu erstellt hast, eben auch aufrufen.
Wenn du function tralala() bevorzugst, dann muss es halt im Template mit

Code: Select all

<div class="topLink"><?=tralala()?></div>
aufgerufen werden. Funktionieren wird auch das.

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by frase » Wed Sep 09, 2020 10:36 am

Holger wrote:
Wed Sep 09, 2020 10:12 am
Fakt ist halt nur: du musst die Funktion, die du neu erstellt hast, eben auch aufrufen.
Alles gut. Alles super.
Normalerweise hätte ich das Ding selbst bauen müssen - erklärt wurde es ja sehr gut und ausführlich.
Das Problem bei mir ist, dass meine Synapsen im allgemeinen und bei PHP im besonderen manches manchmal nur verzögert und hartleibig durchlassen. Und frag' mich mal morgen danach ... :lol:
Aber, zum Glück für das allgemeine Weltgeschehen - und manchmal auch für mich - gibt es ja Leute wie dich und Christoph und Ludwig und Olaf ... und und und.

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by cmb » Wed Sep 09, 2020 12:15 pm

Holger wrote:
Wed Sep 09, 2020 8:38 am
Dann noch die Funktion für den Aufruf im Template:

Code: Select all

function Tplname_toplink($id = '', $imgfile = '') {
    return TplnameController::renderTopLink($id, $imgfile);
}
Oder halt ohne diese Hilfsfunktion zu definieren, direkt im Template:

Code: Select all

<?=TplnameController::renderTopLink('','to-top.svg')?>
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by frase » Wed Sep 09, 2020 1:10 pm

cmb wrote:
Wed Sep 09, 2020 12:15 pm
Oder halt ohne diese Hilfsfunktion zu definieren, direkt im Template:
Tja, das geht auch.
(Besser ohne den zweiten Parameter, denn das Bild wollte ich ja gerade weghaben.)
Was es nicht alles gibt :idea:

Holger
Site Admin
Posts: 3470
Joined: Mon May 19, 2008 7:10 pm
Location: Hessen, Germany

Re: Neues "MultiOnePage" - Plugin

Post by Holger » Wed Sep 09, 2020 1:19 pm

cmb wrote:
Wed Sep 09, 2020 12:15 pm
Oder halt ohne diese Hilfsfunktion zu definieren
Jetzt mach' ihn mal nicht ganz durcheinander ;) .
Bei allen Plugins ist es üblich, dass man für das Template eine Hilfsfunktion anbietet. Und oftmals ist es auch nicht nur ein einfacher Einzeiler. Aber natürlich geht es in dem Fall auch so :) .

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by frase » Wed Sep 09, 2020 1:31 pm

Holger wrote:
Wed Sep 09, 2020 1:19 pm
Jetzt mach' ihn mal nicht ganz durcheinander ;) .
:lol:
Noch durcheinanderer gehts gar nicht.
(Keine Panik, das habe ich schon alles verstanden. Wenn ich mir das nur alles merken könnte ...)

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by cmb » Wed Sep 09, 2020 1:49 pm

Holger wrote:
Wed Sep 09, 2020 1:19 pm
cmb wrote:
Wed Sep 09, 2020 12:15 pm
Oder halt ohne diese Hilfsfunktion zu definieren
Jetzt mach' ihn mal nicht ganz durcheinander ;) .
Bei allen Plugins ist es üblich, dass man für das Template eine Hilfsfunktion anbietet. Und oftmals ist es auch nicht nur ein einfacher Einzeiler. Aber natürlich geht es in dem Fall auch so :) .
Bei statischen Klassenmethoden sind die Hilfsfunktionen eigentlich nur für Pluginaufrufe in Content erforderlich (da :: nicht unterstützt wird). Ich vermute, das ist der Hauptgrund, warum da noch einfache Wrapperfunktionen angeboten werden. :)
frase wrote:
Wed Sep 09, 2020 1:10 pm
(Besser ohne den zweiten Parameter, denn das Bild wollte ich ja gerade weghaben.)
Dann solltest du aber auch die Methodendefinition (static function ... in der Klasse) anpassen, so dass der zweite Parameter optional ist. Ansonsten müsste PHP meckern.
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Neues "MultiOnePage" - Plugin

Post by frase » Wed Sep 09, 2020 2:03 pm

cmb wrote:
Wed Sep 09, 2020 1:49 pm
Dann solltest du aber auch die Methodendefinition (static function ... in der Klasse) anpassen, so dass der zweite Parameter optional ist. Ansonsten müsste PHP meckern.
Meckert nicht bei: <?=fhsOP3Controller::renderTopLink('','')?>
Aber was soll's, ich habe für einen Spezialfall eine "schnelle" Speziallösung gesucht - und bekommen.
Was will ich mehr?
Und rein optisch sieht es mit Holgers Code auch besser und verständlicher aus:

Code: Select all

<?=fhsOP3_toplink();?>
Da weiß ich auch in ein paar Tagen noch, was dort passiert ;-)

Post Reply