切换不在while循环中工作(Wordpress PHP)

时间:2014-02-13 22:05:35

标签: php wordpress loops while-loop switch-statement

我已尽力而为,但仍然卡住了,所以我正在寻求帮助。我确定有一些小东西我忽视或者不知道,所以我很感激另一双眼睛看看!

我正在尝试使用Wordpress while循环中的开关来设置特定帖子的帖子缩略图上的尺寸。该开关使用自动递增值($ count)。在循环内部,$ count将返回div ID的正确数字,但它不适用于交换机。所有缩略图都会达到循环开始前定义的大小(请参阅$ thumbsize)

以下是代码:

// Setup loop to pull only posts tagged slider
$max = 6;
$args = array('tag' => 'slider','posts_per_page' => $max);
$featuredPosts = new WP_Query();
$featuredPosts->query($args);

// Defaults for post thumbnail display
$thumbargs = array('class' => 'featured-blocks-img');
$thumbsize = array(640,360);

$count = 0;

    // Begin loop
    if ($featuredPosts->have_posts()) : while ($featuredPosts->have_posts()) : $featuredPosts->the_post();

    $count++;

    // Get post category and format for div class name
    $category = get_the_category();
    $catname = $category[0]->cat_name;
    $catdash = 'cat-';
    $catdash .= str_replace(' ', '-', $category[0]->cat_name);
    $catdash = strtolower($catdash);

    // Change post thumbnail size conditionally
    switch ($count) {
        case 2:
        case 5:
        case 6:
            $thumbsize == array(320,260);
            break;
        default:
            $thumbsize == array(640,360);
    } // End switch
    ?>
    <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
        <div id="home-featured-post-<?php echo $count;?>" class="featured-blocks-post <?php echo $catdash; ?>">
            <h2 class="home-featured-title"><?php the_title(); ?></h1>
            <?php the_post_thumbnail($thumbsize, $thumbargs); ?>
        </div>      
    </a>

    <?php
    endwhile;
    endif; // End loop

如果这对任何人都有帮助,那么它就是Gist形式:https://gist.github.com/anonymous/8984741

我尝试添加可提供某些背景信息的评论。

有关正在发生的事情的任何想法?如果这也有帮助,我可以提供生成的HTML源代码。

1 个答案:

答案 0 :(得分:1)

看起来你实际上并没有在下面的代码中设置$ thumbsize

$thumbsize == array(320,260);

==将$ thumbsize与该数组进行比较,而不是使用这些值创建数组。

你真的希望它看起来像这样:

$thumbsize = array(320,260);