Mit Sprungmarken kannst du deine Besucher an eine gewisse Stelle innerhalb einer Seite fรผhren.
Du kennst sie vermutlich aus Inhaltsverzeichnissen (wie auch hier im Blog auf der linken Seite), bei denen du mit einem Klick zu einem bestimmten Abschnitt auf der Seite springst.
Damit das Springen nicht zu plรถtzlich und verwirrend ist, gibt es eine Funktion namens โSmooth Scrollโ, durch die es mehr ein automatisches und schnelles Scrollen ist, als ein Springen.
Wie du in WordPress Sprungmarken einbaust und zudem Smooth Scrolling hinzufรผgst, erfรคhrst du in diesem Tutorial.
Was ist eine Sprungmarke bzw. ein Anchor Link?
Mit Sprungmarken (oder auch Anchor Link) kannst du den Nutzer innerhalb einer Seite fรผhren. Mit einem Klick auf diesen Anchor Link springt die Seite zu einer anderen Stelle, beispielsweise einer bestimmten รberschrift.
Das ist vor allem bei sehr langen Seiten von Vorteil, da der Nutzer schnell zu der gewรผnschten Stelle kommt.
Es hat aber auch Vorteile fรผr SEO, da Google die Sprungmarken als sogenannte โSitelinksโ in den Suchergebnissen anzeigen kann, wodurch der Nutzer direkt von Google auf einen gewissen Abschnitt deiner Seite kommt.
Wenn du einen solchen Jumplink ausprobieren mรถchtest, klicke einfach im Inhaltsverzeichnis in der linken Sidebar auf einen der aufgelisteten Abschnitte.
So fรผgst du Sprungmarken ein
Grundsรคtzlich besteht eine Sprungmarke aus zwei Teilen:
Der Anchor / Anker (der eine HTML ID zugewiesen bekommt):
Der Anker ist einfach ein Name, den du diesem Abschnitt gibst. Er muss komplett kleingeschrieben sein und darf keine Leerzeichen oder Sonderzeichen enthalten (nutze Minus zur Trennung).
Der Link (der per #ID auf den Anchor verweist):
Du setzt einen normalen Link und trรคgst als Ziel deine vergebene ID mit einem davorstehenden # ein. Dadurch wird der normale Link zu einem Anchor Link.
Mit diesem Prinzip kannst du bei jedem Page Builder einen Anchor Link einbauen. Wรคhle hier, mit welchem Page Builder du arbeitest und springe (mit der Macht der Sprungmarken) zu der passenden Anleitung:
Im Gutenberg Editor
Zunรคchst erstellen wir den Anker. Dafรผr wรคhlst du den Block an der gewรผnschte Stelle aus, zu der gesprungen werden soll.
Jetzt schreibst du in der rechten Sidebar des Gutenberg Editors ganz unten unter โErweitertโ den Namen der Sprungmarke (in diesem Beispiel: name-der-sprungmarke) in das Feld bei โHTML-Ankerโ:
Anschlieรend wรคhlst du den Button, Text oder ein anderes Element aus, das den Link zum Anker bekommen soll. Jetzt hinterlegst du fรผr das Element als Link und gibst als Ziel den Namen des HTML-Ankers mit einem davorstehenden # an.
In unserem Beispiel heiรt der Link also: #name-der-sprungmarke
Das sieht dann in der Praxis so aus:
Nach dem Speichern kannst du den Anchor Link im Frontend anklicken und springst zu der gewรผnschten Stelle.
In Thrive Architect
Der Thrive Architect hat eine integrierte Funktion fรผr das Erstellen von Anchor Links.
Wรคhle einfach das Element aus, das anklickbar sein soll und wรคhle anschlieรend das Anker-Icon in den Main Options neben โButton Linkโ (bei Buttons und รคhnlichen) oder nutze in der Werkzeugleiste das Link-Icon und wรคhle โJumpLinkโ aus (bei Texten):
Nun musst du nur noch auf โSelect targetโ klicken und kannst das gewรผnschte Element innerhalb der Seite wรคhlen, auf das du springen mรถchtest:
Anschlieรend kannst du optional noch das โSmooth Scrollingโ aktivieren, indem du den Haken in der linken Sidebar bei โSmooth animationโ setzt. Dadurch springt die Seite nicht mehr ruckartig zur Sprungmarke, sondern scrollt nach unten / oben.
In Divi
In Divi musst du zunรคchst die ID fรผr den Anker hinterlegen (in Divi heiรt sie โCSS-IDโ) und kannst diese anschlieรend an der gewรผnschten Stelle verlinken.
Zunรคchst legen wir den Anker fest. Scrolle zu der Stelle, zu welcher der Anchor Link springen soll und bearbeite das dortige Element. Wechsle auf den Reiter โErweitertโ, รถffne den Tab โCSS-ID & Klassenโ und hinterlege in dem Feld fรผr die CSS-ID den gewรผnschten Namen fรผr die Sprungmarke:
Jetzt kannst du diese Sprungmarke an einer beliebigen Stelle verlinken. Hinterlege einen Link und gibt als Ziel den Namen der CSS-ID mit einem davorstehenden # an.
In unserem Beispiel heiรt der Link also: #name-der-sprungmarke
Das sieht dann in der Praxis fรผr einen Button so aus:
Mรถchtest du einen Text verlinken, kannst du den Link im gleichen Format in der Werkzeugleiste bei dem Link-Icon hinterlegen.
In Elementor
Um im Elementor auf eine gewisse Stelle innerhalb einer Seite zu verlinken, musst du den Anker bei einem Abschnitt oder einer Spalte hinterlegen.
Dafรผr wรคhlst du den Abschnitt oder die Spalte aus, zu der gesprungen werden soll. Anschlieรend wechselst du in den Reiter โErweitertโ und findest in dem gleichnamigen Tab das Feld fรผr โCSS IDโ. Hier gibst du nun den Namen deiner Sprungmarke ein:
Jetzt kannst du diese Sprungmarke an einer beliebigen Stelle verlinken. Hinterlege einen Link und gibt als Ziel den Namen der CSS ID mit einem davorstehenden # an.
In unserem Beispiel heiรt der Link also: #name-der-sprungmarke
Das sieht in Elementor dann so aus:
Mรถchtest du Text verlinken, nutze das Link-Icon in der Werkzeugleiste, nachdem du den gewรผnschten Text markiert hast. Platziere als Link den Namen der Sprungmarke mit einem # davor.
Smooth Scrolling einbauen (mit und ohne Plugin)
Wenn du deinen Anchor-Link eingebaut hast, springt die Seite beim Klick zwar an die gewรผnschte Stelle, das sieht aber sehr verwirrend aus fรผr den Nutzer.
Besser ist es, wenn die Seite zu der ausgewรคhlten Stelle scrollt. Dadurch weiร der Nutzer weiterhin, wo auf der Seite er sich befindet und verliert die Orientierung nicht.
Meistens wird fรผr den Einbau des Smooth Scroll in WordPress ein Plugin empfohlen. Das ist auch ein gutes Vorgehen, aber es geht per CSS noch besser und ganz ohne Plugin.
Ich beschreibe dir beide Vorgehensweisen, suche dir eine aus (meine Empfehlung ist die Nutzung des CSS):
In WordPress Smooth Scrolling per CSS einfรผgen
Mit wenigen Zeilen CSS, die du dir ganz einfach kopieren kannst, bekommst du Smooth Scolling in WordPress aktiviert.
Der einzige kleine โNachteilโ ist die Browserkompatibilitรคt. Wรคhrend das mit allen gรคngigen und aktuellen Browsern funktioniert, haben folgende (teils sehr veraltete) Browserversionen Probleme damit:
Google Chrome vor Version 74
Microsoft Edge vor Version 78
Mozilla Firefox vor Version 63
Apple Safari vor Version 10.1
โ Quelle
Fรผge den CSS Code am besten in deinem Customizer ein (โDesignโ โ โCustomizerโ โ โZusรคtzliches CSSโ). Mit dem folgenden Code aktivierst du das Smooth Scrolling:
/*aktiviert smooth scrolling*/
html {
scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
html{
scroll-behavior: auto;
}
}
Damit das verlinkte Element nicht ganz oben am Browserende klebt, empfehle ich dir zusรคtzlich diesen Code, um einen kleinen Abstand nach oben einzubauen. Dieser greift nur, wenn ein Element per Anchor-Link aufgerufen wird. Die eingestellten 50 Pixel kannst du natรผrlich nach Belieben รคndern:
/* legt den oberen abstand bei smooth scrolling fest */
*[id] {
scroll-margin-top: 50px
}
Wundere dich nicht, wenn der Customizer die Regeln rot hervorhebt, der Code funktioniert trotzdem:
In WordPress Smooth Scrolling per Plugin einfรผgen
Wie oben angesprochen, gibt es natรผrlich auch fรผr diese Funktionalitรคt kostenlose WordPress Plugins.
Wenn du Anchor Links und Smooth Scrolling fรผr ein Inhaltsverzeichnis nutzen mรถchtest, installiere dir das kostenlose LuckyWP Table of Contents.
Wenn du fรผr weitere Sprungmarken Smooth Scrolling per Plugin aktivieren mรถchtest, installiere dir das Plugin โSurbma | Smooth Scrollโ. Es hat keinerlei Einstellungsmรถglichkeiten. Du installierst und aktivierst es, anschlieรend ist der Smooth Scrolling Effekt bei all deinen Anchor Links aktiv.
Hallo Jonas!
Danke fรผr diesen Artikel. Ich nutze das neue Theme „Twentytwentythree. Wo kann ich dort das zusรคtzliche CSS einbauen? Vielen Dank fรผr Deine Antwort im voraus.
Moin Reiner,
du kรถnntest den Customizer รผber die direkte URL aufrufen
wp-admin/customize.php
und es dort einfรผgen.Alternativ mit einem Plugin wie Simple Custom CSS.
Grรผรe
Jonas
Das ist ja eine รผberraschende Antwort mit dem customize.php… Da das ja php ist, kann ich doch keinen CSS-Code einfach dazupacken. Ich bin ja froh, dass ich einigermaรen CSS coden kann, bei php habe ich echte Bauchschmerzen und Wissenslรผcken. Kannst du da etwas dazuschreiben, Jonas?
Die zugrunde liegende Frage ist eh eine, die mir schon รถfter begegnet ist. Ich arbeite mit dem MaxMegaMenu als Erweiterung, daher kann ich den customizer รผber den Reiter Design aufrufen, aber dort hinterlegtes CSS wird nicht erkannt/ausgefรผhrt. Grundlegende CSS Settings lassen sich also im Full Site Editing wirklich nicht hinterlegen ohne extra Plugin?
Moin Peter,
da haben wir ein Missverstรคndnis, das CSS gehรถrt nicht in die customize.php Datei. Wenn du ein Theme mit FSE nutzt, kannst du es am besten in die style.css Datei deines Child-Themes einfรผgen oder aber mit der Hilfe eines Plugins fรผr zusรคtzliches CSS.
Grรผรe
Jonas
Hey Jonas, wie wรคre es noch mit einem Ausblick in Richtung TOC-Plugins? Damit werden Sprungmarken automatisch gesetzt und die Artikel strukturiert.
Du erwรคhnst ja bereits LuckyWP Table of Contents, aber „vergisst“ die Vorzรผge dessen.
Zumindest ein kleiner Abschnitt dahingehend wรผrde mir gefallen.
Herzliche Grรผรe aus Hardt
Moin,
vielen Dank fรผr die Idee, ich habe es mir aufgeschrieben und schaue mal, wann ich dazu komme ๐
Grรผรe
Jonas
Hi Jonas,
danke fรผr die Anleitung hier!!!
Den Anker setzen, das ist mir soweit klar. Ich habe aber in der Folge das Problem, dass bei meiner Landingpage, nach dem Anklicken eines Menรผpunktes und dem Scrollen zur verlinkten Stelle, der zugehรถrige Menรผpunkt nicht aktiv dargestellt wird. Es gibt also leider nur den Hovereffekt, mehr aber auch nicht. Gibts dafรผr eine Lรถsung?
Beste Grรผรe, Leo
Moin Leo,
so etwas wird per JavaScript umgesetzt, setzt also etwas Programmierkenntnisse voraus. Meistens lรถsen das Themes von Haus aus, bei dir scheint das leider nicht der Fall zu sein. Da wรคre der Support des Themes oder ein Programmierer vermutlich der beste Ansprechpartner ๐
Hallo Jonas,
danke fรผr die Info. Dachte, das geht einfacher. Ist halt mit reinem Divi Builder erstellt. Dann werde ich wohl nochmal was googeln mรผssen ๐
Ich habe es nun mit diesem kleinen Script realisiert bekommen:
https://stackoverflow.com/questions/21770178/how-to-create-active-menu
Super Lรถsung ๐