簡體   English   中英

Wordpress:如何實現for-each循環?

[英]Wordpress: How to implement a for-each loop?

我正在嘗試將所有圖像附加到帖子中。 根據此代碼原始作者 ,可以通過使用“ for-each循環遍歷$ arrKeys中的每個值”來實現。 有人知道如何實現嗎?

的PHP

function bdw_get_images() {

$iPostID = $post->ID;
$arrImages =& get_children('post_type=attachment&post_mime_type=image&post_parent=' . $iPostID );

    if($arrImages) {

        $arrKeys = array_keys($arrImages);

        foreach($arrImages as $oImage) {
            $arrNewImages[] = $oImage;
        }

        for($i = 0; $i < sizeof($arrNewImages) - 1; $i++) {
            for($j = 0; $j < sizeof($arrNewImages) - 1; $j++) {
                if((int)$arrNewImages[$j]->menu_order > (int)$arrNewImages[$j + 1]->menu_order) {
                    $oTemp = $arrNewImages[$j];
                    $arrNewImages[$j] = $arrNewImages[$j + 1];
                    $arrNewImages[$j + 1] = $oTemp;
                }
            }
        }

        $arrKeys = array();

        foreach($arrNewImages as $oNewImage) {
            $arrKeys[] = $oNewImage->ID;
        }

        $iNum = $arrKeys[0];

        $sImageUrl = wp_get_attachment_url($iNum);

        $sImgString = '<img src="' . $sImageUrl . '" alt="Thumbnail Image" title="Thumbnail Image" />';

        echo $sImgString;
    }
}

然后,我可以使用bdw_get_images();調用該函數bdw_get_images();

嘗試這個。

在此行之后:

foreach($arrNewImages as $oNewImage) {
   $arrKeys[] = $oNewImage->ID;
}

添加:

$return = array();
foreach( $arrKeys as $key) {
    $sImageUrl = wp_get_attachment_url($key);
    $sImgString = '<img src="' . $sImageUrl . '" alt="Thumbnail Image" title="Thumbnail Image" />';
    $return[] = $sImgString;
}
return $return;

,如果要打印所有圖像,只需添加以下內容即可(而不是上面的內容):

foreach( $arrKeys as $key) {
    $sImageUrl = wp_get_attachment_url($key);
    $sImgString = '<img src="' . $sImageUrl . '" alt="Thumbnail Image" title="Thumbnail Image" />';
    echo $sImgString;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM