【问题标题】:Change order of array改变数组的顺序
【发布时间】:2013-03-25 12:21:09
【问题描述】:

我在 Wordpress 中有一些代码可以获取附加到特定帖子的图像。
它将该帖子的所有信息放入一个数组中,然后使用内置的 Wordpress 函数wp_get_attachment_image从中提取图像。

然后我使用foreach 循环在图像滑块中显示图像。 我遇到的问题是它把'image1'放在数组的位置1,把'image2'放在数组的位置0。
所以它首先显示图像 2。

这是我的代码。

    $args = array(
      'post_type' => 'attachment',
      'numberposts' => -1,
      'post_status' => null,
      'post_parent' => $post->ID
     );

    $attachments = get_posts( $args );          
    $images = array($attachments);
    echo '<div id="postSlider"><div class="slides_container">';
    if ( $attachments ) {
        foreach ( $attachments as $attachment ) {
        echo '<div>' . wp_get_attachment_image($attachment->ID, 'large') . '</div>';
        }

        echo '</div>';
        if(sizeof($attachments) > 1) {
            echo '<div class="sliderControls">
            <a href="#" class="sliderBtnPrev">Previous</a>
            <a href="#" class="sliderBtnNext">Next</a>
            <span class="sliderPagination">1 of 3</span>
            </div>';
        }
    }   
    echo '</div>';

根据我的阅读,foreach 循环将保留数组的顺序。所以,我想我需要更改数组的顺序,以便循环首先看到“image1”(数组位置 [1])。

我对数组的了解有限,所以我不知道如何做到这一点。感谢任何帮助。

【问题讨论】:

  • @AdvaitAmin,以后请不要像array-functions一样创建meta tags
  • @Charles不太明白,能不能用你的话简单解释一下???

标签: php arrays wordpress


【解决方案1】:

如果您想以编程方式更改顺序,请查看各种array sorting functions in PHP,尤其是

  • uasort()— 使用用户定义的比较函数对数组进行排序并保持索引关联
  • uksort()— 使用用户定义的比较函数按键对数组进行排序
  • usort()— 使用用户定义的比较函数按值对数组进行排序

但是对于 wordpress 结帐这个http://codex.wordpress.org/Template_Tags/get_posts

【讨论】:

  • 感谢get_posts 的链接,这给了我需要的信息
【解决方案2】:

如果您想按排序顺序显示图像,请在 foreach 之前使用 sort

    sort($attachments);
    foreach ( $attachments as $attachment ) {
    echo '<div>' . wp_get_attachment_image($attachment->ID, 'large') . '</div>';
    }

参考:http://php.net/manual/en/function.sort.php

【讨论】:

  • @PrashanthBendra 是的,兄弟,你在阵列及其功能方面表现出色...可能在 5 分钟内始终是您的答案...前进...
猜你喜欢
  • 2011-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-29
  • 2019-01-11
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
相关资源
最近更新 更多