Abrufen der Bildbreite aus der WP_Customize_Image_Control () – Datei, die in WP Theme Customizer festgelegt wurde

Hier ist der Code, den wir verwenden, um eine Bilddatei als Option für das Logo der Website über WordPress ‘Design-Customizer einzustellen:

/* Logo > Image -------------------------------------------------- */ $wp_customize->add_setting( 'themeslug_logo' ); $wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'themeslug_logo', array( 'label' => __( 'Logo', 'themeslug', 'themeslug' ), 'section' => 'themeslug_header', 'settings' => 'themeslug_logo', 'description' => 'Upload a logo to replace the default site name in the header.', ) ) ); 

Dementsprechend zeigen wir das Logo so an:

 <img src='https://wordpress.stackexchange.com/questions/215157/get-image-width-from-wp-customize-image-control-file-set-in-wp-theme-customize/' alt=' Logo' class="img-responsive"> 

Dabei haben wir jedoch festgestellt, dass wir die Attribute “Höhe / Breite” für Bild nicht festlegen.

Wir wollen also die Bildhöhe / -breite aus der hochgeladenen Mediendatei ziehen, sie als Variable speichern und dann wie folgt ausführen:

  <img src='https://wordpress.stackexchange.com/questions/215157/get-image-width-from-wp-customize-image-control-file-set-in-wp-theme-customize/' alt=' Logo' class="img-responsive" height="" width="" > 

Im Wesentlichen, wo wir auf Probleme stoßen, ist: Wir wollen die Bildbreite aus der Datei erhalten, wie sie per WP_Customize_Image_Control () festgelegt wurde, und nicht nur die URL.

Danke im Voraus

Solutions Collecting From Web of "Abrufen der Bildbreite aus der WP_Customize_Image_Control () – Datei, die in WP Theme Customizer festgelegt wurde"

OK, nun, wir haben eine schnelle und vielleicht etwas schmutzige Lösung gefunden, indem wir die PHP- function getimagesize () verwendet haben .

Insbesondere ist dies der Code:

 < ?php if ( get_theme_mod( 'themeslug_logo' ) ) : $themelogo = get_theme_mod( 'themeslug_logo' ); $themelogo_size = getimagesize($themelogo); $themelogo_width = $themelogo_size[0]; $themelogo_height = $themelogo_size[1]; ?> ' alt='< ?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?> Logo' class="img-responsive full" height="< ?php echo($themelogo_height);?>" width="< ?php echo($themelogo_width);?>"> 

Ich bin mir nicht sicher, ob dies die beste Methode ist oder nicht, also wenn jemand eine gute Idee hat, würde ich es gerne hören!