Thumbnails mit post-thumbnails

  • Grüezi,
    nach eurer tollen Hilfe neulich mit den Links stellt sich mir nun schon wieder eine neue Frage, diesmal bezüglich der Thumbnails.
    Ich habe (WP3.0.1, Theme: fifty-fifth-street, url: detailgetr.eu) über die interne WP-Funktion post-thumbnails versucht, Thumbnails eines der im Beitrag vorhandenen Bilder zu erzeugen und auf der Home-Page auszugeben. Soweit funktioniert es auch, allerdings werden zusätzlich auch die Bilder im Beitrag bis zum more-tag auf der Home-Page in voller Größe angezeigt. Kriege ich die irgendwie weg, ohne sie hinter das more-tag setzen zu müssen? Der Artikel sollte nämlich schon mit dem Bild beginnen, auf der Home-Page sollte es aber eben nicht zu sehen sein :???:

    edit: Ich habe mal einen Screenshot gemacht, um die Problematik zu erläutern. Das große Bild ist im Artikel als Bild vorhanden und wird auch auf der Hauptseite angezeigt (soll es aber nicht), weil es vor dem more-tag steht (und da aber auch stehen soll). Das kleine Bild ist eben der Thumbnail, der da auch sein soll.

    Einmal editiert, zuletzt von zoomed (27. Dezember 2010 um 12:32)

    • 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

  • Lies dir mal den FAQ-Artikel bzgl. the_excerpt() durch: http://faq.wordpress-deutschland.org/keine-bilder-k…iv-the_excerpt/

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Danke schonmal, auf the_excerpt war ich auch schon anderweitig gestoßen, hatte ich jetzt aber gar nicht mit meinem Problem in Verbindung gebracht. Heißt das, ich habe praktisch nur die Wahl zwischen the_content, wo mir das Bild nervigerweise dazwischenhaut und the_excerpt, wo dann nicht nur das Bild, sondern auch die Links und sonstigen Formatierungen fehlen?:???:

  • Du könntest the_excerpt() nutzen und über deine functions.php bestimmen, was über the_excerpt() angezeigt werden soll:

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Prima, das geht schon sehr in die Richtung Perfekt:-D
    Habe nur noch 2 kleinere Fragen: Einerseits, ob man die Zeichenanzahl bei the_excerpt über das more-tag steuern lassen kann, weil eine feste Zeichenanzahl natürlich im einen Fall zu wenig und im anderen Fall zu viel Inhalt enthalten kann und andererseits scheitere ich gerade daran, dass Thumbnail dazu zu bewegen, links zu floaten. Imho müssten die Thumbnails die Klasse

    Code
    img.attachment-post-thumbnail wp-post-image

    haben und dementsprechend mit float:left; dazu bewegt werden können. Tun sie aber nicht... :oops:
    Ich werde definitiv meine CSS-Kenntnisse noch mal wieder auffrischen und php anfangen zu lernen, wenn ich demnächst ein wenig mehr Zeit habe:smile:

    edit: Zumindest den letzten Teil habe ich inzwischen hinbekommen. Mit the_excerpt bin ich aber immer noch nicht ganz glücklich, auch weil es verschiedene Formatierungen wie beispielsweise Absätze immer noch verschluckt oder, wenn ich die Zeichenzahl zu hoch einstelle, am Ende des Beitrags Mist ausgibt. Gibt es wirklich keine Lösung, wie man einfach mit the_content die Bilder ausblenden kann?

    Einmal editiert, zuletzt von zoomed (28. Dezember 2010 um 19:01)

  • okay, wenn's mit the_excerpt() so kompliziert für dich ist, dann schau doch z.B. mal hier: http://forum.wordpress-deutschland.org/design/42159-f…funktionen.html

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Ich denke, das ist auf jeden Fall die richtige Richtung. Ich hatte in der Zwischenzeit natürlich auch noch selber weitergesucht und war auch auf diesen Thread und andere gestoßen und habe dabei hier folgenden Code entdeckt:

    PHP
    <?php echo apply_filters('the_content', preg_replace('/<img ([^>]*)>/', '', get_the_content())); ?>

    Er ist also leicht verschieden zu dem Code aus dem anderen Thread, funktioniert bei mir allerdings besser (bei dem anderen Code kommt es zu Formatierungsproblemen).
    Ich versuche gerade herauszukriegen, was der Code überhaupt heißt und wie ich auch die Bildunterschriften noch entfernt bekomme.

    Wenn ich alles richtig verstanden habe, sucht der Code mit einem Filter nach Gemeinsamkeiten von [COLOR=DarkOrchid]/<img ([^>]*)>/[/COLOR] und [COLOR=DarkOrchid]get_the_content()[COLOR=Black] und gibt dann [COLOR=DarkOrchid]nichts[/COLOR][/COLOR][/COLOR] an der Stelle aus, wo [COLOR=DarkOrchid]/<img ([^>]*)>/[COLOR=Black] stand, entfernt also den Inhalt. [COLOR=Black]Ist dann das [COLOR=DarkOrchid]apply_filters[/COLOR] dafür zuständig, [COLOR=DarkOrchid]the_content[/COLOR] auszugeben, nachdem der [COLOR=DarkOrchid]preg_replace[/COLOR] durchgelaufen ist? Und wie würde ich den Code am besten erweitern, damit auch die Bildunterschriften gefiltert werden? Und was haben bei den Image-Tags im obigen Beispiel bzw. im anderen Thread die Unterschiede zu bedeuten?
    Ich will ja schließlich auch was lernen und nicht mehr nur c&p benutzen :)
    [/COLOR][/COLOR][/COLOR]

  • Dein Filter preg_replace durchsucht get_the_content() nach /<img ([^>]*)>/ und ersetzt es mit '' (nix)
    http://php.net/manual/de/function.preg-replace.php

    apply_filters fügt dann deinen o.g. Filter dem the_content hinzu und gibt das ganze dann durch das echo aus.
    http://codex.wordpress.org/Function_Reference/apply_filters


    Zitat

    [COLOR=DarkOrchid][COLOR=Black][COLOR=Black]Und wie würde ich den Code am besten erweitern, damit auch die Bildunterschriften gefiltert werden?[/COLOR][/COLOR][/COLOR]

    Könnte, so auf die schnelle ungetestet, wie folgt funktionieren:

    PHP
    <?php
    $text = get_the_content(); //setzt get_the_content() in eine Variable
    $text = preg_replace('/<img ([^>]*)>/', '', $content); //durchsucht die Variable nach dem img-Tag und ersetzt es mit nichts
    $text = preg_replace('/\[caption.*\[\/caption\]/', '',$content); //duchsucht erneut die schon einmal gefilterte Variable nach caption und ersetzt auch dies mit nichts
    echo apply_filters('the_content', $text); //wendet die 2x gefilterte Variable auf the_content an und gibt das ganze durchs echo aus
    ?>

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Der Code kann in die functions.php deines Themes gesetzt werden.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]


  • Könnte, so auf die schnelle ungetestet, wie folgt funktionieren:

    PHP
    <?php
    $text = get_the_content(); //setzt get_the_content() in eine Variable
    $text = preg_replace('/<img ([^>]*)>/', '', $content); //durchsucht die Variable nach dem img-Tag und ersetzt es mit nichts
    $text = preg_replace('/\[caption.*\[\/caption\]/', '',$content); //duchsucht erneut die schon einmal gefilterte Variable nach caption und ersetzt auch dies mit nichts
    echo apply_filters('the_content', $text); //wendet die 2x gefilterte Variable auf the_content an und gibt das ganze durchs echo aus
    ?>

    Danke für die Antwort! Ich habe also diesen Code in den functions.php eingesetzt, aber hat sich auf der Blogübersicht leider nichts geändert. Oder muss es in der functions.php an einer bestimmten Stelle liegen? :oops:

  • Was genau willst du bezwecken? Und wird im Startseitentemplate (index.php) überhaupt the_content() verwendet?

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Bei mir im index.php ist das <?php the_content();?> enthalten.

    http://www.dominikseemiller.de/page/2/

    Schau dir mal die Beitrage von "Gran Canaria 2010" und "Der 15-Minuten Spaziergang" an. Da kollidieren sich post_thumbnails und das "Startbild" des Artikels. Ich hätte gerne dass bei der Übersicht nur der post_thumbnail zu sehen ist.

  • Das Bild kommt aus der NGG? Bin mir nicht sicher ob da überhaupt der Filter greift. Versuch es doch mal stattdessen mit the_excerpt() in der index.php und dem Filter weiter oben (auch in der functions.php):

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Ja, das Bild kommt vom NGG, allerdings habe ich das Bild auch als normales Bild eingesetzt.

    Hmm, nach dem ich die Codes eingesetzt habe, kriege ich diese Fehlermeldung:

    Parse error: syntax error, unexpected T_ENDWHILE in /xxx/wp-content/themes/evolve/index.php on line 741

Jetzt mitmachen!

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