2016-06-23 2 views
1

Я изо всех сил пытаюсь получить средний размер для URL-адреса изображения в Wordpress. Мой рабочий источник выглядит следующим образом:получить средний размер вместо полного

<div class="entry-thumbnail coverback" style="background-image: url(<?php echo wp_get_attachment_url(get_post_thumbnail_id()); ?>); "> 

но требует полного образа и тем, что мои страницы взрывает до 9-10 МБ в нагрузку, как выгружаемых полные образы немного больше.

Так что я пытался до сих пор без успеха:

<div class="entry-thumbnail coverback" style="background-image: url(<?php echo $image_attr = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); ?>); "> 

и

<div class="entry-thumbnail coverback" style="background-image: url(<?php echo wp_get_attachment_image (int $attachment_id, string|array $size = 'medium', bool $icon = false, string|array $attr = ''); ?>); "> 

и

<div class="entry-thumbnail coverback" style="background-image: url(<?php echo wp_get_attachment_image(get_the_ID(), array('medium')); ?>); "> 

, но не один из них работал, что я делаю неправильно здесь? Я пытался использовать WP Codex и прочее, но .. что в основном путают меня больше, чем это помогло :(

Любая помощь будет очень ценна.

ответ

2

С wp_get_attachment_image_src docs, функция возвращает массив. первый элемент массива является ЦСИ URL, так что вы должны изменить код следующим образом:.

<?php 
// Load the attachment attributes 
$image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
// IF it's an array, and the url (index 0) is set, then assign it 
$image = (isset($image[0])) ? $image[0] : ''; 
?> 
<div class="entry-thumbnail coverback" style="background-image: url(<?php echo $image; ?>); "> 
+0

большое спасибо, я постараюсь это, как только я снова получить доступ к сайту Это, FAR отличается от того, что я ожидал !!! – Caylean

+0

УДИВИТЕЛЬНО! От 9-10 МБ до 1 МБ. Большое спасибо! – Caylean