带有 mixitup 动态图像的 Magnific Popup 问题

Magnific Popup issue with mixitup dynamic images

我只是在我的网站上手动设置同位素,然后我在 get_terms 和 get_ther_terms 的帮助下对其进行了动态调整这里是完整代码


     <div class="main_page">

<div class="portfolio_section">

          <div class="controls">
       <button type="button" class="control" data-filter="all">All</button>

        <?php

          $cat_list = get_terms('filters');

          foreach ($cat_list as $cat) :
          ?>
    <button type="button" class="control" data-filter=".<?php echo $cat->slug;?>"><?php echo $cat->name; ?></button>


      <?php endforeach; ?>


     </div>

   <div class="container pasresnt">

     <?php
         $mixitup = new WP_Query(array(
             'post_type' => 'portfolio',
             'posts_per_page' => -1,
         ));

     ?>
   
        <?php while ($mixitup->have_posts()) : $mixitup->the_post() ; ?>

<div class="mix <?php

           $cat_slug = get_the_terms($post->ID, 'filters');
           foreach ($cat_slug as $cat_sl) {
            echo $cat_sl->slug;
           }

           ?>">



            <a href="<?php the_post_thumbnail('portfolio-small'); ?>" target="_blank"><?php the_post_thumbnail('portfolio-small'); ?> </a>


         </div>

 <?php endwhile; ?>
         <div class="mix green">

      <a href="<?php echo get_template_directory_uri(); ?>/img/mahi.jpg"><img src="<?php echo get_template_directory_uri(); ?>/img/mahi.jpg"

alt=""></a>

</div>

</div>
 </div>

 </div>

这里是普通静态图片弹出窗口中的高亮部分,此代码正确显示

 <a href="<?php echo get_template_directory_uri(); ?>/img/mahi.jpg"><img src="<?php echo get_template_directory_uri(); ?>/img/mahi.jpg"

alt=""></a>

但是在动态中,这个图片弹出窗口对我不起作用。最后一个静态图片作为例子,它工作得很好,但是这行代码是图像来自投资组合自定义 post 这个弹出窗口的选项不工作

<a href="<?php echo $for_img; ?>" target="_blank"><?php the_post_thumbnail('portfolio-small'); ?> </a>

`

您正在为 href 使用 the_post_thumbnail。输出 html 以显示图像,但您只想将 URL 放入 link 的 href 属性中,因此请改用 get_the_post_thumbnail_url()

所以不是这个:

<a href="<?php the_post_thumbnail('portfolio-small'); ?>" target="_blank"><?php the_post_thumbnail('portfolio-small'); ?> </a>

你应该使用这个:

<a href="<?php echo get_the_post_thumbnail_url(get_the_ID(), 'portfolio-small'); ?>" target="_blank">
    <?php the_post_thumbnail('portfolio-small'); ?>
</a>