CMSms 1.3 und der Umstieg auf site_mapper

Deutschsprachiger Support für CMS Made Simple
Post Reply
LeisureLarry

CMSms 1.3 und der Umstieg auf site_mapper

Post by LeisureLarry »

Mit CMSms 1.3 wurde ja das alte sitemap-Tag als veraltet erklärt und der Umstieg auf site_mapper empfohlen. Leider führt dies zu einigen Fragen und Problemen.

Nehmen wir als Beispiel meine alte Einbindung des sitemap-Tags:

Code: Select all

{sitemap class="sitemap" initial="1" delimiter=" * " add_elements="index,aktuelles,kontakt,impressum"}
Alle vier von mir benutzten optionalen Parameter kennt site_mapper leider nicht. Der Parameter class sorgte dafür, daß der primäre ul-Tag diese Klasse bekam. Die Parameter delimiter und initial sorgten dafür, daß alle nicht Hauptmenüpunkte mit vorangestelltem Text gekennzeichnet werden konnten. Der Parameter add_elements sorgte dafür, daß man spezielle für das Menü unsichtbare Seiten zusätzlich anzeigen konnte.

Meine neue Einbindung mittels site_mapper-Tag sieht nun folgendermaßen aus:

Code: Select all

{site_mapper template="sitemap" show_all="1" excludeprefix="danke"}
Mittels template-Parameter benutze ich ein spezielles von mir angepaßtes Menü-Template für die Sitemap-Generierung. Mit dem show_all-Parameter zeige ich alle (außer den komplett deaktivierten) Seiten. Im Gegensatz zu früher kann ich hierbei jedoch nicht steuern, welche der für das Menü unsichtbaren Seiten ich zusätzlich sehen will, also muss ich alle unerwünschten Seiten mittels excludeprefix rausschmeissen (Komma-separierte Alias-Liste).

Code: Select all

{assign var=class value="sitemap"}
{assign var=delimiter value=" * "}
{assign var=initial value=1}

{if $count > 0}
<ul{if $class ne ""} class="sitemap"{/if}>
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string="<ul>" times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string="</li></ul>" times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}</li>
{/if}

<li>
{if $node->depth gt 1}
{if $node->hierarchy|regex_replace:"/(.*)\./":"" ne 1 || $initial eq 1}
{$delimiter}
{/if}
{/if}
<a href="{$node->url}">{$node->menutext}</a>

{/foreach}
{repeat string="</li></ul>" times=$node->depth-1}</li>
</ul>
{/if}
Anbei habe ich noch mein verwendetes Template eingefügt. Über die Value-Angaben in den ersten drei Zeilen kann ich steuern, welche Klasse mein primäres ul-Tag bekommen soll, welchen Delimiter meine Unterseiten bekommen sollen und ob die jeweils erste Unterseite ebenfalls den Delimiter bekommen soll.

Grüße aus Nürnberg
LeisureLarry (interiete.net)
Last edited by LeisureLarry on Tue Jun 17, 2008 12:24 pm, edited 1 time in total.
cyberman

Re: CMSms 1.3 und der Umstieg auf site_mapper

Post by cyberman »

Hallo Jan,

saubere Arbeit - besten Dank !
LeisureLarry

Re: CMSms 1.3 und der Umstieg auf site_mapper

Post by LeisureLarry »

Gern geschehen, brauchte es ja selber, damit ich endlich umsteigen konnte.

P.S. @cyberman:
Denke Du bist für die Übersetzung der site_mapper-Hilfe zuständig, da stimmt was mit der nachfolgenden Angabe nicht.

Code: Select all

<a href="listmodules.php?action=showmodulehelp&module=MenuManager">Hilfe des MenuManagers</a>
Die beiden HTMl-Entities " sollten vermutlich echte Gänsefüßchen sein, da zumindest bei mir ansonsten der Link nicht funktioniert.
Last edited by LeisureLarry on Tue Jun 17, 2008 1:12 pm, edited 1 time in total.
cyberman

Re: CMSms 1.3 und der Umstieg auf site_mapper

Post by cyberman »

Ja, da hat mich das Translation Center wieder mal gelinkt ... und ich weiß derzeit nicht, wie ich dies umgehen kann.

Werd den Link komplett raus nehmen ...
Post Reply

Return to “German - Deutsch”