WP als CMS mit Anpassung von Artikel in der Sidebar

  • Hallo zusammen,

    ich bin neu hier im Forum und hoffe ich finde hier ein paar Antworten und Hilfe auf meine Fragen.

    Aktuell nutze ich WP 2.9.1.
    Zur Einrichtung mache ich das lokal..funktioniert alles soweit..mit einem Standard-Theme.
    Ich möchte aber darüber hinaus mehr Funktionalität, bin aber nicht wirklich php erfahren. kopiere aber php schnipsel hin und her und schaue was passiert. was ist der beste Weg um zum Ziel zu gelangen?

    Was ich mir vorstelle:
    Ich habe eine horizontale Seiten-Navigation. (<?php list_pages_bugfix('sort_column=menu_order&title_li'); ?> )
    Die Seiten werden über templates generiert und steuern die sidebars.

    In einer Sidebar möchte ich Artikel anzeigen..wenn möglich aber nur Artikel die zur Page passen..
    Seite 1: zB Fotos: Kategorie Fotografie: Artikel Natur, Landscape etc..
    Seite 2: zB Portfolio: Kategorie Portfolio: Artikel Video, Animation etc..

    kann man das über Widgets lösen?
    (Advanced Category Excluder Widgets)

    meine Sidebar (oder auch 2) setze ich bisher über ein Widget ein.
    Aber in der Sidebar habe ich ja dann 2 Kategorieüberschriften: Fotografie und Portfolio..
    in beiden aber erscheinen alle Artikel in beiden Kategorien..sind also doppelt..

    was macht man da am besten..gibt es einen exclude-befehl wo man bestimmte artikel von der kategorie ausschliesst, oder ist es besser/leichter das ganze über templates zu steuern: also ein Fotografie-Template und ein Portfolio-Template..und dort wird dann jeweils das gewünschte Sidebar-Widget ausgeschlossen..also kann man überhaupt die Kategorien per php ansprechen..
    die Seitennamen ändern sich ja generell nicht und wenn doch kann man diesen code ja anpassen..

    zur info:ich habe ein webpaket M bei hosteurope und leider funktioniert die änderung der permalinks nicht..

    sorry..ich schreibe hier wild durcheinander..
    aber ich bin mit dem standard template mit blog-funktion nicht zufrieden..
    toll wäre eben wenn man die artikel so anzeigt wie man möchte und evtl. noch eine blogseite..

    wie macht ihr dass?
    baut ihr eure seite von grund auf neu..auf basis der classic oder default theme auf?

    wäre super wenn sich jemand findet der mir mit rat und tat zur seite stehen könnte..
    wie gesagt ich habe bereits der standard am laufen..aber bereits beim includieren von einer 2ten sidebar gibt es schon probleme..

    danke
    swu

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Klingt für mich etwas so, als solltest Du Dir ein möglichst flexibles Theme suchen. Es gibt auch kostenlose Themes, die den Premiujm-Themes in nichts nachstehen und sehr konfigurierbar sind Schau Dir auch mal ein paar Theme-Frameworks an. Da kann man dann ein vorhandenes Basistheme mit einem Childtheme sehr leicht individualisieren.

    Zitat

    sorry..ich schreibe hier wild durcheinander..

    Ja, das erhöht nicht gerade Deine Chancen auf eine sinnvolle Antwort, ehrlich gesagt. ;-) Nicht jeder liest sich so lange Texte wirklich durch (ich auch nicht, heute). Also zum einen bitte für Codeschnipsel die Code-Auszeichnung nutzen. Zum anderen für jedes Problem einen eigenen Thread aufmachen, für die Permalinksache etwa.

  • Hallo,

    Ammaletu : danke für deine Antwort.

    ok dann mal Stück für Stück.

    also wenn ich meine zweite Sidebar einbinden will klappt das nicht..
    das Widget ist aktiv und es werden auch beide im ADMIN-Bereich angezeigt.

    diese heißen bzw werden in der function so aufgelistet:
    PHP-Code:
    <?php
    if ( function_exists('register_sidebar') ) {
    register_sidebar(array('name' => 'sidebar1', 'before_title' => '<h3>', 'after_title' => '</h3>'));
    register_sidebar(array('name' => 'sidebar2', 'before_title' => '<h3>', 'after_title' => '</h3>'));
    }
    ?>

    wenn ich dann eine statische seite aufrufe und diese mit einem speziellen template versehe, schreibe ich in dieses template den aufruf für die sidebar die ich möchte..

    zB:

    leider zeigt er mir dann immer noch sidebar1.
    wie kann ich die verschieden sidebars einbinden?

    ist das so richtig:?
    get_sidebar kann man über die index.php aufrufen
    aber in der sidebar.php selbst kann man die sidebar2.php nur mit dem include-befehl importieren?

    oder könnte man in der index.php beide aufrufen:
    <?php get_sidebar('sidebar1'); ?>
    <?php get_sidebar('sidebar2'); ?>

    leider funzt es nicht..
    danke!

    Einmal editiert, zuletzt von swu (22. Februar 2010 um 23:21)

  • nun möchte ich mein problem mal konkreter beschreiben..da ich viel gelesen habe:

    ich habe eine hauptnavigationsleiste mit statische seiten..
    diese binde ich im header über wp_list_pages ein..

    nun würde ich gerne den jeweiligen statischen seiten eine sidebar zuweisen..
    und am besten die artikel den richtigen seiten zuordnen und andere ausschliessen..vielleicht geht es über widgets oder muss man dann mit exclude-befehlen arbeiten?

    cool wäre natürlich wenn man eine statische seite hat mit der dazugehörigem sidebar mit der kategorie der seite und den artikeln..alle anderen artikel werden automatisch augeschlossen, da sie zu anderen kategorien gehören.

    ich hoffe ich habe es verständlich genug beschrieben?
    danke!

  • [COLOR=#0000bb][/COLOR]

    Zitat

    wie kann ich die verschieden sidebars einbinden?

    Der get_sidebar-Befehl bindet die sidebar.php des Themes oder des Default-Themes ein:
    http://codex.wordpress.org/Include_Tags#The_Sidebar_Template

    Aber wie man hier lesen kann, kann man dabei einen Namen übergeben:
    http://codex.wordpress.org/Function_Reference/get_sidebar

    get_sidebar('sidebar1') würde also sidebar-sidebar1.php im Theme suchen und einbinden.

    Wie Du das nun genau umsetzt kommt sehr auf Dein Theme an. Ich habe in meinem Blog z.B. auch zwei Sidebars, eine links und eine rechts. Im Quellcode stehen die beide aber nebeneinander, sie sind nur per CSS so platziert. Deswegen habe ich einfach nur eine sidebar.php, und die ruft dann da drin beide Sidebars auf. Mal verkürzt und ohne die Checks für ältere WPs oder die Nicht-Widget-Variante:


    Zitat

    nun würde ich gerne den jeweiligen statischen seiten eine sidebar zuweisen..
    und am besten die artikel den richtigen seiten zuordnen und andere ausschliessen..vielleicht geht es über widgets oder muss man dann mit exclude-befehlen arbeiten?

    cool wäre natürlich wenn man eine statische seite hat mit der dazugehörigem sidebar mit der kategorie der seite und den artikeln..alle anderen artikel werden automatisch augeschlossen, da sie zu anderen kategorien gehören.

    Tja, eine statische Seite hat aber keine Kategorie, normalerweise. Du kannst natürlich den Namen einer Kategorie in einem Benutzerdefinierten Feld speichern oder festlegen, dass der Seitenname einem Kategorienamen entsprechen muss oder so. Das kannst Du dann natürlich auch in ein Widget einbinden.

    Innerhalb eines selbstgeschriebenen Widgets kannst Du mit den Conditional tags prüfen, auf was für einer Seite Du bist, also z.B. is_page() für statische Seiten (siehe Codex). Das gleiche geht innerhalb der sidebar.php. Du könntest also entweder zwei Sidebars konfigurieren und je nach Seitentyp die ein oder die andere anzeigen. Oder Du baust eine einzige Sidebar, in der aber nicht immer alle Widgets angezeigt werden. Je nachdem, was weniger verwirrend ist. Für letzteres gibt es das Plugin "Widget Logic".

    Anleitungen zum Schreiben eines eigenen Widgets sollten sich finden lassen. Du könntest damit natürlich auch Standard-Widgets ersetzen. Also meinetwegen auf statischen Seiten die letzten 10 Artikel der Kategorie X ausgeben, ansonsten die letzten 10 Artikel aller Kategorien, und das dann statt des Standard-Widgets für die Letzten Artikel einsetzen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!