0

好的,经过大量搜索,我遇到了这个问题。目前我正在为每个帖子手动执行此操作。Wordpress 方法要么放置一个自定义片段(为每个帖子定义),要么自己生成一个小片段(使用方法 the_excerpt())。

问题是该片段没有帖子中第一张图片的缩略图。

参考链接:http ://www.azuyo.com/blogs

下面是 index.php 中的代码:

<?php
    the_excerpt();
?>

这是我为每个帖子手动创建的自定义 html:

<a href="http://azuyo.com/blogs/2013/08/21/its-time-to-give-your-business-the-mobile-app-advantage/"><img src="http://azuyo.com/blogs/wp-content/uploads/2013/08/theworld-150x150.jpg" alt="theworld" width="150" height="150" hspace="10" vspace="10" class="alignleft size-thumbnail wp-image-895" /></a>

Excerpt Text

</a> <a href="http://azuyo.com/blogs/2013/08/21/its-time-to-give-your-business-the-mobile-app-advantage">read more</a>

我该如何自动化呢?

4

1 回答 1

0

将以下功能放入您的主题functions.php

function trim_excerpt($text) {
        global $post;
        if ( '' == $text ) {
                $text = get_the_content('');
                $text = apply_filters('the_content', $text);
                $text = str_replace('\]\]\>', ']]&gt;', $text);
                $text = preg_replace('@<script[^>]*?>.*?</script>@si', '', $text);
                $text = strip_tags($text, '<img>');
                $excerpt_length = 80;
                $words = explode(' ', $text, $excerpt_length + 1);
                if (count($words)> $excerpt_length) {
                        array_pop($words);
                        array_push($words, '[...]');
                        $text = implode(' ', $words);
                }
        }
        return $text;
}
remove_filter('get_the_excerpt', 'wp_trim_excerpt');
add_filter('get_the_excerpt', 'trim_excerpt');

请注意,以下行是您告诉函数剥离除标签之外的所有标签的地方。如果您想包含段落标签或其他内容,您可以添加其他人:

$text = strip_tags($text, '<img>');

之后你可以调用 the_excerpt(); 照常

于 2013-08-22T10:34:05.037 回答