wordpress 在摘要显示文章里最新更新的图片 比如文章里有100张图片 我只要他在摘要里显示一张

wordpress 在摘要显示文章里最新更新的图片 比如文章里有100张图片 我只要他在摘要里显示一张,第1张

一种方法是手动维护缩略图,并于代码中添加缩略图获取代码。

这种方法结果会比较满意,因为是手动指定的,就是工作量大点。

还有一种方法,直接在代码里编写:

if ( have_posts() ) :

 

    while (have_posts() ) : the_post();

        if ( ! is_single() ) :

            $thumb = '';

            preg_match_all('|<imgsrc=[\'"]()[\'"]>|i', get_the_content(), $matches);

            if(isset($matches[1][0])){

                $thumb = $matches[1][0]; //获取内容中的第一张地址

            }

            if ( $thumb ) { //正确获取后进行输出

                printf( '<img src="%s" alt="" />', $thumb );

            }

            the_excerpt(); 

        else

            the_content();

        endif;

 

    endwhile;   

 

endif;

从当前主题中引入 headerphp 模板文件。如果名字是特定的,那么包含特定名称的头部文件 header-{name}php 就会被引入。

如果主题没有 headerphp 文件,就会引入默认文件 wp-includes/theme-compat/headerphp 。

这个功能我也曾想要,但找了一圈,没有如意的。

后来还是用simple_html_dom完成想要的采集功能。

而像美丽说、花瓣、有道云笔记等采集、收藏功能,都是通过javascript在当前dom中添加代码,并遍历所要的内容,再行回传到数据库的。所以制作起来,还是有点难度的。

在Functionphp里面加入一段获取首张的函数:

function catch_that_image() {

global $post, $posts;

$first_img = '';

ob_start();

ob_end_clean();

$output = preg_match_all('/<img+src=[\'"]([^\'"]+)[\'"]>/i', $post->post_content, $matches);

$first_img = $matches [1] [0];

if(empty($first_img)){

$first_img = get_bloginfo('template_directory')"/images/defaultjpg";

}

return $first_img;

}

调用代码(写出大致功能实现方法,具体样式请自己修改):

<php

query_posts(cat=分类ID,showposts=调用数量);

>

<ul>

<php if (have_posts()) :while (have_posts()) : the_post(); >

<li>

<img src="<php echo catch_that_image(); >" alt="<php the_title(); >" />//缩略图

<a href="<php the_permalink() >" ><php the_title(); ></a>//标题

/文章摘要开始/

<php

if ($post->post_excerpt) {

echo $post->post_excerpt;

}

else{

echo cut_str(strip_tags(apply_filters('the_content', $post->post_content)),40,"…");

}

>

/文章摘要结束/

</li>

<php endwhile; endif; >

</ul>

<php wp_reset_query(); >

亲,你好,很高兴为你回答。

      <php query_posts('category_name==news&showposts=3'); >

      <php if (have_posts()) : >

      <php while (have_posts()) : the_post(); >

       

<a href="<php the_permalink() >"

 rel="bookmark" title="<php the_title(); >">

          <php

if ( has_post_thumbnail() ) {

    the_post_thumbnail(); 

} else {

    print '<img src="/img/top_printinggif" alt="no image" width="100" height="70" />';

}

>

          </a> 

            <php the_time(__('F jS, Y', 'kubrick')) >

          <a href="<php the_permalink() >" rel="bookmark" title="<php the_title(); >">

          <php the_title(); >

          </a> 

      <php endwhile; >

      <php endif; >

上面的代码是指定分类下调用标题 标题

其中<php query_posts('category_name==news&showposts=3'); >

这段代码的意思是调用分类名为news下的内容,这个你可以修改成你想调用的分类英文名,后面的3是调用最新的3条内容,这个数字你可以根据你的要求随意修改。

如果满意,请采纳。如果有问题,请追问。谢谢。

以上就是关于wordpress 在摘要显示文章里最新更新的图片 比如文章里有100张图片 我只要他在摘要里显示一张全部的内容,包括:wordpress 在摘要显示文章里最新更新的图片 比如文章里有100张图片 我只要他在摘要里显示一张、wordpress的get_header_image()方法获取的图片是在哪个位置的、wordpress图片采集插件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9515648.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存