Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 28. Dezember 2017 19:03
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
LISE automatisches Auswahl-Dropdown erstellen
Hallo Leute,
ich hab mir mittlerweile CMSMS2 angetan, alles aktuell, auch LISE. Auf CMSMS1 hatte ich ein wunderbares PHP-File, das mir alle vorhandenen LISTIT2 Instanzen ausliest und in einem Dropdown im Template auf jeder Seite auswählbar machen konnte.
Zuerst die alte Form…
Aufruf im HTML-Template:
Außerhalb vom Body…
{content assign='liste' label='' block="Listen" block_group='Liste' block_type="dropdown" items="keine Liste|:::get_listit_instances:::" smarty="backend" no_collapse='true'}
…und im Body dann:
{if $liste != '' }{cms_module module=$liste}{/if}
Im Plugins Ordner (function.get_listit_instances.php):
<?php
function smarty_function_get_listit_instances($params, &$template)
{
if(!$li = &cms_utils::get_module('ListIt2'))
return;
$delimiter = isset($params['delimiter']) ? $params['delimiter'] : '|';
$ret = array();
$modules = $li->ListModules();
foreach($modules as $mod)
$ret[$mod->module_id] = $mod->module_name;
return implode($delimiter, $ret);
}
?>
Das hat bisher alles super funktioniert. Meine PHP und Smarty-Fähigkeiten sind leider sehr begrenzt. Ich Schlaumeier dachte mir, ich mach einfach aus allen ListIt2 bzw. ListIt ein LISE und hab sogar ECB2 dabei berücksichtig (ich hoff zumindest das war richtig).
Also...
Aufruf im HTML-Template:
Außerhalb vom Body:
{content_module module="ECB2" label="Liste" block="Listen" field="dropdown" values="keine Liste | :::get_lise_instances:::" smarty="backend" no_collapse="true" assign="liste"}
Im Body dann schließlich:
{if $liste != '' }{cms_module module=$liste}{/if}
Dann im Plugnis-Ordner (function.get_lise_instances.php):
<?php
function smarty_function_get_lise_instances($params, &$template)
{
if(!$li = &cms_utils::get_module('LISE'))
return;
$delimiter = isset($params['delimiter']) ? $params['delimiter'] : '|';
$ret = array();
$modules = $li->ListModules();
foreach($modules as $mod)
$ret[$mod->module_id] = $mod->module_name;
return implode($delimiter, $ret);
}
?>
Leider kommt da zwar ein Dropdown aber nur mit dem Inhalt „keine Liste|:::get_listit_instances:::“ ?? Ich dachte mir, einer der sich damit auskennt, dürfte damit keine Schwierigkeiten haben. Das alte PHP hat mir damals NAN zukommen lassen in folgendem Beitrag.
http://www.cmsmadesimple.de/forum/viewtopic.php?id=4776
Es ging ursprünglich um eine automatische Seiten-Spezifische ListIt-Listen-Anzeige mittels Page-Alias. Das funktionierte übrigens sogar mit CMSMS2 einwandfrei. Weiter unten wurde ich dann frech und hab noch das ListIt2-Dropdown erbettelt
Vielleicht hilft das ja?
Gruß
Beitrag geändert von parsec (28. Dezember 2017 19:04)
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#2 06. Januar 2018 17:58
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
Re: LISE automatisches Auswahl-Dropdown erstellen
keiner ne Idee?
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#3 06. Januar 2018 20:35
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: LISE automatisches Auswahl-Dropdown erstellen
Leider kommt da zwar ein Dropdown aber nur mit dem Inhalt „keine Liste|:::get_listit_instances:::“ ??
Das bringt mich auf den Gedanken, dass mit dem Plugin etwas nicht stimmt. Gerade geschaut - die Funktion ListModules ist auch in LISE drin.
Ersetz mal darin das
<?php
function smarty_function_get_lise_instances($params, &$template)
{
if(!$li = &cms_utils::get_module('LISE'))
durch das
<?php
function smarty_function_get_lise_instances($params, &$smarty)
{
if(!$li = \cms_utils::get_module('LISE'))
Mehr kann ich dir dazu nicht sagen (arbeite nicht mit der V2 )
Offline
#4 07. Januar 2018 18:57
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
Re: LISE automatisches Auswahl-Dropdown erstellen
Danke für den Tipp, einen Versuch war es wert, aber leider hat das nichts gebracht. Bisher war ich mit der Version 1 ja auch zufrieden und kann auch größtenteils noch damit arbeiten. Nur früher oder später muss man ja wohl umsteigen, oder seht Ihr das anders? Wie gesagt ich hab schon mehrfach von meinen Kunden hören müssen dass Ihnen das PHP5.6 nun extra berechnet wird. Manche fragen/verlangen auch PHP7.
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#5 07. Januar 2018 19:32
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: LISE automatisches Auswahl-Dropdown erstellen
Danke für den Tipp, einen Versuch war es wert, aber leider hat das nichts gebracht.
Schade, aber wie gesagt - hab da auch nur in die aktuellen Sourcen geschaut, wie es da gelöst ist. Hab für die 2.x nicht einmal mehr ein Test-Setting...
Wichtig wäre, erst einmal den UDT zu einer Ausgabe zu bewegen. Vorher brauchst du über ECB gar nicht nachdenken. Hast du das schon mal probiert?
Nur früher oder später muss man ja wohl umsteigen, oder seht Ihr das anders?
Wie heisst es in der EDV so schön ... "Never change a running system" .
Und was die 2.x betrifft, hatte es @NaN so schön auf den Punkt gebracht
http://www.cmsmadesimple.de/forum/viewt … 744#p40744
Abgesehen davon ist eine Aktualisierung auf die 2.x kein reguläres Update, was in kurzer Zeit erledigt ist, sondern mit richtig Arbeit verbunden (die GCB's gibt's so nicht mehr, neues Menü Modul etc.). Das muss man einem Kunden natürlich auch sagen.
Ist aber meine ganz persönliche Meinung...
Wie gesagt ich hab schon mehrfach von meinen Kunden hören müssen dass Ihnen das PHP5.6 nun extra berechnet wird.
Das ist DEFINITIV haushohe Geldschneiderei, zumindest zum gegenwärtigen Zeitpunkt. Würde ich auch ganz klar so vermitteln und notfalls einen Umzug vorschlagen. Bis Dezember 2018 gibt's noch Sicherheits-Updates für PHP 5.6:
http://php.net/supported-versions.php
Also keinerlei Gefahr im Verzug o.ä.
Bei all-inkl.com ist im Premium-Paket für 9,90 EUR von PHP 5.5 (!!!) bis 7.1 alles drin (yup, so ein Paket hab ich dort). Und so wie ich das Unternehmen kenne, ist das bei dem (kleinsten) Privat-Tarif für 4,95 EUR nicht anders.
Manche fragen/verlangen auch PHP7.
Vllt hilft dir ja auch das weiter
Offline
Seiten: 1