如何在每个分类页面的顶部显示自定义静态内容?

时间:2012-11-30 作者:SachinKRaj

我想在每个类别页面的顶部(每个类别和子类别不同)显示自定义静态内容,本质上是一个图像和一个小描述,显示在类别文章标题列表上方,并附有摘录。

是否有可用于此的自动化解决方案/插件?我也需要一种自动插入文本/图像的方法,因为我想把它传递给我的内容作者,他会处理新的类别。一个富文本编辑器,我可以在其中插入图像和文本,这些图像和文本将被分配到一个类别,并可以显示在类别页面的顶部。

4 个回复
SO网友:kaiser

只需拨打电话category_description() - 这将显示您可以为添加到管理UI中“类别”(或post标记或其他自定义分类)下的每个类别输入的描述。

您也可以使用底层API函数:

term_description( $category, \'category\' );

SO网友:Howdy_McGee

这是DIY人员的原始代码。

/** Add New Field To Category **/
function extra_category_fields( $tag ) {
    $t_id = $tag->term_id;
    $cat_meta = get_option( "category_$t_id" );
?>
<tr class="form-field">
    <th scope="row" valign="top"><label for="meta-content"><?php _e(\'Landing Page Content\'); ?></label></th>
    <td>
        <div id="catContent">
            <style type="text/css">.form-field input {width: auto!important;}</style>
            <?php wp_editor($cat_meta[\'content\'], \'cat_landing\', array(
                    \'textarea_name\' =>  \'cat_meta[content]\',
                    \'textarea_rows\' =>  15,
            )); ?>
        </div>
        <span class="description"><?php _e(\'Landing Page Content, Edit This Like You Would A Page.\'); ?></span>
    </td> 
</tr>
<?php
}
add_action(\'category_edit_form_fields\',\'extra_category_fields\');  

/** Save Category Meta **/
function save_extra_category_fileds( $term_id ) {
    global $wpdb;
    if ( isset( $_POST[\'cat_meta\'] ) ) {
        $t_id = $term_id;
        $cat_meta = get_option( "category_$t_id");
        $cat_keys = array_keys($_POST[\'cat_meta\']);
            foreach ($cat_keys as $key){
            if (isset($_POST[\'cat_meta\'][$key])){
                $cat_meta[$key] = $_POST[\'cat_meta\'][$key];
            }
        }
        update_option( "category_$t_id", $cat_meta );
    }
}
add_action ( \'edited_category\', \'save_extra_category_fileds\');
有了这些,您实际上可以做更多的事情,例如adding an ordering field 或是你内心渴望的任何东西。

在行动电话中,您可以更改:

add_action(\'category_edit_form_fields\',\'extra_category_fields\'); 根据您的具体情况

通过将类别更改为分类名称进行分类,如下所示:

add_action(\'YOUR-TAX-HERE_edit_form_fields\',\'extra_category_fields\');
add_action ( \'edited_YOUR-TAX-HERE\', \'save_extra_category_fileds\');
最后,要获取元内容,您可以使用以下内容:

$category_id = get_cat_ID();
if($category_id != 0){
    $cat_meta = get_option( "category_$category_id");
    echo apply_filters(\'the_content\', $cat_meta[\'content\']);
}

SO网友:Kristian Vitozev

您可以使用以下插件:http://wordpress.org/extend/plugins/categorytinymce/screenshots/

然后,在模板文件中插入the_description() 模板标记。

SO网友:neoian

我会使用这样的插件ACF 为类别的图像和描述创建字段,因为非技术人员将使用它。然后可以使用找到的信息查询分类法的字段here. 你甚至可以使用the_description() 只有一个自定义字段用于上传图像。

结束

相关推荐

Match two posts in categories

我有博客帖子,每一篇都有三个或三个以上的类别。问题是我需要搜索相关帖子,我必须匹配至少两个类别,即必须有两个常见类别。我正在使用此查询: $args = wp_parse_args($args, array( \'showposts\' => 10, \'post__not_in\' => array($post_id), \'ignore_sticky_posts\' => 1, \'category__in\' =&