为POST ID自动创建循环

时间:2014-07-14 作者:user3756781

我无法为我的帖子生成循环。JS调用slide_ID 然后需要显示每个slide-ID 按数字顺序运行。示例slide-1 要滚动到下一张幻灯片slide_ID 需要是slide-2 (这由“下一步”按钮控制)。

问题不在JS中,而是在循环中。我需要填充每个帖子,以便每个帖子ID号都是数字顺序。

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
    <section id="<?php $x=1; do { echo "slide-$x"; $x++; } while ($x<=1); ?>" class="homeSlide">
        <div class="bcg" 
             data-center="background-position: 50% 0px;" 
             data-top-bottom="background-position: 50% -100px;" 
             data-anchor-target="#<?php $x=1; do { echo "slide-$x"; $x++; } while ($x<=1); ?>">
            <div class="hsContainer">
            <div class="hsContent" data-center="opacity: 1" data-106-top="opacity: 0" data-anchor-target="#<?php $x=1; do { echo "slide-$x"; $x++; } while ($x<=1); ?> h2">
                <h2>Fade out elements before<br />they leave viewport</h2>
                <p>This slide moves background image at a slower speed then the page scroll.</p>
            </div>
            </div>
        </div>
    </section>
<?php endwhile; endif; ?>
我用来显示幻灯片ID号的循环是

$x=1; do { echo "slide-$x"; $x++; } while ($x<=1);
然而,我似乎不知道如何在新帖子提交后自动更改数字。

任何帮助都会很好。

1 个回复
最合适的回答,由SO网友:mrwweb 整理而成

“循环”已经是一个循环了,所以我认为没有必要使用第二个循环。事实上while 循环不应该起作用,因为每次发布都会将其重置为1。您还存在一些PHP语法问题,如$echo (这是一个变量)而不是echo 以及将数字变量与“slide”字符串连接的方式。

以下[未经测试的代码段]应满足您的要求:

<?php if (have_posts()) : 
  /* set $slide_id to "1" for first slide */
  $slide_id = 1;
  while (have_posts()) : the_post(); ?>
    <section id="<?php echo "slide-" . $slide_id; /* output "slide-{x}" */ ?>" class="homeSlide">
      <div class="bcg" 
        data-center="background-position: 50% 0px;" 
        data-top-bottom="background-position: 50% -100px;" 
        data-anchor-target="#<?php echo "slide-" . $slide_id; /* output "slide-{x}" */ ?>">
      <div class="hsContainer">
      <div class="hsContent" data-center="opacity: 1" data-106-top="opacity: 0" data-anchor-target="#<?php echo "slide-" . $slide_id; // output "slide-{x}" ?> h2">
        <h2>Fade out elements before<br />they leave viewport</h2>
        <p>This slide moves background image at a slower speed then the page scroll.</p>
      </div>
      </div>
    </div>
    </section>
    <?php $slide_id++; /* increment $slide_id */?>
<?php endwhile; endif; ?>

结束

相关推荐

如何修复显示所有帖子的Archive.php?

我目前正在开发我的第一个大型WordPress网站,我的档案中遇到了一个大问题。php文件。它加载所有帖子,而不是我要显示的类别/标签。其基本思想是建立一个文章展示栏,其中前6篇文章将显示为thumnails,其余将以正常格式显示。然后分页开始,用户可以单击以查看下一页的结果,其中将显示相同的文章展示,但会显示下一页的标准帖子。为了做到这一点,我使用了两个循环,其中第二个循环被6个帖子抵消。直到昨天晚上,我才开始使用它,当时我更改了一些内容并重新加载,结果该内容才开始显示网站上的所有帖子。我最初认为这是我