Sprunglink setzen / Menü anzeigen
am 04.12.2008 - 11:32 Uhr in
Hallo,
in einem Theme habe ich ein weiteres Menü angelegt und dies wird als Block in einer neu definierten Region angezeigt. So weit, so gut. Nun möchte ich aber in diesem Menü einen Sprunglink setzen ("Zum Inhalt springen"). Leider funktioniert dies in Drupal5 nicht, da die Raute immer umgewandelt wird in %23. Bevor ich nun die relevante Stelle im Drupal-Kern hacke (drupal_urlencode), würde ich lieber anders verfahren:
Die von mir angelegte Navigation möchte ich ähnlich wie die primary_links auslesen, also in einer foreach Schleife. Vorher möchte ich den Sprunglink diesem Menü_array hinzufügen, damit alle Links in einer Liste stehen. Wie kann ich dieses Menü anzeigen, ohne dafür einen Block zu benutzen? Denn der Block gibt kein Array mehr aus, zu dem ich einen Link über das Theme hinzufügen könnte.
Ist mein Problem / Wunsch klar geworden?
Gruß
Dirk
- Anmelden oder Registrieren um Kommentare zu schreiben

Eventuell gibt es eine PHP-Funktion die das macht was Du willst
am 04.12.2008 - 12:56 Uhr
Ganz allgemein:
Das Hauptmerkmal eines Link ist die Sprungfunktion. Deshalb ist es sinnlos Sprunglink zu sagen. Vermutlich meinst Du Links in Zusammenhang mit einem Anker.
Zu einem Schimmel sagt wohl auch kaum Jemand weisses Pferd.
==================================================================
link setzen ("Zum Inhalt springen").
Erklaere bitte wohin der Pfad des Link verweisen soll. Was willst Du mit einem Pfad wie #23 ?
Bevor ich nun die relevante Stelle im Drupal-Kern hacke (drupal_urlencode), würde ich lieber anders verfahren
Eventuell gibt es eine PHP-Funktion die das macht was Du willst. Du musst ja nicht zwingend eine Drupal-Funktion verwenden.
Schlussendlich bleibt, sehe Dir doch im Forum von DC an den Uberschriften der einzelnen Kommentare an wie Drupal's Anker-Links aussehen - vor allem hinsichtlich des vollstaendigen Pfades.
Daraus ergibt sich auch das Drupal mit einer # in Links korrekt umgehen kann. Dein Problem ist lediglich das Du die Raute beim Administrieren der Menuepunkte verwendest.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Lösung gefunden
am 04.12.2008 - 13:46 Uhr
Habe für meinen Fall nun eine Lösung gefunden. Geholfen hat mir hierbei dieser Beitrag:
http://www.drupalcenter.de/node/12397
In der page.tpl.php sieht es nun so aus:
<div id="service-nav"><ul>
<li class="leaf">
<a title="<?php echo t("Jump to content"); ?>" href="#content"><?php echo t("Jump to content"); ?></a>
</li>
<?php
foreach($GLOBALS['_menu']['visible'][xyz]['children'] AS $mida){
print theme_menu_item($mida, NULL, TRUE);
}
?>
</ul>
</div>
Wobei für xyz die ID des Menüs eingesetzt wird. Mein Problem war ja, dass die Raute bei '#content' immer in %23 umgewandeln wurde. Und daher das Ziel des Links nicht gefunden werden konnte.
PS: Was ist verkehrt an Sprunglink? Hiermit sind im Bereich Barrierefreiheit Links gemeint, über die z.B. blinde Nutzer lange Navigationslisten überspringen können. Soweit ich weiß, ist 'Sprunglink' dabei ein Fachterm. Siehe hier:http://www.bik-online.info/info/entwicklung/struktur/fragen.php#sprunglinks