如何在循环和单个WordPress中有不同的内容

时间:2012-07-24 17:05:43

标签: wordpress

http://css-tricks.com/video-screencasts/

试着看看这个由wordpress提供支持的着名网站。循环中的内容与单个帖子不同。它在循环中使用“dl”元素,但不是单个帖子中的主要内容。它类似于它有一个只会循环显示的帖子的另一个简短摘要。

所以我的麻烦是如何在多个帖子的循环中显示某些内容(包括图像,文章,视频嵌入),但不会在单个帖子中显示,反之亦然。

2 个答案:

答案 0 :(得分:1)

首先,让我们从我们对网站结构的了解开始。您正在查看的页面有一个名为“视频截屏”的自定义帖子类型,或者它使用的是“视频截屏”类别,因此多个帖子页面上使用的模板可能就是其中之一:

如果视频截屏是一个类别

  1. 类别的视频screencasts.php
  2. 类别 - {CAT_ID} .PHP
  3. category.php
  4. 如果视频截屏是自定义帖子类型

    1. 归档视频screencasts.php
    2. archive.php
    3. index.php(不太可能)
    4. 最终,它可能正在使用的任何模板文件都不会给你带来太大的影响。这些只是您以类似方式组织自己网站的可能选择。

      其次,让我们看看多个帖子页面和单个帖子页面之间的结构差异。多个帖子页面正在运行查询,并根据查询结果返回一系列特色图片摘录。单个帖子页面会返回帖子本身的实际内容

      所以现在,我们需要了解我们将如何做这样的事情。让我们从图像开始:

      这可以通过两种方式之一完成。在创建主题时,您可以将预览图像附加到帖子中,这可能是最适合Wordpress的方式Add Theme Support for Post Thumbnails。另一种可能的方法是Add a Custom Field(可能将其命名为“previewImg”),其中包含您要显示的图像缩略图的路径。

      摘录:

      帖子和页面有一个可以设置的可选Excerpt Field。要自己查看,请导航到Post Editor,然后查看页面的右上角。你会看到一个显示“屏幕选项”的按钮。这将允许您打开可用于微调条目的各种帖子/页面控件。摘录和自定义字段只是您可以在此区域内启用的众多选项中的两个。

      每个帖子和页面都有一个摘录。通常情况下,Wordpress将默认为帖子内容的前50个单词,但您可以通过将HTML放入Post的摘录字段来覆盖它。现在只需要生成循环:

      <?php
      $query = new WP_Query(array('category_name'=>'video-screencasts'));
      if($query->have_posts()) : while($query->have_posts()) : $query->the_post();
      ?>
      <div class="post_result">
          <a class="thumb" href="<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?></a>
          <h1 class="title"><?php the_title(); ?></h1>
          <p class="excerpt"><?php the_excerpt(); ?></p>
      </div>
      <?php
      endwhile;endif;
      ?>
      

      这只是一个可以利用我上面描述的一些基本级别的例子。这也假设“视频截屏”是一个类别,并且已启用对Post Thumbnails的主题支持。

      对于单个帖子模板,代码本身是最小的:

      <?php
      if(have_posts()) : while(have_posts()) : the_post();
      ?>
      <h1 class="title"><?php the_title(); ?></h1>
      <?php
      the_content();
      endwhile;endif;
      ?>
      

      如前所述,这并不完全是他们的页面设置方式,这些代码示例旨在说明如何实现您想要的目标。

      总而言之,您需要阅读一些关于如何利用大量功能来根据您的需求定制所有功能的内容,并通过编写一些自己的代码来解决问题。但总的来说,我认为这涵盖了您需要知道的一切,以帮助您开始朝着正确的方向前进。

      祝你好运。

答案 1 :(得分:0)

我最终确定了2个解决方案

1。)使用自定义摘录+特征图像

2.)使用自定义字段和wordpress函数中的get_post_custom构建