В настоящее время я создаю веб-сайт Wordpress для клиента, для которого требуется фотогалерея, при нажатии на изображение которого будет перенаправлена внешняя ссылка.
Каждая коллекция из галереи отображается как публикация.Поэтому внутри каждого сообщения я добавляю фотографии с помощью встроенной в Wordpress функции «Галерея».
Для установки пользовательских URL-адресов для этих изображений я использую плагин WP Gallery Custom Links , но пользовательские ссылкине назначаются на фотографии, как я хочу.
Есть ли какой-либо способ получения данных, устанавливаемых плагином WP Gallery Custom Links, или есть другой способ назначения настраиваемого URL-адреса для этих фотографий, который можно сделать с помощью панели инструментов?
Внутри моего исходного кода для моего файла «content-single.php» я вывожу фотографии внутри поста, используя цикл «foreach» и используя функцию wp_prepare_attachment_for_js () для извлечения данных вложения:
<?php
if ( get_post_gallery() ) :
$gallery = get_post_gallery( get_the_ID(), false );
/* create an array of IDs from */
$gids = explode( ",", $gallery['ids'] );
/* Loop through all the image and output them one by one */
foreach ($gids as $id) {
/* pull all the available attachment data with the new function */
$attachment = wp_prepare_attachment_for_js($id);
$categories = get_the_category($attachment);
?>
<!--Image element loop begins -->
<a href="<?php echo $attachment['url']; ?>" id="av-masonry-1-item-284" data-av-masonry-item="284" class="av-masonry-entry isotope-item post-284 attachment type-attachment status-inherit hentry av-masonry-item-with-image <?php if($attachment['width']>=($attachment['height']*2)){ ?>av-landscape-img <?php }elseif($attachment['height']>=($attachment['width']*2)){ ?> av-portrait-img <?php } ?> lightbox-added av-masonry-item-loaded" title="A really beautiful town" itemprop="thumbnailUrl" style="position: absolute; left: 0%; top: 0px;">
<div class="av-inner-masonry-sizer"></div>
<figure class="av-inner-masonry main_color">
<div class="av-masonry-outerimage-container">
<div class="av-masonry-image-container" style="background-image: url(<?php echo $attachment['sizes']['full']['url']; ?>);">
<img src="<?php echo $attachment['sizes']['full']['url']; ?>" title="Salzburg by day" alt="">
</div>
</div>
<figcaption class="av-inner-masonry-content site-background">
<div class="av-inner-masonry-content-pos">
<div class="av-inner-masonry-content-pos-content">
<div class="avia-arrow"></div>
<h3 class="av-masonry-entry-title entry-title" itemprop="headline"><?php echo $attachment['title']; ?></h3>
<div class="av-masonry-entry-content entry-content" itemprop="text"><?php echo $attachment['caption']; ?></div>
</div>
</div>
</figcaption>
</figure>
</a>
<!-- Image element loop ends -->
<?php
}
endif;
?>
Я пытался использовать var_dump ($ attachment), чтобы найти любой след пользовательского URL, но безрезультатно.
Если мне удастся заполучить пользовательские URL-адреса, я буду использовать их для замены URL-адреса, назначенного внутри цикла:
<a href="<?php $attachment['url'] ?>" id="av-masonry-1-item-284" data-av-masonry-item="284" class="av-masonry-entry isotope-item post-284 attachment type-attachment status-inherit hentry av-masonry-item-with-image <?php if($attachment['width']>=($attachment['height']*2)){ ?>av-landscape-img <?php }elseif($attachment['height']>=($attachment['width']*2)){ ?> av-portrait-img <?php } ?> lightbox-added av-masonry-item-loaded" title="A really beautiful town" itemprop="thumbnailUrl" style="position: absolute; left: 0%; top: 0px;">