Funktion the_content(): aufsplitten auf 2 neue Funktionen?

  • Hallo,

    ich bräuchte folgendes:

    Die Funktion the_content(): gibt momentan in Wordpress standardmäßig gleichzeitig das Bild und den Text des Beitrages aus und ich möcht das gerne aufgesplittet haben auf:

    * the_image() - soll dann nur das Bild herausgeben
    * the_text() - soll dann nur den Text herausgeben

    Das bräuchte ich, damit ich Designs besser anpassen kann :)

    • 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

  • was willst du den genau machen?

    vielleicht gibt es ja ein plugin, welches dir weiterhilft..aber das so aufzusplitten..hab ich selber noch nie gehört/gelesen/gesehen...:neutral:

  • get_the_content() liefert dir den Artikelinhalt zurück. Diesen kannst du in deinen selbstgeschriebenen the_image()- und the_text()-Funktionen weiterverarbeiten, z.B. aufsplitten per Regex. Die beiden Funktionen deklarierst du z.B: in der functions.php des Themes oder als Plugin.

  • Ich würde mal gesteigertes Interesse an der Funktion anmelden …
    ich suche nämlich auch eine Funktion, die mir nur den Text in voller Länge ausgibt; the_excerpt (Advanced Excerpt-Plugin) verwende ich bereits anderweitig.

    Bzw.:
    Ist es möglich, über "add_filter" einfach den IMG-Tag komplett auszublenden?

    Ich bräuchte das nämlich nur in der single.php, und nicht global.

  • zeitmeister: Dann würde ich es so wie marX vorgeschlagen hat, auch machen.. also in der index.php gibst du den Content nicht mit the_content() aus, sondern z.B. so:

    PHP
    <?php
    $filter = '#<img src=.+\.(jpg|png|gif|php)>#iU';
    $neuer_content = preg_replace($filter, '', get_the_content());
    echo $neuer_content;
    ?>


    In der single.php kannst du dann ja weiterhin the_content() nutzen.

    Ungetestet.

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Hi Alphawolf,

    ich habe den Code grade mal eingesetzt und sehe noch keinen Unterschied.
    Erklär mir doch mal was dazu:
    Mit der Zeile 2 filter definierst du, was der filter beinhaltet?
    Oder was er tut?

    Ich möchte ja nur inder single.php den <img>-tag ausblenden.
    Muss ich da nicht einen remove_filter verwenden?

  • Mein IMG-Tag eines Post-Bildes ist ja so aufgebaut:
    class, title, src, alt.
    Vielleicht muss ich das statt

    PHP
    $filter = '#<img src=.+\.(jpg|png|gif|php)>#iU';


    anders schreiben?
    Ich habs jetzt so versucht:

    PHP
    $filter = '#<img class=.+\, title=.+\, src=.+\.jpg, alt=.+\>#iU';


    Es funktioniert aber nicht. Steht ".+\" für alle Zeichen? Ist meine Komma-Trennung falsch?
    Hülfe … :-)

  • Der obige RegExp-Filtercode hat nichts mit WP an sich zu tun, sondern ist als Workaround anzusehen... zum Einsatz kommen ganz normale PHP-Mechanismen, die nicht von einer WordPress API oder so kommen.

    Leider bin ich nich so der RegExp-Guru, sonst könnte ich dir sicher besser mit dem Filter-Ausdruck helfen... :|

    wpseek.com - Die WordPress-Code-Suchmaschine

Jetzt mitmachen!

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