Intereting Posts
Расширение темы: создание новых функций в виде плагинов или модулей ядра? Как pre_get_posts фильтрует роли в WP Admin Как я могу добавить мета-окно в редактор сообщений, содержащий все элементы пользовательской таксономии, как флажок? W3 Total Cache: используйте кеш для запроса с несущественной строкой запроса Как проверить, если сообщение «не имеет термина» в условном выражении? Когда процесс wordpress & lt;! – nextpage – & gt; У меня есть пользовательский тип сообщения с пользовательской таксономией. Но не найдена страница таксономии .. Удалить вкладку «С компьютера» для сообщений с существующими вложениями? Как отредактировать боковую панель (не похоже на меню)? Использование второго сайта в качестве промежуточной области Предварительный просмотр в iframe без сохранения сообщения Как реализовать безопасную загрузку изображений с внешнего интерфейса? is_main_site () Всегда возвращает True Пользовательский тип сообщения постоянная ссылка не работает над новыми сообщениями Как создать метабокс, который отобразит все мои страницы в селекторе выпадающего списка?

get_image_tag () html output: пустой атрибут src

Я пытаюсь использовать get_image_tag() чтобы изменить вывод html изображения, например:

 add_filter('get_image_tag', 'kh_image_attachment', 10, 5); function kh_image_attachment($html, $id, $alt, $title, $align) { $html = '<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="' . esc_attr($img_src) . '" id="'.esc_attr($id).'" alt="' . esc_attr($alt) . '" title="'.esc_attr($title).'" class="'.$class.'" onload=lzld(this) onerror=lzld(this) />'; return $html; } 

К сожалению, атрибут src остается пустым (атрибут класса также, но мне было все равно, о чем). Почему я не могу понять, почему. Вы можете мне помочь?

Спасибо.

попробуйте следующее:
Вы используете фильтр с более чем одним аргументом, add_filter по умолчанию даст 1 arg, вы используете 4 (из 6) в моем примере. Мне предоставляется все 6 аргументов вашей функции. Если вы хотите использовать 4, измените свою функцию обратно и измените номер в add_filter .

 <?php add_filter('get_image_tag', 'kh_image_attachment', 10/*prio*/, 6/*number of arguments*/); function kh_image_attachment($html, $id, $alt, $title, $align, $size) { //your code } 

Он должен работать, вопросы? просить.

Решение:

Мне нужно было использовать функцию wp_get_attachment_image_src .

 add_filter('get_image_tag', 'kh_image_attachment', 10, 5); function kh_image_attachment($html, $id, $alt, $title, $align) { $image_source = wp_get_attachment_image_src( $id, 'full' ); $html = '<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="'.$image_source[0].'" id="kh-image-attachment-'.esc_attr($id).'" alt="' . esc_attr($alt) . '" title="'.esc_attr($title).'" onload=lzld(this) onerror=lzld(this) />'; return $html; }