首页 » 建站技术 » WordPress » 浏览内容

WordPress-自动获取文章中的图片


2011-01-02 12:35:00 2,589 0 发表评论 字体: 作者:C.K.
标签: WordPress

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

自动搜索文章图片,然后,显示:

<?php if (have_posts()) : ?>
  • <?php while (have_posts()) : the_post(); ?>
  • <?php
  • $szPostContent = $post->post_content;
  • $szSearchPattern = '~<img [^\>]*\ />~'; // 搜索所有符合的图片
  • preg_match_all( $szSearchPattern, $szPostContent, $aPics );
  • $iNumberOfPics = count($aPics[0]); // 检查一下至少有一张图片
  • if ( $iNumberOfPics > 0 ) {
  • // 这里是你怎么处理图片的内容
  • for ( $i=0; $i < $iNumberOfPics ; $i++ ) {
  • echo $aPics[0][$i];
  • };
  • };
  • endwhile;
  • endif;
  • ?>

  • 如果一篇文章有多个图片的话,都统统会被显示出来。有时我们只需要显示一张,那这个代码就不符合我们的要求了,所以,让我们来小小地修改一下代码:

    <?php
  • $soContent = $post->post_content;
  • $soImages = '~<img [^\>]*\ />~';
  • preg_match_all( $soImages, $soContent, $thePics );
  • $allPics = count($thePics[0]);
  • switch ( $allPics > 0 ) {
  • case $allPics = 1:
  • echo $thePics[0][0]; // 显示文章中的第一张图片
  • break; // 当图片数量有1个时,不再执行
  • default:
  • echo "这里应该显示图片,而不是sofish"; // 这里加入没图片时显示的默认图片
  • };
  • ?>
  • 像上面说明的,我们用switch语句,而不是if…else if…else这样,来获取我们的一张图片。当检查到一张的时候,代码不再运行。这样也省去了对服务器的请求。
    本文内容源于:http://www.happinesz.cn/archives/935/

    网站统计 Statistics

    • 创建时间: 2005年1月3日 距今5062 天
    • 日志总数: 2461
    • 评论总数: 630
    • 标签总数: 654
    • 链接总数: 273
    • 最后更新: 2018-8-31 17:57:04
    • 您是本站第 14144353 位访客

    广告区 Guǎng Gào