Intereting Posts
Проблемы с the_post_thumbnail Дата неверна на странице «Все сообщения» fetch_feed показывает только первый элемент Переадресация маршрута многопользовательской темы с использованием .htaccess Почему WordPress 4.1 имеет запись автоматического обновления в wp_options? Предоставьте доступ к простому .html-файлу пользователям, которые купили определенный «цифровой продукт», Установите первое изображение (внешнее) в качестве отображаемого изображения / эскиза Проверить is_single () вне цикла Восстановленный WordPress на новом сервере – невозможно автоматическое обновление плагинов Что такое $ GLOBALS ? 4 сообщения на страницу из одной категории Перенос данных из ACF в пользовательские мета-окна WordPress Класс. Текущий элемент меню в пользовательском меню Уолкер wp-cli с показаниями MAMP sh: mysql: команда не найдена wp_enqueue_script добавление условного оператора не работает

Как нарисовать информацию о СМИ для галереи изотопов, используя Photoswipe

В настоящее время я занимаюсь созданием галереи WordPress, которая напрямую связана с медиа-библиотекой и включает в себя Isotope и Photoswipe. Используя модифицированную версию этого , я успешно добавил вложения в шаблон страницы, а затем ограничил отображение в категории (с категориями для вложений в медиа).

Теперь моя проблема заключается в дальнейшем улучшении отображения …

Поскольку я использую wp_get_attachment_image в своей функции (так что я могу определить размер изображения), а не wp_get_attachment_url , я не могу заставить href работать. В дополнение к этому, мне нужно определить полный размер изображения в размере data-size href .

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

Вот код, который я использую:

 function get_images_from_media_library() { $args = array( 'post_type' => 'attachment', 'post_mime_type' =>'image', 'post_status' => 'inherit', 'posts_per_page' => 25, 'category_name' => 'artwork', ); $query_images = new WP_Query( $args ); $images = array(); foreach ( $query_images->posts as $image) { $images[]= wp_get_attachment_image( $image->ID, 'full' ); } return $images; } function display_images_from_media_library() { $imgs = get_images_from_media_library(); $url = wp_get_attachment_url( $image->ID ); $image_title = $attachment->post_title; $caption = $attachment->post_excerpt; $html = '<section class="isotope-wrap"> <div class="isotope gallery" data-pswp-uid="1"> <div class="isotope-sizer"></div>'; foreach($imgs as $img) { $html .= '<div class="isotope-item"><figure> <a href="' . $url . '" data-size="">' . $img . '</a> <figcaption class="wp-caption-text"><h2>' . $image_title . '</h2> <p>' . $caption . '</p></figcaption></figure></div>'; } $html .= '</div>'; return $html; } 

Наконец, я также пытаюсь создать группу фильтров для галереи Isotope, используя категории изображений в качестве ярлыков. Вот код, который у меня есть до сих пор, который, похоже, не работает, поскольку мои категории не учитывают изображения (все категории показывают количество 0):

 $terms = get_terms('category', array('parent' => 'artwork')); $count = count($terms); if ( $count > 0 ){ foreach ( $terms as $term ) { echo "<button type='button' class='btn btn-dark' data-hover='" . $term->name . "' data-filter='." . $term->slug . "'>" . $term->name . "</button>\n"; } } 

Любая помощь с этим будет очень признательна, спасибо.

EDIT Я добавил следующий код:

 function get_image_urls_from_media_library() { $args = array( 'post_type' => 'attachment', 'post_mime_type' =>'image', 'post_status' => 'inherit', 'category_name' => 'artwork', ); $query_images = new WP_Query( $args ); $urls = array(); foreach ( $query_images->posts as $image) { $urls[]= wp_get_attachment_url( $image->ID ); } return $urls; } 

и добавил вложенный foreach , который рисует действительный href . К сожалению, однако, это только рисование первой записи вложения, и все изображения в галерее связаны с тем же самым первым изображением. Изображения также дублируются 5 раз на странице.

Solutions Collecting From Web of "Как нарисовать информацию о СМИ для галереи изотопов, используя Photoswipe"