类别的不同样式-需要编辑插件

时间:2014-11-21 作者:Ger Callaghan

我正在使用一个插件将最近的帖子添加到主页,并且我正在使用不同的类别样式。我在博客页面上有不同的风格,但在插件输出的帖子上没有。

这是我需要添加的代码:

<?php post_class(); ?> 
我认为这是它应该去的地方,但我不知道如何做到这一点:

// Opening single post container.
$srp_content .= \'<div id="\' . $srp_post_id . \'" class="srp-widget-singlepost \' . $single_post_additional_classes . \'">\';
    // Checking if "post title above thumb" option is on.
    if ( \'yes\' == $this->widget_args[ \'post_title_above_thumb\' ] ) {
        // Generating the post title.
        $srp_content .= $this->generate_post_title( $recent_posts->post );
    }

1 个回复
SO网友:Nicolai Grossherr

如果我没有完全遗漏一些东西,那么只需对代码进行一点小小的更改就可以实现。您不能使用post_class() 在代码中输出/回显类。但确实有get_post_class(), 它确实返回类,但它们作为数组返回。因此,您需要从中生成一个字符串,以便在代码中使用。让我们按原样做吧post_class() - 看见source - 使用PHPjoin(), 但没有回应和添加属性本身。

通常是这样的:

$post_classes_string = join( \' \', get_post_class( $class, $post_id ) );
如果您不需要额外的课程,请更换$class 具有\'\'. 如果你在The Loop 您可以省略$post_id, 否则,您将需要它。返回的post类包含一些category-* 其中* 将是类别名称,这使您可以在类别的基础上对您的帖子进行寻址。

最后但并非最不重要的一点是,在解决了上述细节之后,您应该能够通过执行以下操作简单地添加类:

$srp_content .= \'<div 
    id="\' . $srp_post_id . \'" 
    class="srp-widget-singlepost
         \' . $single_post_additional_classes . \' \' . $post_classes_string . \'">\';

结束

相关推荐

Show Pages in Categories

通过将此代码添加到函数中,我创建了category函数。php:function page_category() { register_taxonomy_for_object_type(\'category\', \'page\'); } // Add to the admin_init hook of your theme functions.php file add_action( \'init\', \'page_category\' ); 但问