Kategorie laden statt Detailseite Artikel

    • 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

  • Wie kann ich denn erreichen, dass wenn jemand über Google o.ä. einen Artikel meines Blogs (http://www.xyz.de/Artikelname) aufruft dass er dann nicht auf der Detailseite des Artikels, sondern auf der entsprechenden Kategorieseite (http://www.xyz.de/Kategoriex) landet?

    Muss ich dass in der Index.php aufrufen und wenn ja wie? Oder gibt es einen andere Möglichkeit? Danke!

    1. dies schadet auf die Dauer bei Google sehr
    wenn Du die Kategorien in Google haben magst, dann schau, dass diese mehr Backlinks haben als der Einzelartikel

    lg

  • Danke für die Antwort.

    Ich möchte in Google schon die einzelnen Artikel haben.

    Jedoch möchte ich dass wenn ein einzelner Artikel direkt aufgerufen wird dass dann auch andere Elemente aus der Kategorie geladen werden.

    Beim Aufruf der Kategorieseiten über archive.php mache ich dies z.B. über

    if (is_category('xyz')) { ?> ....

    Genau der gleiche Befehl bewirkt jedoch in der index.php nichts. Wie ermittle ich denn dort zu welcher Kategorie der Artikel gehört der direkt aufgerufen wurde?

    Vielen Dank

  • Gibt es hierfür so etwas wie category=category(this), und wenn ja wie ist die Syntax?

    thx


    Du kannst innerhalb der Seite (linke oder rechte Seite oder unterhalb des Beitrags) einen zusätzlichen Loop durchführen. (Den Befehl query_posts vor dem Loop nicht vergessen ;-))

    VG Elke

    Edit:
    Übrigens: ich würde ein solches Verhalten mit einem sofortigen Abbruch quittieren. Ich hasse so etwas....

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

    Einmal editiert, zuletzt von redcat63 (14. April 2009 um 22:32)

  • ja schon, aber wieso kann ich keine Bedingung auf die category setzen, erkennt er diese gar nicht wenn ich den Artikel direkt aufrufe bzw. ist dann standardmäßig keine Kategorie gewählt?

    Bzw. wie kann ich in diesem Fall diese erkennen in meiner if (is_category('xyz')) { ?> .... bzw. mit welchem Befehl setzen so etwas in der Art category = category des aktuellen Artikels?

    Wisst ihr was ich meine?

    übrigens wegen Abbruch durch nutzer: Der gesuchte Artikel kommt schon, nur halt mit Zusatzinformationen die von der Kategorie abhängig sind..

  • Also:
    An die gewünschte Stelle setzt Du folgenden Code (oder so ähnlich)

    Weitere Infos zur Funktion get_the_category findest Du im Codex

    Der Code ist übrigens ungetestet, soll Dir im Wesentlichen auch nur zeigen, wie ich das Problem lösen würde. ;-)

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

    Einmal editiert, zuletzt von redcat63 (15. April 2009 um 10:38)

  • sorry, vielleicht stelle ich mich auch zu doof an (aber du schreibst ja zum Glück es gibt keine dummen Fragen :-), ich habe jetzt in meiner index.php

    <?php get_header(); ?>

    [COLOR=red]<?php
    $category = get_the_category();
    ?>[/COLOR]

    <div id="content">

    .....

    <?php
    if (is_category('xyz')) { ?>
    .....;
    <?php } ?>

    .....

    Und trotzdem zieht er da die Kategorie nicht, was er sonst in der archive.php macht. Oder muss ich is_category() durch irgendwas ersetzen wie if $category = xyz? Wie lautet die genaue Syntax?

    Danke für die letzte Rettung

  • Also:
    Wenn Du einen Artikel in der Single-Ansicht darstellst, kennt zunächst das Programm die dazugehörige Kategorie nicht. Im Normalfall ist sie auch absolut unwichtig für die Anzeige des Artikels.

    Aus diesem Grund kannst Du auch die Abfrage

    PHP
    <?php 
    if (is_category('xyz')) { ?>
     .....;
    <?php } ?>

    vergessen.


    In diesem Zusammenhang frage ich mich, wozu Du auf diese Art und Weise auf die Kategorie abfragen willst.
    Und deswegen und bevor wir ständig aneinander vorbei reden, beschreibe so exakt wie möglich, was Du wo vorhast und vergiss zunächst Deinen Ansatz. Denn sonst kann ich Dir nicht wirklich weiterhelfen, wobei ich eigentlich meine, dass Dir alle Werkzeuge zur Verfügung stehen müssten. Du musst sie nur an die richtige Stelle setzen.
    Vielleicht wäre es auch nützlich, wenn Du Dir die Funktionen im Codex genauer ansehen würdest. Zusätzlich wird auf der angegebenen Seite auf ähnliche Funktionen verlinkt. Vielleicht findest Du ja auch dort das Richtige?

    VG Elke

    Edit:
    Schau Dir mal die Hierarchie der Template-Dateien an. Ich habe den Eindruck (kann falsch sein), dass Dir nicht klar ist, wann welche php-Datei aufgerufen wird. Und das ist für die Lösung die Grundlage Deines Problems.
    Die Infos dazu findest Du entweder bei mir oder natürlich im Codex. ;-)

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

    Einmal editiert, zuletzt von redcat63 (16. April 2009 um 08:19)

  • Ok. Danke dass du so viel Geduld mit mir hast.

    Ich möchte - wenn ein Artikel direkt aufgerufen wird - dass ich dazu abhängig von der Kategorie dieses Artikels andere passende Elemente wie HTML-, Werbeblöcke, JavaScript etc. zusteuern kann. Ich nutze hier Wordpress mehr als CMS. Deswegen brauche ich auch in der index php auf jeden Fall eine if-Abfrage auf die Kategorie in der Art

    [COLOR=#000000][FONT=Courier New][COLOR=#0000cc]<?php [/COLOR][/FONT]
    [FONT=Courier New][COLOR=#006600]if ([/COLOR][COLOR=#0000cc]is_category[/COLOR][COLOR=#006600]([/COLOR][COLOR=#cc0000]'xyz'[/COLOR][COLOR=#006600])) { [/COLOR][/FONT][FONT=Courier New][COLOR=#0000cc]?>[/COLOR][/FONT]
    [FONT=Courier New].....;[/FONT]
    [FONT=Courier New][COLOR=#0000cc]<?php [/COLOR][COLOR=#006600]} [/COLOR][COLOR=#0000cc]?>[/COLOR] [/FONT][/COLOR]

    [COLOR=#000000][FONT=Courier New]Fällt dir eine Alternative ein?[/FONT][/COLOR]
    [FONT=Courier New][/FONT]
    [FONT=Courier New]Deine Template-Hierarchie ist übrigens sehr wertvoll, Danke. Löst aber glaube ich mein hier geschildertes Problem nicht da ich egal ob page.php oder index.php augferufen wird die Kategorie nicht mit übergeben wird wenn ich dich richtig verstehe?[/FONT]

    Einmal editiert, zuletzt von firnkes (16. April 2009 um 23:07)

  • Bin nach langem Ausprobieren selber draufgekommen, redcat63 Danke nochmal für deinen Tipp!:

    <?php
    if ($category[0]->cat_ID=xyz) { ?> ....

    Ganz einfach eigentlich wenn man die Syntax kennt..

Jetzt mitmachen!

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