Bilder für ein Galerie-Plugin skalieren?

Ich arbeite gerade an einem Galerie-Plugin, das dem auf Posterous ähnlich ist. Ich brauche alle Bilder in der Galerie in einer sehr kleinen Thumbnail-Größe. Wahrscheinlich nur 50 Pixel breit.

Was ist die beste Vorgehensweise zum Implementieren der Bildgrößenanpassung?

1.) Hinzufügen der Bildgröße über add_image_size ()?
Diese Methode hat den offensichtlichen Nachteil, dass alle zuvor hochgeladenen Bilder nicht in der Größe verändert werden und nicht korrekt angezeigt werden können.

2.) Verwenden Sie timthumb.php oder andere Skripte, um die Thumbnails im timthumb.php zu verändern?

Solutions Collecting From Web of "Bilder für ein Galerie-Plugin skalieren?"

Es empfiehlt sich, immer interne WordPress-API-functionen zu verwenden, die bereits anstelle von externen Skripts vorhanden sind.

Sie müssten die Thumbnails selbst neu generieren, was nicht allzu schwierig ist, wenn Sie sich zum Beispiel selbst einen Vorsprung verschaffen und den Quellcode bestehender und ähnlicher Lösungen studieren;

  1. Thumbnails-Plugin neu generieren
  2. Einfache Bildgrößen

… das sind zwei Plugins, die genau das Richtige sind.

Auch das Folgende ist ein Auszug aus dieser Antwort zum selben Thema, der wiederum als Beispiel aus dem Regenerate Thumbnail Plugin als Beispiel genommen werden kann oder beispielsweise darauf basieren kann. In jedem Fall gilt der gleiche Vorschlag: “Sieh, wie andere es tun”

 function regenerateThumbnails() { $images = $wpdb->get_results( "SELECT ID FROM $wpdb->posts WHERE post_type = 'attachment' AND post_mime_type LIKE 'image/%'" ); foreach ( $images as $image ) { $id = $image->ID; $fullsizepath = get_attached_file( $id ); if ( false === $fullsizepath || !file_exists($fullsizepath) ) return; if ( wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $fullsizepath ) ) ) return true; else return false; } } 

Sorich87 sagte …

Hinweis: Diese function ist nicht sehr skalierbar. Es wird alle Bilder durchlaufen und die Vorschaubilder einzeln regenerieren, was eine große Menge an Speicher belegen kann. Also, vielleicht möchten Sie es verbessern.

… und ich stimme zu, aber es pflanzt zumindest den Samen. Eine Liste der allgemeinen bildbezogenen functionen, insbesondere (aber nicht ausschließlich), finden Sie im Anhang der functionsreferenz im Codex.

  • wp_update_attachment_metadata
  • wp_generate_attachment_metadata