Was sind WordPress-Seitenleisten und was kann man dort platzieren? Vertauschen Sie die Seitenleiste und das Haupttextfeld. Fehlerhafter Seitenleistencode

Zuerst müssen wir gehen Funktionen.php unser Thema. Scrollen Sie die Seite bis zum Ende und davor ?> Fügen Sie diesen Code ein:

Function register_my_menus() ( register_nav_menus (array("header-menu" => "Menu v Shapke", "footer-menu" => "Menu v podvale")); ) if (function_exists("register_nav_menus")) ( add_action( „init“, „register_my_menus“); )

Schauen wir uns den Code ein wenig an. In Zeile 4 in Klammern danach Array Geben Sie das Menü an:
'Kopfzeilen-Menü'— Dieser Name wird benötigt, um das Menü auf der Seite anzuzeigen;
„Menü v Shapke“– der Name, der im Admin-Bereich im Abschnitt „Aussehen“ – „Menü“ angezeigt wird. Auf die gleiche Weise habe ich ein Fußzeilenmenü hinzugefügt. Durch Kommas getrennt listen wir so viele Menüs auf, wie Sie benötigen.

Code if (function_exists(‘register_nav_menus’))… prüft, ob das aktuelle unterstützt WordPress-Version Menüregistrierungsfunktion register_nav_menus(Die Funktion wird nur in sehr alten Versionen nicht unterstützt).

Beim Entwerfen dieser Vorlage habe ich das obere Menü in der Datei angegeben header.php , da dieses Menü auf der gesamten Website gleich ist. Gehen Sie zu header.php unseres Themes und fügen Sie den Code an der Stelle ein, an der sich das Menü befinden soll:

„Kopfzeilen-Menü“)); ?>

Ebenso für die Fußzeile:

„Fußzeilen-Menü“)); ?>

Jetzt müssen wir über das Admin-Panel ein Menü erstellen. Gehen Sie dazu zum Admin-Panel (yoursite.ru/wp-admin). Wählen Sie als Nächstes auf der Registerkarte „Darstellung“ die Option „Menü“.

Wir erstellen ein Menü mit beliebigem Namen. Ich habe ein Menü namens „Top Menu“ erstellt.


Wählen Sie nun im Block „Themenbereiche“ aus Menü v unser „Top-Menü“ und klicken Sie auf „Speichern“.

Erstellen einer Seitenleiste

Die Sidebar wird benötigt, damit darin Widgets eingefügt werden können. Widgets verwenden viele Plugins und wenn Ihr Theme keine Widgets unterstützt, müssen Sie das Problem dringend beheben.
Um eine Seitenleiste für WordPress zu erstellen, müssen Sie zu gehen Funktionen.php und eine neue Funktion hinzufügen.

If (function_exists("register_sidebar")) ( register_sidebar(array("name" => "Left Sidebar", "before_widget" => "

", "after_widget" => "
", "before_title" => "
", "after_title" => "
",)); }

Erläuterungen:
„Name“ ist der Name der Seitenleiste, der im Abschnitt „Darstellung“ – „Widgets“ angezeigt wird
'before_title' – vor dem Widget-Titel.
'before_widget' – was vor dem Widget angezeigt wird. Sie können ein Tag einfügen

  • aber ich bin es gewohnt, durchzuarbeiten
    . Durch
    Es wird einfacher sein, das CSS-Design der Seitenleiste anzupassen.
    „after_widget“ – was nach dem Widget angezeigt wird. Wenn Sie „before_widget“ verwendet haben
    (wie ich), dann geben Sie das schließende Tag an
    , falls verordnet
  • , dann verwenden wir
  • .
    „after_title“ – nach dem Widget-Titel.

    An der Stelle, an der sich die Seitenleiste befinden wird (ich habe diese sidebar.php ) einfügen:

    Gehen Sie zu Admin – „Darstellung“ – „Widgets“ und fügen Sie mehrere Widgets hinzu. CSS einrichten für schönes Design Seitenleiste. Während des Layouts wusste ich bereits, wie die Widgets angezeigt werden und habe das Design in style.css vorregistriert.

    Mehrere Seitenleisten

    Um mehrere Seitenleisten in „functions.php“ zu erstellen, müssen Sie einige Seitenleisten registrieren.
    So sieht es bei mir aus:

    If (function_exists("register_sidebar")) ( register_sidebar(array("name" => "Left Sidebar", "before_widget" => "

    ", "after_widget" => "
    ", "before_title" => "
    ", "after_title" => "
    ",)); register_sidebar(array("name" => "Rechte Seitenleiste", "before_widget" => "
    ", "after_widget" => "
    ", "before_title" => "
    ", "after_title" => "
    ",)); register_sidebar(array("name" => "Drei Seitenleisten", "before_widget" => "
    ", "after_widget" => "
    ", "before_title" => "
    ", "after_title" => "
    ",)); }

    Wie Sie bereits bemerkt haben, müssen Sie zum Hinzufügen einer weiteren Seitenleiste den folgenden Code hinzufügen:

    Register_sidebar(array("name" => "Tut Luboe Nazvanie", "before_widget" => "

    ", "after_widget" => "
    ", "before_title" => "
    ", "after_title" => "
    ",));

    Und um eine Seitenleiste auf der Seite anzuzeigen, müssen Sie den Code einfügen

    „Three Sidebar“ ist die dritte in der Liste der Seitenleisten, daher sieht der Ausgabecode wie folgt aus:

    Alle Seitenleisten werden über das Admin-Panel auf der Seite „Widgets“ konfiguriert. Es scheint, dass ich dir alles gesagt habe, was ich dir sagen wollte. Wenn Sie noch Fragen haben oder etwas nicht funktioniert, schreiben Sie in die Kommentare, wir helfen Ihnen auf jeden Fall weiter.

    Um die erforderlichen Plugins und Ergänzungen zu einer Seite in WordPress hinzuzufügen, müssen Sie lediglich das gewünschte Widget in die Seitenleiste im Admin-Bereich ziehen. Somit können auch Anfänger in der WordPress-Engine ihre Seitenleiste (und nicht nur diese) problemlos ändern.

    Manchmal bieten Theme-Entwickler mehrere mögliche Seitenleisten zur Auswahl an, in die Sie ein Widget ziehen können. Es gibt aber auch Themes, bei denen es 1-2 Seitenleisten gibt, die ausschließlich für die Bedürfnisse des Themes selbst verwendet werden (das heißt, Sie können dort keine neuen Widgets pushen).

    Und es kommt sogar vor, dass Sie einfach nur eine neue Seitenleiste hinzufügen wollten, um die Logik zu differenzieren oder ein anderes Design zu haben.

    Zuerst müssen Sie Ihre Seitenleiste registrieren. Dies kann in der Datei erfolgen Funktionen.php im Vorlagenordner. Einige Vorlagenentwickler erstellen spezielle Vorlagen. Funktion zum Registrieren von Seitenleisten. Zum Beispiel die Funktion twentyten_widgets_init() (). Das ist nicht wichtig. Suchen Sie einfach im Code nach der Stelle, an der die Registrierung erfolgt. Es sieht ungefähr so ​​aus:

    Register_sidebar(array("name"=>"Site-Beschreibung", "before_widget" => "

    ", "after_widget" => "
    "));

    Wie füge ich eine eigene Seitenleiste hinzu?

    Wenn Sie einen Codeabschnitt finden, in dem Seitenleisten registriert sind, können Sie Ihre eigenen auf ähnliche Weise registrieren. Als Beispiel:

    Register_sidebar(array("name" =>"Zweite Seitenleiste", "id" => "secondary-widget-area", "before_widget" => "

  • ", "after_widget" => "
  • ", "before_title" => "

    ", "after_title" => "

    ",));

    Name– der Name Ihrer Seitenleiste. Es wird im Admin-Bereich angezeigt.

    Ausweis- eindeutige Kennung. Sie benötigen es, wenn Sie es zur Seite hinzufügen (mehr dazu weiter unten).

    before_widget– Code/Text, der vor jedem Widget eingefügt wird.

    after_widget– entsprechend der Code/Text, der nach jedem Widget eingefügt wird.

    before_title– Code/Text, der vor dem Widget-Header eingefügt wird.

    after_title– Code/Text, der nach dem Widget-Header eingefügt wird.

    Nachdem Sie den obigen Code zur Datei hinzugefügt haben, speichern Sie ihn und gehen Sie zur Widgets-Seite im Admin-Panel. Jetzt können Sie, genau wie bei anderen Seitenleisten, die erforderlichen Widgets per Drag & Drop auf die neue ziehen. Damit diese Seitenleiste auf Ihrer Website angezeigt wird, müssen Sie die entsprechende Vorlagendatei öffnen, nämlich sidebar.php , und finden Sie den Code:

    Sie müssen es zwischen den öffnenden und schließenden Tags dort einfügen, wo Ihre Seitenleiste erscheinen soll. Es wird ungefähr so ​​sein:

    Für eine schöne Ausgabe können Sie diesen Code in einen Block einfügen:

    Wie Sie vielleicht schon bemerkt haben sekundärer Widget-Bereich Bei der Anzeige auf der Seite ist dies der Name der Seitenleiste. Es muss genau mit dem Namen übereinstimmen, der bei der Registrierung in der Datei angegeben wurde Funktionen.php . Bearbeiten Sie nun die Datei style.css Geben Sie der Seitenleiste das gewünschte Aussehen.

    Manchmal stößt man auf Themes, bei denen es nur eine Seitenleiste gibt und diese für die Bedürfnisse des Themes selbst verwendet werden und man dort keine neuen Widgets platzieren kann. Vielleicht mussten Sie eine bestehende Theme-Vorlage ändern und eine zusätzliche Seitenleiste hinzufügen, sagen wir, im Theme befindet sie sich links, Sie müssen aber rechts eine weitere hinzufügen.

    Die Lösung dieses Problems ist überhaupt nicht schwierig. Sie müssen lediglich kleine Änderungen an den Funktionen.php-Dateien des Themes und der Vorlagendatei der Seite vornehmen, auf der Sie die Seitenleiste platzieren möchten. So finden Sie heraus, welche Datei für die Seitenausgabe verantwortlich ist

    Zuerst müssen Sie eine neue Seitenleiste registrieren. Dies geschieht in der Datei „functions.php“ im Vorlagenordner. register_sidebar(array("name" =>"Neue Seitenleiste", "id" => "secondary-widget-area", "before_widget" => "
  • ", "after_widget" => "
  • ", "before_title" => "

    ", "after_title" => "

    ",));

    Fertig, eine neue Seitenleiste ist im Widget-Kontrollfeld erschienen. Jetzt müssen Sie es nur noch ein wenig optimieren Aussehen in der style.css-Datei (Sie können die Ansicht von einer vorhandenen kopieren)

    Was steht im Code?

    Name– der Name der Seitenleiste, er wird in den Widgets des Admin-Panels angezeigt.
    Ausweis- eindeutige Kennung. Wird beim Hinzufügen zur Seite benötigt.
    before_widget– Code oder Text, der vor jedem Widget eingefügt wird.
    after_widget– Code oder Text, der nach jedem Widget eingefügt wird.
    before_title– Code oder Text, der vor dem Widget-Titel eingefügt wird.
    after_title– Code oder Text, der nach dem Widget-Titel eingefügt wird.

    Achten Sie auf die ID, den Namen der Seitenleiste, in diesem Fall „secondary-widget-area“. Es muss genau mit dem Namen übereinstimmen, der bei der Registrierung in der Datei „functions.php“ angegeben wurde.

    Eine Seitenleiste ist ein Teil fast jeder Website und befindet sich normalerweise links, rechts vom Inhaltsbereich oder vor der Fußzeile. WordPress-Seitenleisten sind keine Ausnahme. Der einzige Unterschied besteht darin, dass in WordPress die Seitenleiste ein Bereich ist, in dem Widgets automatisch angezeigt werden. Sie können in WordPress eine unbegrenzte Anzahl von Seitenleisten erstellen, aber für dieses Beispiel werde ich zwei Seitenleisten links und rechts vom Hauptinhaltsbereich erstellen.

    Registrieren von WordPress-Sidebars

    Damit Seitenleisten im Admin-Panel angezeigt werden, müssen wir sie registrieren. Mit anderen Worten: Fügen Sie der Datei „functions.php“ den folgenden Code hinzu:

    /** * Seitenleisten registrieren. */ function fwbs_widgets_init() ( register_sidebar(array("name" => __("Rechte Spalte", "fwbs"), "id" => "sidebar-1", "description" => __("Rechte Spalte ", "fwbs"), "before_widget" => "

    ", "before_title" => "

    ", "after_title" => "

    ",)); register_sidebar(array("name" => __("Linke Spalte", "fwbs"), "id" => "sidebar-2", "description" => __("Linke Spalte in der Site footer“, „fwbs“), „before_widget“ => „ ", "before_title" => "

    ", "after_title" => "

    ",)); ) add_action("widgets_init", "fwbs_widgets_init");

    Analysieren Sie den obigen Code, um WordPress-Seitenleisten zu erstellen

    Es ist nicht so kompliziert, wie es auf den ersten Blick scheint.

    • "name" => __("Rechte Spalte", "fwbs") - der Name der Widget-Zone, Sie können einen beliebigen Namen schreiben, nur vorsichtig zwischen den Klammern, schauen Sie sich den Screenshot an, um zu sehen, wo er angezeigt wird;
    • „id“ => „sidebar-1“ – ID ist eine eindeutige Kennung, die der Seitenleiste zugewiesen wird; alle Seitenleisten müssen ihre eigene ID haben, die sich von anderen IDs unterscheidet;
    • "description" => __("Right side Column", "fwbs") – Beschreibung, ähnlich dem Namen der Widget-Zone;
    • "before_widget" => "
    • "after_widget" => "" ist das schließende HTML-Tag für den Seitenleistenbereich. Wie wir wissen, alles HTML-Tags, mit einigen Ausnahmen, müssen gepaart sein (Öffnen und Schließen);
    • "before_title" => "

      " – Der Widget-Titel wird mit der Klasse in ein H4-Tag eingeschlossen

      können Sie die Bedeutung der Überschrift H1, H2, H3, H4, H5, H6 ändern und eigene Klassen zuweisen;

    • "after_title" => "" - schließengepaartes Tag für den Widget-Titel.

    Nun gehen wir zum Admin-Panel, zum Abschnitt „Widgets“ und schauen uns das Ergebnis an. Hier ist ein Bild von dem, was ich bekommen habe:

    Mit diesem Code habe ich zwei WordPress-Widget-Zonen registriert, jetzt muss ich sie auf dem Bildschirm anzeigen.

    WordPress-Sidebar-Ausgabe

    Um Seitenleisten an einer beliebigen Stelle in der Vorlage anzuzeigen, ist es logisch, den folgenden Code an der richtigen Stelle zu schreiben:

    Einige Klarstellungen zum Code:

    • - PHP-Code, der den Befehl ausgibt: Wenn in der Seitenleiste unter id=sidebar-1 Widgets vorhanden sind, müssen diese angezeigt werden. Wenn keine Widgets vorhanden sind, wird die Seitenleiste nicht angezeigt.
    • - PHP-Code, der die Seitenleiste unter id=sidebar-1 an der Stelle aufruft, an der Sie sie im Vorlagencode angegeben haben.

    Aber wie Sie sehen können, in WordPress-Vorlagen Der Sidebar-Ausgabecode wird in separaten sidebar.php-Dateien platziert, und dann wird der Inhalt aus der sidebar.php-Datei an der gewünschten Stelle in der Vorlage ausgegeben. Da wir wissen, dass WordPress Inhalte dynamisch anzeigt und die Site-Vorlage aus mehreren Teilen besteht, ist einer ihrer Teile die Datei sidebar.php. Lassen Sie mich das tun.

    Erstellen der Datei sidebar.php

    Erstellen Sie eine Datei, zum Beispiel sidebar-right.php, geben Sie ihr einen Titel und fügen Sie den obigen Code ein. Alles in allem wird es so aussehen:

    Wie Sie dem Beispiel entnehmen können, habe ich den Code mit zusätzlichem HTML-Markup ergänzt. Um nun die Widget-Zone anzuzeigen, müssen Sie nur noch Folgendes an der richtigen Stelle schreiben:

    Für die linke Seitenspalte wird entsprechend eine Datei sidebar-left.php erstellt und an der richtigen Stelle im Template geben wir diese so aus:

    Wie sie sagen, finden Sie einen Unterschied im Code.

    Das war's, die Seitenleisten sind erstellt. Jetzt müssen Sie nur noch Markups für sie in der Vorlage erstellen und CSS-Stile hinzufügen.

    Eine Seitenleiste ist ein Teil fast jeder Website und befindet sich normalerweise links, rechts vom Inhaltsbereich oder vor der Fußzeile. WordPress-Seitenleisten sind keine Ausnahme. Der einzige Unterschied besteht darin, dass in WordPress die Seitenleiste ein Bereich ist, in dem Widgets automatisch angezeigt werden. Sie können in WordPress eine unbegrenzte Anzahl von Seitenleisten erstellen, aber für dieses Beispiel werde ich zwei Seitenleisten links und rechts vom Hauptinhaltsbereich erstellen.

    Registrieren von WordPress-Sidebars

    Damit Seitenleisten im Admin-Panel angezeigt werden, müssen wir sie registrieren. Mit anderen Worten: Fügen Sie der Datei „functions.php“ den folgenden Code hinzu:

    /** * Seitenleisten registrieren. */ function fwbs_widgets_init() ( register_sidebar(array("name" => __("Rechte Spalte", "fwbs"), "id" => "sidebar-1", "description" => __("Rechte Spalte ", "fwbs"), "before_widget" => "

    ", "before_title" => "

    ", "after_title" => "

    ",)); register_sidebar(array("name" => __("Linke Spalte", "fwbs"), "id" => "sidebar-2", "description" => __("Linke Spalte in der Site footer“, „fwbs“), „before_widget“ => „ ", "before_title" => "

    ", "after_title" => "

    ",)); ) add_action("widgets_init", "fwbs_widgets_init");

    Nun gehen wir zum Admin-Panel, zum Abschnitt „Widgets“ und schauen uns das Ergebnis an. Hier ist ein Bild von dem, was ich bekommen habe:


    Seitenleisten erscheinen jedoch nicht einfach im Front-End, auf der Vorderseite der Website, sondern müssen aufgerufen werden. Aber mehr dazu weiter unten.

    Analysieren Sie den obigen Code, um WordPress-Seitenleisten zu erstellen

    Es ist nicht so kompliziert, wie es auf den ersten Blick scheint.

    • "name" => __("Rechte Spalte", "fwbs") - der Name der Widget-Zone, Sie können einen beliebigen Namen schreiben, nur vorsichtig zwischen den Klammern, schauen Sie sich den Screenshot an, um zu sehen, wo er angezeigt wird;
    • „id“ => „sidebar-1“ – ID ist eine eindeutige Kennung, die der Seitenleiste zugewiesen wird; alle Seitenleisten müssen ihre eigene ID haben, die sich von anderen IDs unterscheidet;
    • "description" => __("Right side Column", "fwbs") – Beschreibung, ähnlich dem Namen der Widget-Zone;
    • "before_widget" => "
    • "after_widget" => "" — HTML-Tag, das den Seitenleistenbereich schließt. Wie wir wissen, müssen alle HTML-Tags, mit einigen Ausnahmen, gepaart sein (öffnen und schließen);
    • "before_title" => "

      " – Der Widget-Titel wird mit der Klasse in ein H4-Tag eingeschlossen

      können Sie die Bedeutung der Überschrift H1, H2, H3, H4, H5, H6 ändern und eigene Klassen zuweisen;

    • "after_title" => "" - schließengepaartes Tag für den Widget-Titel.

    Mit diesem Code habe ich zwei WordPress-Widget-Zonen registriert, jetzt muss ich sie auf dem Bildschirm anzeigen.

    WordPress-Sidebar-Ausgabe

    Um Seitenleisten an einer beliebigen Stelle in der Vorlage anzuzeigen, ist es logisch, den folgenden Code an der richtigen Stelle zu schreiben:

    Einige Klarstellungen zum Code:

    • – PHP-Code, der den Befehl ausgibt: Wenn in der Seitenleiste unter id=sidebar-1 Widgets vorhanden sind, müssen diese angezeigt werden. Wenn keine Widgets vorhanden sind, wird die Seitenleiste nicht angezeigt.
    • – PHP-Code, der die Seitenleiste unter id=sidebar-1 an der Stelle aufruft, an der Sie sie im Vorlagencode angegeben haben.

    Aber wie Sie sehen können, wird in WordPress-Vorlagen der Sidebar-Ausgabecode in separaten sidebar.php-Dateien platziert und dann wird der Inhalt aus der sidebar.php-Datei an der richtigen Stelle in der Vorlage ausgegeben. Da wir wissen, dass WordPress Inhalte dynamisch anzeigt und die Site-Vorlage aus mehreren Teilen besteht, ist einer ihrer Teile die Datei sidebar.php. Lassen Sie mich das tun.

    Erstellen der Datei sidebar.php

    Erstellen Sie eine Datei, zum Beispiel sidebar-right.php, geben Sie ihr einen Titel und fügen Sie den obigen Code ein. Alles in allem wird es so aussehen:

    Wie Sie dem Beispiel entnehmen können, habe ich den Code mit zusätzlichem HTML-Markup ergänzt.

    Um nun die Widget-Zone anzuzeigen, müssen Sie nur noch Folgendes an der richtigen Stelle schreiben:

    Für die linke Seitenspalte wird entsprechend eine Datei sidebar-left.php erstellt und an der richtigen Stelle im Template geben wir diese so aus:

    Wie sie sagen, finden Sie einen Unterschied im Code.

    Das war's, die Seitenleisten sind erstellt, jetzt müssen sie nur noch erstellt werden HTML-Vorlage Markieren und CSS-Stile hinzufügen, aber das ist eine ganz andere Geschichte. Ich habe jetzt einen neuen Abschnitt eröffnet

    gastroguru 2017