2017-01-31 3 views
0

Я использую следующий код, чтобы распечатать srcset для моего образа:wp_get_attachment_image_sizes («большой») печатает небольшие размеры

<?php if (function_exists('wp_get_attachment_image_srcset')) :?> 
srcset="<?php echo esc_attr(wp_get_attachment_image_srcset(get_post_thumbnail_id($blog_results->post->ID, 'medium'))); ?>" 
sizes="<?php echo esc_attr(wp_get_attachment_image_sizes(get_post_thumbnail_id($blog_results->post->ID, 'medium'))); ?>" 
<?php endif; ?> 

Контейнер, который я использую имеет 350px ширину, однако WordPress возвращает это :

sizes="(max-width: 300px) 100vw, 300px" 

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

Есть ли какой-либо чистый способ, я мог бы выполнить это без жесткого кодирования «размеров»?

ответ

1

Вы можете попробовать этот подход.

Первое:

//$name = Image size identifier. 
//$width = Image width in pixels. 
//$height = Image height in pixels. 
//$crop =true/false (crop images to specified width and height or resize). 
$name = 'custom-size'; $width = '350px'; $height = '200px'; $crop = true; 
add_image_size($name, $width, $height, $crop); 

проверить эту ссылку https://developer.wordpress.org/reference/functions/add_image_size/. Эта функция записывается в файл functions.php. теперь вы можете использовать это изображение нестандартного размера, где вам нужно.

<?php if (function_exists('wp_get_attachment_image_srcset')) :?> 
srcset="<?php echo esc_attr(wp_get_attachment_image_srcset(get_post_thumbnail_id($blog_results->post->ID, 'custom-size'))); ?>" 
sizes="<?php echo esc_attr(wp_get_attachment_image_sizes(get_post_thumbnail_id($blog_results->post->ID, 'custom-size'))); ?>" 
<?php endif; ?> 

Теперь вы можете получить свое желание изображения.

+0

Да, я пробовал это, но он не работает, по крайней мере, не на моей стороне. –

+0

Не удалось найти решение этой проблемы, кроме жесткого кодирования параметра размера. Кто-нибудь использовал вышеупомянутое предложение? Если да, то, возможно, есть что-то еще, что мешает этому в моей настройке. –

+1

У меня такая же проблема. Пожалуйста, сообщите нам, если вы найдете решение этого! Я также жестко кодирую атрибут размеров (чтобы получить полный контроль, но, очевидно, это должно быть автоматизировано более разумно). – emilolsson