set_post_thumbnail_size em porcentagem, não pixels?

3

Eu criei um novo tipo de postagem personalizado e preciso que as miniaturas das postagens ou as imagens em destaque geradas pela função get_the_post_thumbnail() sejam definidas em porcentagem, em vez de pixels, pois estou usando uma grade fluida. Idealmente, eu só configuraria a largura (para 100%). Existe uma maneira de fazer isso? Potencialmente usando add_image_size() ?

    
por daysrunaway 27.06.2011 / 02:51

3 respostas

9

você tentou,

if(has_post_thumbnail()) {                    
    $image_src = wp_get_attachment_image_src( get_post_thumbnail_id(),'full' );
     echo '<img src="' . $image_src[0]  . '" width="100%"  />';
} 
    
por Reigel 27.06.2011 / 03:23
0

Não é possível alterar as unidades da saída padrão de largura e altura, mas é possível substituir a saída via css:

/* these are the classes that get added per default */
img.wp-post-image
img.attachment-thumbnail
img.attachment-medium
img.attachment-large
img.attachment-full

Depois, você pode substituí-lo por meio de algo como body img.attachment-large { width: 50% !important; height: 50% !important; }

    
por kaiser 27.06.2011 / 03:24
0

Eu resolvi esse problema ao me livrar de todos os atributos de largura e altura definidos pelo WP:

    //tidy up img tags. We don't want inline height and width added by WP.
    //we'd rather use media queries and fluid img.
        function remove_image_dim_attr($html) {
            $html=preg_replace( '/width=(["\'])(.*?)/', '', $html );
            $html=preg_replace( '/height=(["\'])(.*?)/', '', $html );
            return $html;
        }
        add_filter( 'get_image_tag','remove_image_dim_attr' );
        add_filter( 'image_send_to_editor','remove_image_dim_attr' );
        add_filter( 'post_thumbnail_html','remove_image_dim_attr' );
    
por Vale 03.07.2011 / 05:33