Themeswitcher nur im Adminmodus

Third Party Plugins to CMSimple - how to install, use and create plugins

Moderator: Tata

Post Reply
Tata
Posts: 2880
Joined: Tue May 20, 2008 5:34 am
Location: Slovakia
Contact:

Themeswitcher nur im Adminmodus

Post by Tata » Tue Feb 20, 2018 10:21 am

Ich habe themeswitcher nur im Adminmodus aufgerufen

Code: Select all

<?php if(XH_ADM){echo themeswitcher();}else{echo '';}?>
Es macht, was erwartet. Nur speichert es die Templateänderung nicht und nach dem Ausloggen wird die Webseite mit dem Konfigurierten Template geöffnet. Das scheint mir ganz logisch zu sein. Geht es aber nicht auch die Veränderung vom Adminmodus gespeichert zu haben?
Ich möchte nicht, dass die Besucher die Templates wechseln, sondern nur ich - Admin - besonders im Fall, dass ich erst testen möchte, welches Template das richtige ist, oder nach bedarf das Template ändern (Jahreszeit, Fest, besondere Datums usw.)
CMSimple.sk
It's no shame to ask for an answer if all efforts failed.
But it's awful to ask without any effort to find the answer yourself.

cmb
Posts: 12940
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: Themeswitcher nur im Adminmodus

Post by cmb » Tue Feb 20, 2018 10:54 am

Tata wrote:
Tue Feb 20, 2018 10:21 am
Ich habe themeswitcher nur im Adminmodus aufgerufen

Code: Select all

<?php if(XH_ADM){echo themeswitcher();}else{echo '';}?>
Es macht, was erwartet. Nur speichert es die Templateänderung nicht und nach dem Ausloggen wird die Webseite mit dem Konfigurierten Template geöffnet. Das scheint mir ganz logisch zu sein. Geht es aber nicht auch die Veränderung vom Adminmodus gespeichert zu haben?
Das einfachste dürfte sein, wenn du die Funktion immer aufrufst, aber deren Rückgabe nur ausgibst, wenn man Admin ist. Also etwa:

Code: Select all

<?php
$themeswitcher_result = themeswitcher();
if (XH_ADM) echo $themeswitcher_result;
?>
Christoph M. Becker –Plugins for CMSimple_XH

Tata
Posts: 2880
Joined: Tue May 20, 2008 5:34 am
Location: Slovakia
Contact:

Re: Themeswitcher nur im Adminmodus

Post by Tata » Tue Feb 20, 2018 11:34 am

Super. Das ist das.
CMSimple.sk
It's no shame to ask for an answer if all efforts failed.
But it's awful to ask without any effort to find the answer yourself.

Tata
Posts: 2880
Joined: Tue May 20, 2008 5:34 am
Location: Slovakia
Contact:

Re: Themeswitcher nur im Adminmodus

Post by Tata » Tue Feb 20, 2018 4:36 pm

Sollte es nicht etwa so aussehen?

Code: Select all

  <?php $themeswitcher_result = themeswitcher(); 
    if (XH_ADM) echo $themeswitcher_result;
    $cf['site']['template'] = $themeswitcher_result;
  ?>
So, wie es ich verstehe, wird im config.php nichts geändert und der Auswahl des Templates bleibt g[ltig nur bis der Admin nicht ausloggt, oder? Nachdem ich Cache lösche (als ob new User die Webseite geöffnet hat), kommt die wieder mit dem vorgestellten Template. Wenigstens bei mir.
CMSimple.sk
It's no shame to ask for an answer if all efforts failed.
But it's awful to ask without any effort to find the answer yourself.

cmb
Posts: 12940
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: Themeswitcher nur im Adminmodus

Post by cmb » Tue Feb 20, 2018 5:05 pm

Tata wrote:
Tue Feb 20, 2018 4:36 pm
So, wie es ich verstehe, wird im config.php nichts geändert und der Auswahl des Templates bleibt g[ltig nur bis der Admin nicht ausloggt, oder? Nachdem ich Cache lösche (als ob new User die Webseite geöffnet hat), kommt die wieder mit dem vorgestellten Template. Wenigstens bei mir.
Ja, so ist das gedacht. Andere Besucher bekommen von den Template-Änderungen also nichts mit, was vermutlich auch sinnvoll ist, solange der Admin noch ausprobiert, welches Template er denn verwenden will. Hat sich der Admin entschieden, dann müsste er eben das Standard-Template in der Konfiguration von Hand ändern.
Tata wrote:
Tue Feb 20, 2018 4:36 pm
Sollte es nicht etwa so aussehen?

Code: Select all

  <?php $themeswitcher_result = themeswitcher(); 
    if (XH_ADM) echo $themeswitcher_result;
    $cf['site']['template'] = $themeswitcher_result;
  ?>
Zusätzlich müsste noch config.php gespeichert werden. Aber ich würde von solchen programmatischen Änderungen der Konfiguration abraten. $cf ist als read-only dokumentiert, und wenn man das ignoriert, könnte es eben in einer zukünftigen CMSimple_XH Version zu Inkompatibilitäten kommen (vgl. $plugin_cf bei XH 1.7).
Christoph M. Becker –Plugins for CMSimple_XH

Tata
Posts: 2880
Joined: Tue May 20, 2008 5:34 am
Location: Slovakia
Contact:

Re: Themeswitcher nur im Adminmodus

Post by Tata » Tue Feb 20, 2018 5:09 pm

Ja, nachdem ich den Post gesendet habe, bin ich auch dazu gekommen, dass die Idee Qutsch war.
CMSimple.sk
It's no shame to ask for an answer if all efforts failed.
But it's awful to ask without any effort to find the answer yourself.

Post Reply