这种显示图像alt和标题的wordpress方法看起来很脏

时间:2013-07-28 19:23:52

标签: php wordpress

在使用循环和Wordpress功能解决之后,这是我用alt == excerpttitle == title自动显示“精选”图像的唯一方法。

这是最有效的方法吗?

<?php
query_posts(array('category_name' => 'Featured')); 
    if (have_posts()) : while(have_posts()) : the_post();
    $alt = get_the_excerpt();
    $title = get_the_title();
    the_post_thumbnail( 'full', array('alt' => $alt, 'title' => $title, 'class' => 'bigImg') ); 

    endwhile; endif; 
?>

最让我烦恼的是我在循环中定义摘录和标题的事实,因此我还必须在循环中显示我的散列数组。关于它的一些东西并不适合我。

2 个答案:

答案 0 :(得分:1)

为什么不只是global $post;,然后在需要的地方使用$post['post_title']

使用get_the_*()函数也会对这些值应用过滤器你想要

PS 我不确定问题是否正确,但你抱怨两个看起来多余的变量。完成后,您可以随时unset($alt, $title)

答案 1 :(得分:1)

实际上,您可以使用<?php the_excerpt(); ?><?php the_title(); ?><?php the_excerpt(); ?>,而无需定义它们。

我假设你正在展示一个特色帖子。为什么不添加一些HTML和CSS来设置循环样式?以下是我将要使用的内容。

<?php query_posts( '$cat=1' . '&posts_per_page=1' );
        if (have_posts()) : while (have_posts()) : the_post(); ?>

<article class="column">

<div class="thumbnail"><?php echo get_the_post_thumbnail($page->ID, array(254,254), 'thumbnail'); ?></div>
    <h2 class="title"><?php the_title(); ?></h2>
       <div class="post">
        <p>Posted in <a href="<?php $category = get_the_category();?>">
        <?php echo $category[0]->cat_name;?></a> <br />on <?php the_time('d/m/Y'); ?></p>
       </div>
    <p><?php the_excerpt(); ?></p>
</article>
<?php endwhile;?>
<?php endif;?>

$cat是类别,您可以从wordpress中找到“特色”的类别。如果您想要显示多个帖子,可以将&posts_per_page=1更改为您想要的任何数字。