it-swarm.dev

Benutzerfreundliches Zuschneiden von Post-Thumbnails?

Gibt es eine Möglichkeit, meine Benutzer den Zuschneidebereich eines Post-Thumbnails definieren zu lassen? Die Thumbnails sind immer vorhandene Post-Anhänge, ich würde lieber keinen zusätzlichen Anhang pro Thumbnail erstellen.

Die Post-Thumbnails sollten 200 x 100 Pixel groß sein und von einem der im Post verwendeten Bilder stammen. Wenn Sie in meiner idealen Welt auf den Link "Ausgewähltes Bild festlegen" klicken, erhalten Sie einen Überblick über die bereits enthaltenen Bilder. Wenn Sie auf eines dieser Bilder klicken, können Sie den Zuschneidebereich selbst definieren (verschieben oder die Größe ändern, aber beibehalten) das 2x1 Seitenverhältnis). Wenn Sie auf "OK" klicken, wird die neue Miniaturansicht des Beitrags mit dem ursprünglichen Anhang (z. B. im Feld "_wp_attachment_metadata['sizes']['post-thumbnail'] metadata") und nicht als neuer Anhang gespeichert. Die Verwendung eines Bildes, das bereits als Miniaturansicht für einen anderen Beitrag verwendet wird, sollte nicht zulässig sein oder zumindest eine Warnung auslösen.

Ich bin der Meinung, dass der mitgelieferte Bildeditor nicht meinen Anforderungen entspricht, da Sie alle Versionen des Bildes oder das normale Vorschaubild bearbeiten können, aber nicht nur das Post-Vorschaubild. Ich finde es auch etwas verwirrend zu wissen, welche Versionen ich bearbeite, sodass ich denke, dass meine Benutzer noch mehr Probleme damit haben werden.

Gibt es ein Plugin, das macht, was ich will, oder das ich problemlos auf meine Bedürfnisse erweitern kann?

Update: Beispiel UI

Die Benutzeroberfläche der Mac OS X Adressbuch-Bildauswahl gefällt mir sehr gut: Sie wählen ein Bild aus und ändern die Größe eines Miniaturzuschnitts mit festem Verhältnis über einen Schieberegler. Sie können das Basisbild auch verschieben. Sie können diese Idee auf mehrere Bildgrößen erweitern (ich habe beispielsweise einen post-thumbnail und einen post-thumbnail-1/2, der halb so groß ist). Lassen Sie den Benutzer die Größen, die er gerade bearbeitet, mit Kontrollkästchen auswählen und die entsprechenden Zuschneiderechtecke auf dem Bildschirm zeichnen.

The Address Book image cropper in action

32
Jan Fabry

Der Code ist immer noch ein Chaos, aber es scheint zu funktionieren, auch auf IE 8. Ich plane, ihn im Repository freizugeben, aber in der Zwischenzeit können Sie mit meiner aktuellen Version spielen. Um darauf zuzugreifen, klicken Sie auf "Bild bearbeiten", wenn Sie ein Bild hinzufügen oder bearbeiten. Es ersetzt den üblichen Bildeditor (sie sind sehr schwer zu kombinieren). Da der Großteil des Administrationsbereichs das reguläre Miniaturbild verwendet und meine aktuelle Version das Post-Miniaturbild bearbeitet, scheint der Code keine Auswirkung zu haben. Versuchen Sie es jedoch, indem Sie ein Post-Miniaturbild anzeigen, und Sie sollten sehen, dass es sich ändert.

Für dieses Plugin ist mein On-Demand Image Resizer erforderlich, was ebenfalls immer noch ein Chaos ist, um die tatsächliche Größenänderung durchzuführen.

Example image in the cropper

11
Jan Fabry

Verwenden Sie am besten einen auf Javascript basierenden Bildausschnitt und kombinieren Sie dann PHP mit ImageMagick oder Image Gd.

Es müsste in Ihre Funktionen oder als Plug-In geschrieben werden, da ich keine Standard-WordPress-Plug-Ins kenne, was überrascht.

Es gibt einen YUI-Bildausschnitt mit PHP-basierter Speicheroption http://developer.yahoo.com/yui/examples/imagecropper/conn_crop.html

Hier ist ein anderes Tutorial, wie man einen JQuery Cropper mit PHP benutzt
http://www.webmotionuk.co.uk/php-jquery-image-upload-and-crop/

Eine dritte Option, die dem obigen Link sehr ähnlich ist und denselben JQuery Cropper, aber unterschiedlichen Code verwendet. http://www.leonkessler.com/blog/?p=132

Hier ist ein anderer, der stattdessen jcrop von jquery verwendet: http://www.talkincode.com/jcrop-extension-implementation-in-php-932.html

Wer Lust auf ein neues Plug-In hat, dem würde das sicher gefallen :)

4
Wyck

Möglicherweise möchten Sie CSS verwenden, um eine große Flexibilität zu erzielen, Miniaturansichten in Ihrem Thema zu korrigieren (falls gewünscht) und Datei-Unordnung zu vermeiden:

http://www.seifi.org/css/creating-thumbnails-using-the-css-clip-property.html

Denken Sie daran, dass das gesamte Bild geladen wird. Verwenden Sie hierfür nicht Ihre 3-MB-Originale.

Update gemäß der Anfrage von Jan: Wenn Sie dynamisches Clipping wünschen, beachten Sie:

  • Erstellen Sie für user = administrator CSS über PHP. Sie können einfach eine Verknüpfung zu dem PHP-Programm herstellen, das die entsprechenden Einstellungen liest, und die Schnittparameter entsprechend anpassen.
  • Verwenden Sie für Benutzer = Besucher JavaScript, um die Beschneidungsparameter im Stilattribut des Bildes zu ändern.
  • Als weniger invasive Lösung sollten Sie einen Shortcode (über das großartige Plugin Shortcode Exec PHP) wie [thumb w = ?? h = ??] url [/ thumb], die Sie mit Inline-CSS in das entsprechende HTML-Tag übersetzen können.
1
Raphael

Ich glaube, Sie suchen dies: http://wordpress.org/support/topic/scissors-for-wordpress-29-also-works-on-30-hurray

Ich habe das noch nicht ausprobiert, aber es sollte Ihnen die Funktionalität bieten, die Sie suchen.

Die Original Plugin Seite hier. http://wordpress.org/extend/plugins/scissors/

Ich brauche das auch für ein Projekt, an dem ich arbeite.

1
tomcat23

Ich habe beschlossen, Thumbnails mit dem nativen "wp_get_attachment_image" zuzuschneiden ... hier ein Beispiel für eine Bildergalerie mit zugeschnittenen Thumbnails

http://wpworks.wordpress.com/2010/12/27/image-gallery-with-image-crop/

Freundliche Grüße

1
Alvaro Neto

Es gibt ein älteres Plugin namens WP Post Thumbnail, das wir manchmal verwenden. Es ist nicht perfekt und es gibt einige kleinere Fehler in der neuesten Version von WP (sie wurde seit 2008 nicht aktualisiert, daher ist sie nicht unbedingt zuverlässig). http://wordpress.org/extend/plugins/wp-post-thumbnail/

1
gabrielk

Vorausgesetzt, Sie haben bereits Unterstützung für Post-Thumbnails hinzugefügt, da Sie über die Option "Ausgewähltes Bild" sprechen.

In diesem Fall haben Sie die Möglichkeit, dem Upload-Array eine neue Bildgröße hinzuzufügen. Standardmäßig haben Sie also eine Miniaturansicht, eine mittlere und eine große. Im folgenden Codebit wird das vierte Bild zu diesem Sortiment hinzugefügt, basierend auf der von Ihnen gewünschten Größe. Dieses Codebit wird zu Ihrer functions.php-Datei hinzugefügt.

add_image_size( 'new_thumb', 200, 100, true );

"new-thumb" = der Name des neuen benutzerdefinierten Bildes
[...] 200 = Breite
"100" = Höhe
"true" = Option für harte Ernte. Dadurch wird ein Bild auf die festgelegte Breite/Höhe zugeschnitten. Ohne wird es nur proportional skaliert.

Um die neue Miniaturansicht auf einer Seite oder einem Post-Array anzuzeigen, fügen Sie Folgendes in Ihren HTML-Code ein

<?php the_post_thumbnail('new_thumb'); ?>
1
cnix

Ich denke, die ultimative Lösung für dieses Problem wäre, das Plugin von http://www.seoadsensethemes.com/wordpress-wp-post-thumbnail-plugin/ zu modifizieren.

und passen Sie es so an, dass alle benutzerdefinierten Bildgrößen, die in Ihrer Datei functions.php (mit add_image_size( 'new_thumb', 200, 100, true );) definiert wurden, automatisch verwendet werden und erhalten dann den Code, um den Link "Bearbeiten" zu ersetzen (oder zu erweitern), wenn Sie ein Bild ändern möchten.

Wenn Sie diesen Ansatz verwenden, kann WordPress weiterhin die entsprechenden Bildgrößen erstellen, wie es normalerweise der Fall ist. Wenn Sie jedoch den beschnittenen Bereich eines bestimmten Bilds speziell ändern möchten, haben Sie die Möglichkeit, dies zu tun, wodurch wiederum das automatisch generierte Bild für diese Größe ersetzt wird. Hmmm ... obwohl das wieder verwirrend klingt, fehlt genau das, was ich fühle.

Momentan glaube ich, dass das Plugin diese benutzerdefinierten Bildgrößen in einem benutzerdefinierten Feld innerhalb eines Beitrags speichert, anstatt den Beitrag für ein anwendbares Bild.

1