Single PHP Loop - выводит конкретный контент из каждой в 2 отдельные области.(WordPress) - PullRequest
0 голосов
/ 04 мая 2011

В PHP (wordpress) я понимаю, как сделать простой цикл, однако я не совсем уверен, как сделать один запрос и вывести его в 2 отдельные области, как показано ниже:

<div class="slides_container"> 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-3-2x.jpg" width="366" alt="1144953 3 2x"></a> 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-1-2x.jpg" width="366" alt="1144953 1 2x"></a> 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-2-2x.jpg" width="366" alt="1144953 2 2x"></a>                 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-4-2x.jpg" width="366" alt="1144953 4 2x"></a> 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-5-2x.jpg" width="366" alt="1144953 5 2x"></a> 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-6-2x.jpg" width="366" alt="1144953 6 2x"></a> 
                <a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="img/1144953-p-2x.jpg" width="366" alt="1144953 P 2x"></a> 
            </div> 
            <ul class="pagination"> 
                <li><a href="#"><img src="img/1144953-3-2x.jpg" width="55" alt="1144953 3 2x"></a></li> 
                <li><a href="#"><img src="img/1144953-1-2x.jpg" width="55" alt="1144953 1 2x"></a></li> 
                <li><a href="#"><img src="img/1144953-2-2x.jpg" width="55" alt="1144953 2 2x"></a></li> 
                <li><a href="#"><img src="img/1144953-4-2x.jpg" width="55" alt="1144953 4 2x"></a></li> 
                <li><a href="#"><img src="img/1144953-5-2x.jpg" width="55" alt="1144953 5 2x"></a></li> 
                <li><a href="#"><img src="img/1144953-6-2x.jpg" width="55" alt="1144953 6 2x"></a></li> 
                <li><a href="#"><img src="img/1144953-p-2x.jpg" width="55" alt="1144953 P 2x"></a></li> 
            </ul> 
        </div> 

По сути, мне нужно понять, как сделать так, чтобы две области содержимого "совпали", поэтому, если бы я выполнил произвольный запрос, якорь # 3 соответствовал бы # 3 Li внутри UL. Нужно ли запускать «forEach»?

Это для слайдера jQuery, поэтому элементы списка - это просто эскизы навигации для основной части.

У кого-нибудь есть подсказка?

Ответы [ 2 ]

1 голос
/ 04 мая 2011

Я делаю некоторые предположения здесь - но в основном вы можете использовать цикл foreach дважды - первый раз, когда заполняете исходные ссылки HTML "a", и второй цикл, чтобы заполнить li.

Например,- если ваш массив называется items и он содержит 4 пары ключ-значение для каждого элемента, вы должны сделать что-то вроде этого:

<div class="slides_container"> 
<?php
foreach ($items as $i) {
    ?>
    <a href="http://www.zappos.com/{$i['url_slug']}" target="_blank"><img src="img/{$i['img_name']}" width="366" alt="{$i['alt_text']}"></a>
    <?php
}
?>
</div> 
<ul class="pagination">
<?php
foreach ($items as $i) {
?>
    <li><a href="#"><img src="img/{$i['img_name']}" width="55" alt="{$i['alt_text']}"></a></li> 
    <?php
 }
 ?>
 </ul> 
 </div> 
0 голосов
/ 04 мая 2011

Используйте две петли:

<?php
$output = '<div class="slides_container"> ';
for ($i = 0; $i < count($results); $i++){
 $output .= '<a href="http://www.zappos.com/pro-keds-royal-plus-lo-grey" target="_blank"><img src="'.$results[$i]['imageSrc'].'" width="366" alt="'.$results[$i]['alt'].'"></a>';
}
$output .= ' </div> \n\t <ul class="pagination"> ';
for ($i = 0; $i < count($results); $i++) {
$output .= '<li><a href="#"><img src="'.$results[$i]['imageSrc'].'" width="366" alt="'.$results[$i]['alt'].'"></a></li> ';
}
$output .= '</ul> </div> ';

echo $output; 
?>

Предполагается, что у вас есть массив массивов для результатов:

results=array(
[0] =>array
 (
   "imageSrc"=>"some image url",
   "alt"=>"some alt text"
 )
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...