<?php
function smarty_function_get_co_template_alias($params, $template)
{
ob_start();
print_r($template->tpl_vars['content_obj']);
$html=ob_get_clean();
$finda='[mAlias:protected] =>';
$findb='[';
$wert='';
$hlen=strlen($html);
$xl=strlen($finda);
$p1=@stripos($html,$finda);
if ($p1 !==false && $hlen >= $p1+$xl) {
$p2=stripos($html,$findb,$p1+$xl);
if ($p2 !==false ) {
$wert=substr($html, $p1+$xl,$p2-$xl-$p1);
}
}
$template->assign('malias',$wert);
/*
* [mHierarchy:protected] => 00001
[mIdHierarchy:protected] => 1
[mHierarchyPath:protected] => home
[mMenuText:protected] => Home
[mActive:protected] => 1
[mAlias:protected] => home
[mOldAlias:protected] => home
[mCachable:protected] => 1
Als aktiven Code einsetzen um zu sehen was da enthalten ist.
print_r($template->tpl_vars['content_obj']);
*/
}
Man setze das dann in eine Seite ein:
{get_co_template_alias}{$malias}Und man erhält den Wert mAlias der eigentlich geschützt ist und nur mit der entsprechenden Klassenmethode aufrufbar gewesen wäre.
Man kann das Plugin natürlich aufbohren in dem man mittels Parameter den Suchwert und den Zuweisungsnamen bestimmt.
Keine Kommentare:
Kommentar veröffentlichen