hi,
ich bin vor kurzem auf Smarty gestoßen und bin gerade dabei mein CMS darauf umzustellen...Bis jetzt klappt auch alles ganz gut...Aber bei der Navigation habe ich ein problem
Mein bisheriger Code sag wie folgt aus:
	
Die Templates dazu (nur für navigation_left, da sich die anderen ziemlich gleichen):
navigation_left.tpl
	navigation_left_box.tpl
	navigation_left_link_box.tpl
	navigation_lin.tpl
	
Als ich es umgestellt habe, habe ich die ganzen eval Funktionen durch Smarty Funktionen ersetzt
	
und die Variablen in den Templates in {} eingeschlossen. Aber es funktioniert nicht.
Kann mir vielleicht jemand sagen wie ich das machen muss, damit es klappt?
Smarty ist ziemlich genial...jedoch auch ziemlich schwer sich einzuarbeiten, weils doch sehr umfangreich ist
Würde mich über jede Antwort freue, die mir helfen könnte das Problem zu lösen.
Danke...=)
					ich bin vor kurzem auf Smarty gestoßen und bin gerade dabei mein CMS darauf umzustellen...Bis jetzt klappt auch alles ganz gut...Aber bei der Navigation habe ich ein problem
Mein bisheriger Code sag wie folgt aus:
PHP Code:
	
	
$mvNavDb=$mcDB->mfQuery("SELECT * FROM ".mTblNavCat." WHERE navcat_status='1' 
ORDER by navcat_order ASC");
while($mvNav=$mcDB->mfFetchArray($mvNavDb)){
    if($mvNav['navcat_align']==1){
        $mvSiteNavClassBody = 'navLeftBody';
        $mvSiteNavClassTable = 'navLeftTable';
        unset($mvSiteNavLeftHead);
        unset($mvSiteNavLeftBody);
        if($mvNav['navcat_box']!=""){
            include("navigation/".$mvNav['navcat_box']);
            $mvSiteNavLeftHead=$mvNav['navcat_title'];
            eval ("\$mvSiteNavLeftBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
            eval ("\$mvSiteNavLeftBox .= \"".mfGetTemplate("navigation_left_box")."\";");
        }
        else{
            $mvNavLinkDb=$mcDB->mfQuery("SELECT * FROM ".mTblNav." 
WHERE nav_cat='".$mvNav['navcat_id']."' 
ORDER by nav_order ASC");
            while($mvNavLink=$mcDB->mfFetchArray($mvNavLinkDb)){
                $mvSiteNavClassBody = "navLeftBody";
                $mvSiteNavClassTable = 'navLeftTable';
                eval ("\$mvSiteNavLeftBody .= \"".mfGetTemplate("navigation_link")."\";");
            }
            $mvSiteNavLeftHead=$mvNav['navcat_title'];
            eval ("\$mvSiteNavLeftBox .= \"".mfGetTemplate("navigation_left_link_box")."\";");
        }
    }
    elseif($mvNav['navcat_align']==2){
        ...
    }
    elseif($mvNav['navcat_align']==3){
        ...
    }
    elseif($mvNav['navcat_align']==4){
        ...    
    }
}
eval ("\$mvSiteNavBottom .= \"".mfGetTemplate("navigation_bottom")."\";");
eval ("\$mvSiteNavTop .= \"".mfGetTemplate("navigation_top")."\";");
eval ("\$mvSiteNavRight .= \"".mfGetTemplate("navigation_right")."\";");
eval ("\$mvSiteNavLeft .= \"".mfGetTemplate("navigation_left")."\";"); 
navigation_left.tpl
Code:
	
	$mvSiteNavLeftBox
Code:
	
	<table width="100%" class="navLeftTable" border="0" cellspacing="1" cellpadding="2"> <tr> <td class="navLeftHead" align="center"> $mvSiteNavLeftHead </td> </tr> <tr> <td class="navLeftBody"> $mvSiteNavLeftBody </td> </tr> </table> <img src="images/blank.gif" height="5" />
Code:
	
	<table width="100%" class="navLeftTable" border="0" cellspacing="1" cellpadding="2"> <tr> <td class="navLeftHead" align="center"> $mvSiteNavLeftHead </td> </tr> $mvSiteNavLeftBody </table> <img src="images/blank.gif" height="5" />
Code:
	
	<tr> <td class="$mvSiteNavClassBody"> <a href="$mvNavLink[nav_link]">$mvNavLink[nav_title]</a> </td> </tr>
Als ich es umgestellt habe, habe ich die ganzen eval Funktionen durch Smarty Funktionen ersetzt
PHP Code:
	
	
// z.B.
eval ("\$mvSiteNavLeft .= \"".mfGetTemplate("navigation_left")."\";");
// in
$mcTpl->assign("mSiteNavLeft", $mcTpl->fetch('navigation_left.tpl')); 
Kann mir vielleicht jemand sagen wie ich das machen muss, damit es klappt?
Smarty ist ziemlich genial...jedoch auch ziemlich schwer sich einzuarbeiten, weils doch sehr umfangreich ist
Würde mich über jede Antwort freue, die mir helfen könnte das Problem zu lösen.
Danke...=)
 
          


 
  
 

 musst du da wirklich includen? nein!
 musst du da wirklich includen? nein! 
							
						
Comment