【发布时间】:2018-09-27 20:27:09
【问题描述】:
我正在使用带有 ACF 字段的光滑滑块 (Wordpress)。我正在尝试获取当前幻灯片的下一篇和上一篇文章标题 (.slick-current)。
我有 .slick-active 类的三张活动幻灯片,中间一张也有 .slick-current 类(除了 .slick-active)
<?php if (have_rows('videofeed','option')): ?>
<div class="slider-popular">
<?php while (have_rows('videofeed2','option')) : the_row(); ?>
<div class="slider-go-wrap">
<h2 class="video-title"> <?php the_sub_field('video_title'); ?> </h2><!-- the video title -->
<div class="video-controls">
<div class="prev-title-popular">
<span class="lightspan controltitles prev-videotitle">PREVIOUS TITLE HERE</span> <!-- previous ACF row sub_field "video_title" here -->
</div>
<div class="next-title-popular">
<span class="lightspan controltitles next-videotitle">NEXT TITLE HERE</span><!-- next ACF row sub_field "video_title" here -->
</div>
</div>
</div>
<?php endwhile;?>
</div>
<?php endif; ?>
不是一个服务器端的人,我如何将以下 php 循环与当前幻灯片中的下一个和上一个字段数据集成到我的 ACF 字段转发器中?有没有比 php 循环更简单的方法?
$rows = get_field('videofeed');
if($rows)
{
foreach($rows as $index => $row)
{
// from there, you can get prev / next data using loop index ($rows[$index-1] / $rows[$index+1]
}
}
这里的任何建议都会很棒。
【问题讨论】:
-
我达到了这一点: $('.slider-go-wrap').each(function() { currentSlide = $('.slick-current'); nextSlide = currentSlide.next() ; prevSlide = currentSlide.prev(); nextSlideData = nextSlide.find('.next-videotitle').html(); prevSlideData = prevSlide.find('.prev-videotitle').html(); });但它似乎没有按计划工作。有什么提示吗?
-
这是一个小提琴,问题是它只适用于当前但应该适用于所有幻灯片:jsfiddle.net/px2bvdbt/12
标签: php jquery foreach advanced-custom-fields slick.js