it-swarm.com.de

Fügen Sie dem Medien-Uploader eine neue Bildgröße hinzu, damit Benutzer Beiträge einfügen können.

Ich möchte eine zusätzliche Größe für hochgeladene Bilder erstellen, die meine Benutzer dann "in den Beitrag einfügen" können. Ich verstehe, dass add_image_size () eine neue Bildgröße hinzufügt, die ich in meinem Design verwenden kann, aber diese neue Größe ist auf dem Bildschirm zum Hochladen von Medien nicht verfügbar.

Gibt es eine Möglichkeit, neue Größen auf diesem Bildschirm anzuzeigen, damit sie Benutzern beim Hinzufügen/Bearbeiten von Beiträgen zur Verfügung stehen? Ich habe ein zwickeliges Thema, das mehr als nur die Standardgröße 3 + Original benötigt.

Vielen Dank!

6
Michelle

Habe gerade ein neues Plugin gefunden, das genau das tut, was ich oben beschrieben habe:

http://wordpress.org/extend/plugins/additional-image-sizes-zui/

Hoffe das hilft jemandem!

2
Michelle

Obwohl wir unsere Bildgröße erstellen, benötigen wir zusätzlichen Code, um ihn in die Dropdown-Liste Medien-Uploader der verfügbaren Größen einzufügen. Lassen Sie uns zuerst die Größe registrieren. Wir können die init oder after_setup_theme hook verwenden:

function theme_init() {
    add_image_size( 'banner_image', 1200, 200, true );
}
add_action( 'init', 'theme_init' );

Wir müssen den image_size_names_choose Haken verwenden, um die neue Größe in die verfügbaren Größen einzufügen. In den Entwicklerressourcen wird vorgeschlagen Folgendes zu verwenden:

/**
 * @param Array $default_sizes - Array( 'size_slug' => 'Size Title' )
 *
 * @return Array $default_sizes
 */
function image_sizes_to_mediapicker( $default_sizes ) {
    return array_merge( $default_sizes, array(
        'banner_image' => __( 'Banner Image' ),
    ) );
}
add_filter( 'image_size_names_choose', 'image_sizes_to_mediapicker' );

Das obige funktioniert gut, aber vielleicht können wir das ein bisschen automatisieren. Im Folgenden wird davon ausgegangen, dass zusätzliche Größen mit Unterstrichen benannt sind, sodass dies möglicherweise keine optimale Lösung für Plugins ist, die ihre eigenen Größen hinzufügen. Es ist auch stark kommentiert, um zu zeigen, was jede Variable ist.

/**
 * @param Array $default_sizes - Array( 'size_slug' => 'Title' )
 *
 * @return Array $return_sizes
 */
function image_sizes_to_mediapicker( $default_sizes ) {
    global $_wp_additional_image_sizes;                             // All additionally added sizes

    $size_slugs     = array_keys( $_wp_additional_image_sizes );    // Get array of additional sizes
    $default_slugs  = array_keys( $default_sizes );                 // Get array of default sizes
    $exclude_sizes  = array( 'medium_large' );                      // Exclude any image sizes
    // $exclude_sizes = get_option( 'mediapicker_exlcuded_sizes', array() )             // IF we want to previously set / retrieve an array of excluded options
    $sizes_needed   = array_diff( $size_slugs, $default_slugs, $exclude_sizes );        // Get difference between the defaults and additional sizes
    $return_sizes   = $default_sizes;                               // Let's keep separation between passed and returned

    foreach( $sizes_needed as $size_slug ) {
        $pretty_title               = ucwords( str_replace( '_', ' ', $size_slug ) );   // Create a pretty title
        $return_sizes[ $size_slug ] = __( $pretty_title );
    }

    return $return_sizes;
}
add_filter( 'image_size_names_choose', 'image_sizes_to_mediapicker' );
1
Howdy_McGee

Ich habe den Code geknackt und es scheint keinen Weg zu geben, dies zu tun.

Die Liste der Thumbnail-Größen, die WP beim Rendern dieser Optionsfelder durchläuft, ist fest codiert, und es scheint keine Filter oder Aktionen zu geben, mit denen Sie sich verbinden können.

Das ist wirklich seltsam. Ich würde voll und ganz erwarten, dass es einen Weg gibt, dies zu tun.

Müssen Benutzer in der Lage sein, zu einem bestimmten Zeitpunkt beliebige benutzerdefinierte Größen in Posts einzufügen? Oder werden einige davon nur in Vorlagen verwendet? Ich vermute, was ich frage ist, ist es möglich, nur eine oder mehrere der Standardgrößen (Daumen, Mittel, Groß) zu erstellen, die in Beiträgen hinzugefügt werden, und zusätzliche Versionen für benutzerdefinierte Größen zu speichern? Weißt Du, was ich meine?

1
MathSmath