mixitup 动态图像的 Magnific Popup 问题

Posted

技术标签:

【中文标题】mixitup 动态图像的 Magnific Popup 问题【英文标题】:Magnific Popup issue with mixitup dynamic images 【发布时间】:2020-10-21 08:54:54 【问题描述】:

我只是在我的网站中手动设置同位素,然后我在 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"

></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"

></a>

但是在动态中,此图像弹出窗口对我不起作用。最后一个静态图像作为示例,它可以完美运行,但是作为图像的行代码来自投资组合自定义帖子选项,此弹出窗口不起作用

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

`

【问题讨论】:

您是否尝试过将target="_blank" 从不工作的邮箱中删除? 是的,我试过postimg.cc/NymxMh7v 有这个和没有这个 target="_blank" 图片弹出不显示 这个静态代码有效` /img/mahi.jpg" > ` 但这项工作不像我之前解释的那样 ` ` target 是它们之间的唯一区别。 “不工作”是什么意思?这并不能说明什么。你有错误吗?根本不显示吗?它是否在单独的标签中打开? 【参考方案1】:

您将the_post_thumbnail 用于href。这会输出 html 以显示图像,但您只想将 URL 放入链接的 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>

【讨论】:

( ! ) 解析错误:语法错误,意外 'the_thumbnail_url' (T_STRING),期待 ',' 或 ';'在 C:\wamp64\www\reels\wp-content\themes\mohi\portfolio.php 第 56 行 @jishan 我刚刚发现一个错字并在您发表评论之前将其修复 - 这是get_the_thumbnail_url 函数名称中的一个额外空格...您可以尝试上面编辑的代码吗?跨度> 我修复了它,但它调用了未定义的函数postimg.cc/r0nBCnM0 太棒了!很高兴它有帮助。不要忘记,如果对您有用,您可以接受答案:) 它会将其标记为已解决,并让其他人知道它也可以帮助他们。我们都得到了一些努力的代表点:) 好吧,我很高兴你至少解决了一个问题!您单击答案旁边的复选标记以接受答案,如果您认为它有帮助,您也可以通过单击向上箭头来支持它。看看someone answers 时该怎么办 :)

以上是关于mixitup 动态图像的 Magnific Popup 问题的主要内容,如果未能解决你的问题,请参考以下文章

Magnific popup - 如何垂直放置内联内容?

“magnific.popup.js”的延迟加载

html 响应式Mixitup过滤器

Magnific Popup 无法与页面上的多个画廊一起使用

php [magnific popup] jquery magnific popup

Magnific-Popup Gallery 不会打开两次