Я работаю над сайтом WP с некоторыми слайдерами продвижения/рекламы с событием клика Google Analytics. Отлично работает, теперь я хочу служить правильному изображению на правильном разрешении.Получить исходный код изображения по ID
Я использую picturefill для обслуживания изображений. Работает нормально, а жестко закодировано, поэтому я знаю, что он работает. Когда я пытаюсь получить источники изображений с изображениями, загруженными WP, это не так. Я знаю это из-за моих (недостающих) навыков php.
Какие picturfill потребности:
<span data-picture data-alt="">
<span data-src="filename_default.jpg"></span>
<span data-src="filename_small.jpg" data-media="(min-width: 400px)"></span>
<span data-src="filename_medium.jpg" data-media="(min-width: 768px)"></span>
<span data-src="filename_big.jpg" data-media="(min-width: 1200px)"></span>
<!-- Fallback content for non-JS browsers. -->
<noscript>
<img src="external/imgs/small.jpg" alt="">
</noscript>
</span>
я или URL-адрес или идентификатор или изображение, хранящееся в: $ attachment_id
Я думал, как это сделать:
<?php
$attachment_id = get_field('advimg');
$large = "adv-pos-a-large";
$default = "adv-pos-a-default";
$small = "adv-pos-a-small";
?>
В get_field ('advimg'); от ACF.
<span data-picture data-alt="">
<span data-src="<?php wp_get_attachment_image_src($attachment_id, $default); ?>"></span>
<span data-src="<?php wp_get_attachment_image_src($attachment_id, $small); ?>" data-media="(min-width: 400px)"></span>
<span data-src="<?php wp_get_attachment_image_src($attachment_id, $default); ?>" data-media="(min-width: 768px)"></span>
<span data-src="<?php wp_get_attachment_image_src($attachment_id, $large); ?>" data-media="(min-width: 1200px)"></span>
<!-- Fallback content for non-JS browsers. -->
<noscript>
<img src="external/imgs/small.jpg" alt="">
</noscript>
</span>
Но это не работает. Iv'e играл с:
wp_get_attachment_image_src wp_get_attachment_image_url wp_get_attachment_image_link
Я должен быть имеющий пятниц, из-за него не работает, и что-то говорит мне, что это не так сложно ... им просто не видя это сегодня.
надеялся, что вы, ребята, могли бы передать в.
Спасибо заранее,
/Paul
ИЗМЕНИТЬ/FINAL КОД/FIX
<?php
$attachment_id = get_field('advanced_custom_field_name_here');
$small = wp_get_attachment_image_src($attachment_id, 'adv-pos-a-small');
$default = wp_get_attachment_image_src($attachment_id, 'adv-pos-a-default');
$large = wp_get_attachment_image_src($attachment_id, 'adv-pos-a-large');
?>
<span data-picture data-alt="alt desc here">
<span data-src="<?php echo $default[0]; ?>"></span>
<span data-src="<?php echo $small[0]; ?>" data-media="(min-width: 400px)"></span>
<span data-src="<?php echo $default[0]; ?>" data-media="(min-width: 768px)"></span>
<span data-src="<?php echo $large[0]; ?>" data-media="(min-width: 1200px)"></span>
<!-- Fallback content for non-JS browsers. Same img src as the initial, unqualified source element. -->
<noscript>
<img src="<?php echo $default[0]; ?>" alt="alt desc here">
</noscript>
</span>
спасибо! +1 для подробного ответа. Я проверю это в понедельник, дам вам знать! – Kortschot
ах да чувак! здорово! Ill изменить/добавить готовый код! – Kortschot