Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 03. August 2011 13:12
- nicmare
- Server-Pate
- Registriert: 15. Dezember 2010
- Beiträge: 1.314
- Webseite
[GELÖST] Smarty in UDT ausführen?
Ich möchte es einem Anwender die Handhabung eines GCBs erleichtern.
Da wollte ich den GCB mit dem UDT ersetzen und den GCB in dem UDT ausführen:
global $gCms;
$smarty = &$gCms->GetSmarty();
$gcbops=&$gCms->GetGlobalContentOperations();
$obj=&$gcbops->LoadHtmlBlobByName("showpages");
return $smarty->_eval($obj->content);
aber das klappt leider nicht.
wenn ich das mache, bekomme ich leider den normalen Inhalt inkl. {}
$smarty = &$gCms->GetSmarty();
$gcbops=&$gCms->GetGlobalContentOperations();
$obj=&$gcbops->LoadHtmlBlobByName("showpages");
return $obj->content;
Meine Projekte:
Dashcam-Test | Babyphone-Testberichte | Türspionkameras
Offline
#2 04. August 2011 22:24
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Smarty in UDT ausführen?
Hast du schon versucht, $obj->content einer Smarty-Variablen zuzuweisen
[== PHP ==]
$smarty->assign('GCB', $obj->content);
und dann erst in Smarty eval zu starten?
[== Smarty ==]
{eval var=$GCB}
Offline
#3 04. August 2011 22:25
- nicmare
- Server-Pate
- Registriert: 15. Dezember 2010
- Beiträge: 1.314
- Webseite
Re: [GELÖST] Smarty in UDT ausführen?
nee. ich will das ja nicht in smarty evaluieren sondern direk tbei der ausgabe.
damit der anwender nur noch ein kurzes UDT einfügen brauch und sich nicht das GCB merken muss.
Meine Projekte:
Dashcam-Test | Babyphone-Testberichte | Türspionkameras
Offline
#4 04. August 2011 22:31
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Smarty in UDT ausführen?
{eval} hat auch einen assign Parameter - könntest es damit auf {$GCBout} oder so reduzieren.
Offline
#5 04. August 2011 23:12
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: [GELÖST] Smarty in UDT ausführen?
Macht das wirklich einen so großen Unterschied?
{global_content name="Kontakt"} vs {Kontakt}?
Egal.
Geht das hier?
$gcbops =& cmsms()->GetGlobalContentOperations();
$obj =& $gcbops->LoadHtmlBlobByName("showpages");
$smarty =& cmsms()->GetSmarty();
$smarty->_compile_source('temporary template', $obj->content, $_compiled );
return $smarty->_eval('?>' . $_compiled);
oder das hier?
$gcbops =& cmsms()->GetGlobalContentOperations();
$obj =& $gcbops->LoadHtmlBlobByName("showpages");
$smarty =& cmsms()->GetSmarty();
$smarty->_compile_source('temporary template', $obj->content, $_compiled );
@ob_start();
$smarty->_eval('?>' . $_compiled);
$_contents = @ob_get_contents();
@ob_end_clean();
return $_contents;
Ist die Funktion cms_module_ProcessTemplateFromData() aus /lib/classes/module_support/modtemplates.inc.php. Bin mir nur bei dem @ob-Zeugs nicht sicher ob das nötig ist.
Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)
Offline
#6 04. August 2011 19:41
- nicmare
- Server-Pate
- Registriert: 15. Dezember 2010
- Beiträge: 1.314
- Webseite
Re: [GELÖST] Smarty in UDT ausführen?
die erste variante hat wunderbar geklappt
danke
Meine Projekte:
Dashcam-Test | Babyphone-Testberichte | Türspionkameras
Offline
Seiten: 1