KategorieID erkennen und speziellen Include-Text ausgeben

  • Hallo zusammen,

    ich bin am verzweifeln! Bitte helft mir, wenn ihr könnt :oops:

    Ich habe sehr, sehr viele Kategorien (über 200) und möchte abhängig von der Kategorie-Nummer einen eigenen Text includen, den ich in einer anderen PHP-Datei habe.

    Viele Blogeinträge sind mehreren Kategorien zugeorndet.


    Ein Beispiel:
    Mein Blogeintrag ist den Kategorien 114, 199 und 203 zugeordnet. Also habe ich u.a. die PHP-Dateien 114.php, 199.php und 203.php mit jeweils einer kleinen Beschreibung.


    Nun möchte ich, dass diese Texte aufgerufen werden und folgendes programmiert:

    PHP
    <?php
    foreach( get_the_category() as $category ) {
        if( ($category->cat_ID > 113) && ($category->cat_ID < 221) ) {
         echo '<? include ("' . $category->cat_ID . '.php"); ?>';
     }
    }
    ?>



    Wieso gibt er mir nacheinander nicht die Dateien aus? Bitte helft mir!!

    Danke!!!!!!

    • 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

  • [del]Function Reference/get all category ids WordPress Codex[/del]

    Sorry, hab dich glaube ich missverstanden...
    Du suchst wohl eher:
    http://de.php.net/file_get_contents

    PHP
    <?php
    foreach( get_the_category() as $category ) {
        if( ($category->cat_ID > 113) && ($category->cat_ID < 221) ) {
         echo file_get_contents($category->cat_ID . ".php");
     }
    }
    ?>


    PHP in PHP geht nicht. ;-)

    Wobei ich denke dass du möglicherweise noch den Pfad anpassen musst.

  • Nur, weil ich wahnsinnig neugierig bin ;-)
    Warum nutzt Du für die Beschreibung nicht das dafür vorgesehene Feld, das Dir beim Erstellen/Ändern von Kategorien zur Verfügung gestellt wird?

    Viele Grüße
    und einen schönen Sonntag
    Elke

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




  • Danke MarX für deine Hilfe. Irgendwie funktioniert es aber noch nicht so ganz :-)

    Folgende Fehlermeldung kommt:
    [FONT=Courier New][COLOR=#006600][COLOR=#000000]Parse error: syntax error, unexpected '}', expecting ',' or ';' in /var/[Pfadname steht hier]/description.php on line 19[/COLOR]
    [/COLOR][/FONT]
    [FONT=Courier New][COLOR=#006600][/COLOR][/FONT]
    [FONT=Courier New][COLOR=#006600]Also die Datei, die ich öffnen möchte, liegt im Ordner "Beschreibung". Müsste die Zeile dann nicht so heißen:[/COLOR][/FONT]
    [FONT=Courier New][COLOR=#006600][/COLOR][/FONT]
    [FONT=Courier New][COLOR=#006600]

    PHP
    <?php
    foreach( get_the_category() as $category ) {
        if( ($category->cat_ID > 113) && ($category->cat_ID < 221) ) {
         echo file_get_contents(http://[PFADNAME]/beschreibung/ $category->cat_ID . ".php");
     }
    }
    ?>




    Leider geht das aber nicht :-(
    Wo ist er Syntaxfehler?

    Liebe Grüße!!!
    [/COLOR][/FONT]

  • Also die Datei, die ich öffnen möchte, liegt im Ordner "Beschreibung".


    Was enthält die Datei eigentlich? PHP-Code oder Reintext/HTML?
    Hast du dir schon mal die von redcat63 angesprochene Kategoriebeschreibung angeschaut?

    Ansonsten ist Öffnen von Dateien per HTTP meist der schlechteste Weg, vor allem wenn du über das Dateisystem des Servers an die Datei kommst, oder die Datei Code enthält.

    Der Syntaxfehler bei dir kommt übrigens vermutlich vom nicht in Anführungszeichen eingeschlossenen String.

  • Was enthält die Datei eigentlich? PHP-Code oder Reintext/HTML?
    Hast du dir schon mal die von redcat63 angesprochene Kategoriebeschreibung angeschaut?

    Ansonsten ist Öffnen von Dateien per HTTP meist der schlechteste Weg, vor allem wenn du über das Dateisystem des Servers an die Datei kommst, oder die Datei Code enthält.

    Der Syntaxfehler bei dir kommt übrigens vermutlich vom nicht in Anführungszeichen eingeschlossenen String.





    Ich habe gerade gesehen, dass ich mich vertippert hatte *hehe* sorry! :-) also es funkioniert nun.

    PHP
    <?php
    foreach( get_the_category() as $category ) {
        if( ($category->cat_ID > 113) && ($category->cat_ID < 221) ) {
         echo file_get_contents("[PFADNAME]" . $category->cat_ID . ".php");
     }
    }
    ?>



    Gibt es die Möglichkeit da noch HTML-Code einzufügen? Der Text wird nun hintereinander wiedergegeben. Hätte gerne, dass dazwischen noch ein <br> steht und somit der Text in der nächsten Zeile jeweils ausgegeben wird.

  • Gibt es die Möglichkeit da noch HTML-Code einzufügen? Der Text wird nun hintereinander wiedergegeben. Hätte gerne, dass dazwischen noch ein <br> steht und somit der Text in der nächsten Zeile jeweils ausgegeben wird.


    Sicher:

    Code
    echo file_get_contents("[PFADNAME]" . $category->cat_ID . ".php")[COLOR="Red"] . '<br />'[/COLOR];

Jetzt mitmachen!

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