art-d-sign
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 08.01.2006, 23:59   #1
TP-Junior
 
Registriert seit: Dec 2005
napsio macht alles soweit korrekt

Navigation auf Smarty umstellen?!


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:

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){
        
$mvSiteNavClassBody 'navRightBody';
        
$mvSiteNavClassTable 'navRightTable';
        unset(
$mvSiteNavRightHead);
        unset(
$mvSiteNavRightBody);
        if(
$mvNav['navcat_box']!=""){
            include(
"navigation/".$mvNav['navcat_box']);
            
$mvSiteNavRightHead=$mvNav['navcat_title'];
            eval (
"\$mvSiteNavRightBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
            eval (
"\$mvSiteNavRightBox .= \"".mfGetTemplate("navigation_right_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 "navRightBody";
                
$mvSiteNavClassTable 'navRightTable';
                eval (
"\$mvSiteNavRightBody .= \"".mfGetTemplate("navigation_link")."\";");
            }
            
$mvSiteNavRightHead=$nav['navcat_title'];
            eval (
"\$mvSiteNavRightBox .= \"".mfGetTemplate("navigation_right_link_box")."\";");
        }
    }
    elseif(
$mvNav['navcat_align']==3){
        
$mvSiteNavClassBody 'navTopBody';
        
$mvSiteNavClassTable 'navTopTable';
        unset(
$mvSiteNavTopHead);
        unset(
$mvSiteNavTopBody);
        if(
$mvNav['navcat_box']!=""){
            include(
"navigation/".$mvNav['navcat_box']);
            
$mvSiteNavTopHead=$mvNav['navcat_title'];
            eval (
"\$mvSiteNavTopBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
            eval (
"\$mvSiteNavTopBox .= \"".mfGetTemplate("navigation_top_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 "navTopBody";
                
$mvSiteNavClassTable 'navTopTable';
                eval (
"\$mvSiteNavTopBody .= \"".mfGetTemplate("navigation_link")."\";");
            }
            
$mvSiteNavTopHead=$mvNav['navcat_title'];
            eval (
"\$mvSiteNavTopBox .= \"".mfGetTemplate("navigation_top_link_box")."\";");
        }
    }
    elseif(
$mvNav['navcat_align']==4){
        
$mvSiteNavClassBody 'navBottomBody';
        
$mvSiteNavClassTable 'navBottomTable';
        unset(
$mvSiteNavBottomHead);
        unset(
$mvSiteNavBottomBody);
        if(
$mvNav['navcat_box']!=""){
            include(
"navigation/".$mvNav['navcat_box']);
            
$mvSiteNavBottomHead=$mvNav['navcat_title'];
            eval (
"\$mvSiteNavBottomBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
            eval (
"\$mvSiteNavBottomBox .= \"".mfGetTemplate("navigation_bottom_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 "navBottomBody";
                
$mvSiteNavClassTable 'navBottomTable';
                eval (
"\$mvSiteNavBottomBody .= \"".mfGetTemplate("navigation_link")."\";");
            }
            
$mvSiteNavBottomHead=$mvNav['navcat_title'];
            eval (
"\$mvSiteNavBottomBox .= \"".mfGetTemplate("navigation_bottom_link_box")."\";");
        }
    }
}
eval (
"\$mvSiteNavBottom .= \"".mfGetTemplate("navigation_bottom")."\";");
eval (
"\$mvSiteNavTop .= \"".mfGetTemplate("navigation_top")."\";");
eval (
"\$mvSiteNavRight .= \"".mfGetTemplate("navigation_right")."\";");
eval (
"\$mvSiteNavLeft .= \"".mfGetTemplate("navigation_left")."\";"); 
Die Templates dazu (nur für navigation_left, da sich die anderen ziemlich gleichen):

navigation_left.tpl
HTML-Code:
$mvSiteNavLeftBox
navigation_left_box.tpl
HTML-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" />
navigation_left_link_box.tpl
HTML-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" />
navigation_lin.tpl
HTML-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')); 
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...=)
napsio ist offline   Mit Zitat antworten


Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Navigation auf Smarty umstellen?! Navigation auf Smarty umstellen?!
« str_replace() | PDF öffnet sich nicht »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:06 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67