Атрибуты height и width не устанавливаются в the_post_thumbnail
Я использую следующий код для отображения изображений на главной странице:
if ( has_post_thumbnail() ) {the_post_thumbnail('postbox-thumb')
Но в результате выполнения этого кода тег img не содержит атрибутов height и width. Помогите решить эту проблему.
Текущий пример вывода:
<img alt="Kiran inspects coal mine" 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">
Атрибуты height и width отсутствуют.

Во втором атрибуте функции the_post_thumbnail()
вы можете задать дополнительные параметры для изображения.
the_post_thumbnail( 'postbox-thumb', array( 'width' => 100, 'height' => 100 ) )
Я только что перепроверил — ширина и высота работают в последних версиях WordPress, так что вам, возможно, просто нужно обновить вашу установку WordPress.

Проверьте параметры для the_post_thumbnail
Размеры миниатюр
the_post_thumbnail( array(100, 100) );
Или вы можете добавить собственный размер изображения для миниатюр записей, используя add_image_size
в файле функций, который включает ширину и высоту
add_image_size( 'postbox-thumb', 100, 100, TRUE );

Сначала добавьте поддержку миниатюр записей (post-thumbnails) в файле "function.php" с помощью следующего кода:
add_theme_support( 'post-thumbnails' );
Затем добавьте размер изображения с помощью следующего кода в "function.php":
add_image_size( 'portfolio', 600, 600, true );
Оба этих элемента должны быть помещены внутрь функции, которую нужно подключить через хук:
add_action( 'after_setup_theme', 'prefix_theme_setup' );
Теперь внутри цикла проверьте наличие миниатюры записи:
has_post_thumbnail()
Затем выведите миниатюру записи:
the_post_thumbnail( 'portfolio' );
Вы также можете задать атрибут class и указать пользовательские высоту и ширину в CSS, сохраняя ширину и высоту равными значениям, установленным в add_image_size(); или сохраняя то же соотношение.
the_post_thumbnail( 'portfolio', array( 'class' => 'custom-class img-responsive' ) );
Теперь вы можете задать пользовательский CSS-класс в вашем CSS:
.custom-class { width: 200px; height: 200px; }
Полный код для function.php:
/*
* Настройка темы
========================================*/
if ( ! function_exists( 'prefix_theme_setup' ) ) :
function prefix_theme_setup() {
/*
* Включение поддержки миниатюр записей для постов и страниц.
*/
add_theme_support( 'post-thumbnails' );
add_image_size( 'portfolio', 600, 600, true );
}
endif;
add_action( 'after_setup_theme', 'prefix_theme_setup' );
Полный код для файла шаблона:
<?php if ( has_post_thumbnail() ) :
the_post_thumbnail( 'portfolio', array( 'class' => 'custom-class img-responsive' ) );
endif; ?>
:-)
