Gli attributi altezza e larghezza non vengono impostati da the_post_thumbnail

12 mar 2013, 12:17:40
Visualizzazioni: 13.5K
Voti: 0

Sto utilizzando il seguente codice per visualizzare le immagini nella home page:

if ( has_post_thumbnail() ) {the_post_thumbnail('postbox-thumb')

Ma l'output del codice sopra non mostra gli attributi height e width nel tag img. Per favore aiutami a risolvere questo problema.

Output attuale di esempio:

<img alt="Kiran ispeziona miniera di carbone" class="attachment-postbox-thumb wp-post-image" src="http://i0.wp.com/www.indiahelpdesk.in/wp-content/uploads/2012/08/HY09-KIRAN_1170869f.jpg?resize=229%2C150">

Gli attributi height e width del tag img mancano.

4
Commenti

Perché hai bisogno di questi attributi? Se non vengono forniti, viene utilizzata la dimensione originale dell'immagine.

Horttcore Horttcore
12 mar 2013 12:31:08

Per una migliore prestazione ho bisogno di questi attributi.

user28789 user28789
12 mar 2013 19:43:14

Secondo il W3C (http://www.w3.org/TR/html401/struct/objects.html#h-13.7.1) non sono necessari, a meno che tu non voglia sovrascriverli. E francamente non capisco perché dovrebbero migliorare le prestazioni della tua pagina. Se vuoi migliorare le prestazioni complessive della pagina, dovresti iniziare da qualcos'altro piuttosto che dagli attributi delle immagini. Se vuoi comunque utilizzarli, vedi la mia risposta qui sotto.

Horttcore Horttcore
12 mar 2013 19:51:40

Sto seguendo le raccomandazioni di PageSpeed

user28789 user28789
19 mar 2013 09:42:25
Tutte le risposte alla domanda 3
0

Nel secondo attributo di the_post_thumbnail() puoi fornire attributi aggiuntivi per l'immagine.

the_post_thumbnail( 'postbox-thumb', array( 'width' => 100, 'height' => 100 ) )

Ho appena verificato nuovamente che la larghezza e l'altezza sono impostate nelle ultime versioni di WP, quindi potrebbe essere sufficiente aggiornare la tua installazione di WordPress.

12 mar 2013 12:37:48
0

Controlla i parametri per the_post_thumbnail Dimensioni delle miniature

the_post_thumbnail( array(100, 100) );

Oppure puoi aggiungere una dimensione personalizzata per le immagini in evidenza utilizzando add_image_size nel tuo file functions.php, specificando larghezza e altezza

add_image_size( 'postbox-thumb', 100, 100, TRUE );
12 ago 2014 14:23:07
0

prima di tutto aggiungi il supporto per le miniature dei post con il seguente codice in "function.php"

add_theme_support( 'post-thumbnails' );

poi aggiungi una dimensione personalizzata per le immagini con questo codice in "function.php"

add_image_size( 'portfolio', 600, 600, true );

utilizza entrambi questi codici all'interno di una funzione che dovrai agganciare con

add_action( 'after_setup_theme', 'prefix_theme_setup' );

ora all'interno del loop verifica se esiste una miniatura per il post

has_post_thumbnail()

poi richiama la miniatura del post

the_post_thumbnail( 'portfolio' );

puoi anche impostare un attributo class e definire altezza e larghezza personalizzate in css, mantieni width e height uguali a quelle impostate in add_image_size(); o mantieni la stessa proporzione.

the_post_thumbnail( 'portfolio', array( 'class' => 'custom-class img-responsive' ) );

ora puoi applicare uno stile css personalizzato

.custom-class { width: 200px; height: 200px; }

codice completo per function.php

/*
 * configurazione del tema
========================================*/
if ( ! function_exists( 'prefix_theme_setup' ) ) :
function prefix_theme_setup() {

    /*
     * Abilita il supporto per le miniature dei post su articoli e pagine.
     */
    add_theme_support( 'post-thumbnails' );
    add_image_size( 'portfolio', 600, 600, true );

}
endif;
add_action( 'after_setup_theme', 'prefix_theme_setup' );

codice completo per il file template

<?php if ( has_post_thumbnail() ) :
    the_post_thumbnail( 'portfolio', array( 'class' => 'custom-class img-responsive' ) );
endif; ?>

:-)

15 mag 2015 22:42:25