Atributele height și width nu sunt setate de the_post_thumbnail

12 mar. 2013, 12:17:40
Vizualizări: 13.5K
Voturi: 0

Folosesc următorul cod pentru a afișa imagini pe pagina principală:

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

Dar rezultatul codului de mai sus nu include înălțimea și lățimea în tag-ul img. Te rog ajută-mă să rezolv această problemă.

Exemplu de output curent:

<img alt="Kiran inspectează mina de cărbuni" 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">

Atributele height și width lipsesc din tag-ul img.

4
Comentarii

De ce ai nevoie de aceste atribute? Dacă nu sunt specificate, se va folosi dimensiunea originală a imaginii.

Horttcore Horttcore
12 mar. 2013 12:31:08

Pentru o performanță mai bună am nevoie de aceste atribute.

user28789 user28789
12 mar. 2013 19:43:14

Conform W3C (http://www.w3.org/TR/html401/struct/objects.html#h-13.7.1) nu ai nevoie de ele, decât dacă vrei să le suprascrii. Și sincer să fiu, nu văd de ce ar îmbunătăți performanța paginii. Dacă vrei să îmbunătățești performanța generală a paginii, ar trebui să începi altundeva decât la atributele imaginilor. Dacă totuși vrei să le folosești, vezi răspunsul meu mai jos.

Horttcore Horttcore
12 mar. 2013 19:51:40

Urmăresc recomandările Pagespeed

user28789 user28789
19 mar. 2013 09:42:25
Toate răspunsurile la întrebare 3
0

În al 2-lea atribut al funcției the_post_thumbnail() puteți adăuga atribute suplimentare pentru imagine.

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

Tocmai am verificat din nou, lățimea și înălțimea sunt setate în ultimele versiuni de WordPress, deci poate fi necesar doar să vă actualizați instalarea WordPress.

12 mar. 2013 12:37:48
0

Verifică parametrii pentru the_post_thumbnail Dimensiuni Miniatura

the_post_thumbnail( array(100, 100) );

Sau poți adăuga o dimensiune personalizată pentru imaginile principale folosind add_image_size în fișierul tău de funcții, care include lățimea și înălțimea

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

mai întâi adaugă suport pentru post-thumbnails în "function.php" cu următorul cod

add_theme_support( 'post-thumbnails' );

apoi adaugă dimensiunea imaginii cu următorul cod în "function.php"

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

folosește ambele într-o funcție pe care trebuie să o conectezi la

add_action( 'after_setup_theme', 'prefix_theme_setup' );

acum, în interiorul loop-ului, verifică dacă există post thumbnail

has_post_thumbnail()

apoi afișează post thumbnail

the_post_thumbnail( 'portfolio' );

poți de asemenea să setezi un atribut class și să dai înălțime și lățime personalizate în css, păstrând lățimea și înălțimea egale cu cele setate în add_image_size(); sau păstrează același raport.

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

acum poți adăuga o clasă css personalizată în css-ul tău

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

cod complet pentru function.php

/*
 * configurarea temei
========================================*/
if ( ! function_exists( 'prefix_theme_setup' ) ) :
function prefix_theme_setup() {

    /*
     * Activează suportul pentru Post Thumbnails la articole și pagini.
     */
    add_theme_support( 'post-thumbnails' );
    add_image_size( 'portfolio', 600, 600, true );

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

cod complet pentru fișierul template

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

:-)

15 mai 2015 22:42:25