Return to Snippet

Revision: 22934
at January 26, 2010 06:08 by bes0nic


Updated Code
Eine kleine Verbesserung waere es noch, wenn der HTML-Code soweit 
wie moeglich im Template (statt der PHP-Datei) bleibt. Das geht so:

1. Die folgende Aenderung aus der obigen Anleitung ignorieren:
$content_string = '<ul class="navilist">';

2. Dies auch ignorieren:
$content_string .= '</ul>';

3. Damit das <ul> trotzdem erzeugt wird, kommt es ins Template (also in die
 box_content.html), und zwar genau um den Platzhalter {$BOX_CONTENT} herum. 
Das sieht dann so aus:

	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>

4. Damit nun bei einer leeren Liste nicht trotzdem das <ul> ausgegeben wird, 
muss im Template noch eine Abfrage hinein. Bei einer leeren Liste waere 
{$BOX_CONTENT} leer, also kann man diesen Platzhalter einfach fuer eine 
if-Abfrage nutzen:

{if $BOX_CONTENT}
	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>
{/if}

5. fertig!
P.S.: Natuerlich kann die if-Abfrage auch ganz am Anfang des Template stehen 
und den kompletten HTML-Code umfassen. Somit wuerde bei einer leeren Liste 
nicht einmal mehr z.B. die Box-Ueberschrift angezeigt werden (welche m.E. 
sowieso sinnlos ist, wenn nach der Ueberschrift doch keine Liste kommt).

Revision: 22933
at January 26, 2010 06:08 by bes0nic


Updated Code
Eine kleine Verbesserung waere es noch, wenn der HTML-Code soweit 
wie moeglich im Template (statt der PHP-Datei) bleibt. Das geht so:

1. Die folgende Aenderung aus der obigen Anleitung ignorieren:
$content_string = '<ul class="navilist">';

2. Dies auch ignorieren:
$content_string .= '</ul>';

3. Damit das <ul> trotzdem erzeugt wird, kommt es ins Template (also in die box_content.html), und zwar genau um den Platzhalter {$BOX_CONTENT} herum. 
Das sieht dann so aus:

	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>

4. Damit nun bei einer leeren Liste nicht trotzdem das <ul> ausgegeben wird, 
muss im Template noch eine Abfrage hinein. Bei einer leeren Liste waere 
{$BOX_CONTENT} leer, also kann man diesen Platzhalter einfach fuer eine 
if-Abfrage nutzen:

{if $BOX_CONTENT}
	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>
{/if}

5. fertig!
P.S.: Natuerlich kann die if-Abfrage auch ganz am Anfang des Template stehen 
und den kompletten HTML-Code umfassen. Somit wuerde bei einer leeren Liste 
nicht einmal mehr z.B. die Box-Ueberschrift angezeigt werden (welche m.E. 
sowieso sinnlos ist, wenn nach der Ueberschrift doch keine Liste kommt).

Revision: 22932
at January 26, 2010 06:07 by bes0nic


Updated Code
Eine kleine Verbesserung waere es noch, wenn der HTML-Code soweit wie moeglich im Template (statt der PHP-Datei) bleibt. Das geht so:

1. Die folgende Änderung aus der obigen Anleitung ignorieren:
$content_string = '<ul class="navilist">';

2. Dies auch ignorieren:
$content_string .= '</ul>';

3. Damit das <ul> trotzdem erzeugt wird, kommt es ins Template (also in die box_content.html), und zwar genau um den Platzhalter {$BOX_CONTENT} herum. Das sieht dann so aus:

	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>

4. Damit nun bei einer leeren Liste nicht trotzdem das <ul> ausgegeben wird, muss im Template noch eine Abfrage hinein. Bei einer leeren Liste waere {$BOX_CONTENT} leer, also kann man diesen Platzhalter einfach für eine if-Abfrage nutzen:

{if $BOX_CONTENT}
	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>
{/if}

5. fertig!
P.S.: Natuerlich kann die if-Abfrage auch ganz am Anfang des Template stehen und den kompletten HTML-Code umfassen. Somit wuerde bei einer leeren Liste nicht einmal mehr z.B. die Box-Ueberschrift angezeigt werden (welche m.E. sowieso sinnlos ist, wenn nach der Ueberschrift doch keine Liste kommt).

Revision: 22931
at January 26, 2010 06:06 by bes0nic


Initial Code
Eine kleine Verbesserung wäre es noch, wenn der HTML-Code soweit wie möglich im Template (statt der PHP-Datei) bleibt. Das ist so möglich:

1. Die folgende �nderung aus der obigen Anleitung ignorieren:
$content_string = '<ul class="navilist">';

2. Dies auch ignorieren:
$content_string .= '</ul>';

3. Damit das <ul> trotzdem erzeugt wird, kommt es ins Template (also in die box_content.html), und zwar genau um den Platzhalter {$BOX_CONTENT} herum. Das sieht dann so aus:

	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>

4. Damit nun bei einer leeren Liste nicht trotzdem das <ul> ausgegeben wird, muss im Template noch eine Abfrage hinein. Bei einer leeren Liste wäre {$BOX_CONTENT} leer, also kann man diesen Platzhalter einfach für eine if-Abfrage nutzen:

{if $BOX_CONTENT}
	<ul class="navilist">
		{$BOX_CONTENT}
	</ul>
{/if}

5. fertig!
P.S.: Natürlich kann die if-Abfrage auch ganz am Anfang des Template stehen und den kompletten HTML-Code umfassen. Somit würde bei einer leeren Liste nicht einmal mehr z.B. die Box-�berschrift angezeigt werden (welche m.E. sowieso sinnlos ist, wenn nach der �berschrift doch keine Liste kommt).

Initial URL
http://www.gunnart.de/tipps-und-tricks/xtcommerce-quellcode-verbesserung-und-markieren-aktiver-content-seiten/#comment-105507

Initial Description
xt:Commerce - Quellcode-Verbesserung: Box mit Links zu Content-Seiten als valide XHTML-Liste ausgeben; Original von http://www.gunnart.de/tipps-und-tricks/xtcommerce-quellcode-verbesserung-und-markieren-aktiver-content-seiten/

Initial Title
xt:Commerce - Quellcode-Verbesserung: Content-Seiten als XHTML-valide Liste ausgeben

Initial Tags


Initial Language
PHP