如何确定Wordpress中设置的摘录长度?

时间:2014-07-14 15:37:09

标签: wordpress post jquery-isotope string-length wp-query

我正在使用Isotope在博客页面和类别页面底部安排博客帖子的网站上工作。我遇到的问题是这些帖子的摘录太长了。我希望它们只是一个段而不是4个或5个(see the problem at the bottom of this page)。另一位开发人员设置了这个,然后离开了项目,我无法确定这些摘录长度的设置位置。这就是代码在category.php模板上的样子。

<div class="catfooter">
<div class="wrap">
<div class="clearfix">
<div class="h3 text-white"><?php single_cat_title('Read More About '); ?></div>
<img src="http://www.oakwoodsys.com/wp-content/uploads/light-blue-line.png">
<?php

    echo '<ul id="isotope-container" class="masonry">';

    $catID = get_query_var('cat');

    $paged = ( get_query_var('page') ) ? get_query_var('page') : 1;

    $posts_per_page = 4;

    $args = array(
        'post_type'     => array('post', 'oakwood_quote', 'oakwood_whitepaper', 'oakwood_casestudies', 'oakwood_video'),
        'posts_per_page' => $posts_per_page,
        'paged'         => $paged,
        'cat'           => $catID,

    );
    $insights_query = new WP_Query( $args );

    if ( $insights_query->have_posts() ) {


        while ( $insights_query->have_posts() ) {
            $insights_query->the_post();

            output_insight($post);


        }   
    }

    echo '</ul>';

$temp_query = $wp_query;
$wp_query   = NULL;
$wp_query   = $insights_query;



?>
</div>

<?php

$wp_query = $temp_query;

?>
</div>
</div>
</div>
</div>

我尝试将$insights_query->the_post();更改为$insights_query->the_excerpt();,但它打破了页面。如何在此处设置摘录长度?

1 个答案:

答案 0 :(得分:1)

您可以更改功能中的摘录长度。

示例(您还可以按ID设置特定类别。

function new_excerpt_length($length) {
if(in_category()) {
return 300;
} else {
return 60;
}
}
add_filter('excerpt_length', 'new_excerpt_length');

此外,如果您在WordPress中有摘录,您可以使用它来提供对所包含文本数量的更多控制。

我也会给这个编辑一个go(包括这里的摘录):

( $insights_query->have_posts() ) {
            $insights_query->the_post();
            the_excerpt();
        }   

不完全确定{post}来自output_insight($post);$insights_query->显示传入的所有内容,以分号分隔。为了接受手册摘录,WordPress需要知道它应该去哪里(主题中的定义是必需的)。