Post-Überschrift zentriert darstellen

  • Hallo zusammen,

    ich bin gerade (oder eigentlich seit langem schon) die Internet-Seite unseres Fußballvereins auf Wordpress umzustellen. Eine große Anzahl der Posts sind dabei die Spielberichte unserer Mannschaften. Dafür habe ich zahlreiche Kategorien angelegt, die alle das Wort "Spielberichte" im Namen haben. Wenn ein solcher Spielbericht-Post angezeigt wird, möchte ich die Überschrift des Posts zentriert dargestellt haben (allerdings nicht in der Kategorie-Ansicht, da soll die Überschrift nochmals anders angezeigt werden). Dazu habe ich in meinem Theme, welches ein Child Theme von "Twenty Eleven" ist, folgenden Filter in functions.php angelegt:

    function center_title($title) {[INDENT]$post_categories = wp_get_post_categories(get_the_ID());[/INDENT]
    [INDENT]foreach($post_categories as $c){[/INDENT]
    [INDENT=2]$cat = get_category($c);[/INDENT]
    [INDENT=2]if ((substr($cat->cat_name, 0, 13) == 'Spielberichte') && (!is_category()))[/INDENT]
    [INDENT=3]return "<div align=\"center\">".$title."</div>";[/INDENT]
    [INDENT=2]else[/INDENT]
    [INDENT=3]return $title;[/INDENT]
    [INDENT]}[/INDENT]
    }
    add_filter('the_title', 'center_title');

    Das ganze funktioniert im Prinzip auch, nur folgendes tritt auf: damit werden auch, sobald der Filter aktiv ist und greift, die Menüpunkte in meinem Menü zentriert, was ich eigentlich nicht haben will. Zeige ich z.B. einen Einzel-Post an, bei dem der Filter nicht greift, sind meine Menüpunkte normal links ausgerichtet, wie es im Twenty Eleven Standard ist. Zeige ich aber einen Post an, bei dem der Filter wirkt, werden auch die Menüpunkte zentriert. Das möchte ich nicht haben.
    Wer kann mir sagen was an meinem oben dargestellten Filter nicht okay ist und wie ich das korrigieren kann?
    Ich finde auch die Zentrierung mittels <div align="center"> nicht besonders elegant. Wie kann ich denn das über CSS-Klassen machen? Wie kann ich diese dynamisch meiner Post-Überschrift per Filter zuweisen und die Standard-CSS-Klasse des Themes in diesem Fall deaktivieren?

    Vielen Dank schon mal. :-)

    • 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

  • Ich dachte deshalb an einen Filter, weil die Post-Überschriften ja kategorie-abhängig zentriert werden sollen. Nicht alle sollen zentriert werden und selbst die, die z.B. als Single zentriert sind, sollen in der Kategorie-Übersicht nicht zentriert werden.

    Im Normalfall sehen die Post-Überschriften ja immer gleich aus. Wenn ich in den von Wordpress generieren HTML-Code schaue, dann sehe ich für die Post-Überschrift immer dieses Markup:

    <h1 class="entry-title">Post-Überschrift</h1>

    mehr nicht. Wenn ich da jetzt z.B. eine bestimmte CSS-Klasse im h1, z.B. "center-title" hätte, dann könnte ich es über eine CSS-Anweisung im Stylesheet meines Child Themes machen, das stimmt. Hab ich aber nicht. Wie krieg ich so was rein? Auch über einen Filter?

    Oder sehe ich etwas komplett falsch? Ganz so fit bin ich in Wordpress halt auch noch nicht. :-(

Jetzt mitmachen!

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