Rich Taxonomy

描述

This plugin create a custom post type “Taoxnomy Page” which related to a term.

How It Works

Taxonomy Page will override the 1st page of term archive. You can choose which taxonomy to have a Taxonomy Page.

For example:

  1. You have decided “category” to have Taxonomy Page.
  2. Create a Taxonomy Page “Book” for category “Book”.
  3. Edit the Taxonomy Page in block editor and publish it.
  4. Now the 1st page of “Book” category /category/book will dipslay the contents of the Taxonomy Page “Book”.

Template Structure

You can choose a template for the taxonomy page in editor,
but you can put singular-taxonomy-page.php template in your theme and there’s no need to choose.
Below is the default template priority.

  1. singular-taxonomy-page.php
  2. page.php
  3. singular.php
  4. single.php
  5. index.php

Filter hook rich_taxonomy_include_template is also available.

Customization

Archive Block

Archive blocks has tempalte structure like below.

template-parts
- rich-taxonomy
  - archive-block-loop.php    // Loop of post list.
  - archive-block-more.php    // Link button.
  - archive-block-toggle.php  // Toggle button.
  - archive-block-wrapper.php // Wrapper of archive.

If the theme has files in the same path, that priors.
Copy the file and customize one as you like.

Styles

To override styles, 4 hooks are available.

  1. rich_taxonomy_block_asset_style
  2. rich_taxonomy_block_asset_editor_style
  3. rich_taxonomy_block_asset_script
  4. rich_taxonomy_block_asset_editor_script

To change looks & feels, rich_taxonomy_block_asset_style is the best starting point.

// Register style.
add_action( 'init', function() {
    wp_registeR_style( 'my-archive-block', $url, $deps, $version );
} );

// Override handle.
add_filter( 'rich_taxonomy_block_asset_style', function( $handle, $block_name ) {
    if ( 'rich-taxonomy/arcvhie-block' === $block_name ) {
        $handle = 'my-archive-block';
    }
    return $handle;
}, 10, 2 );

This style is loaded in both public and editor.

Default Contents

To define the default contents of the taxonomy page, use rich_taxonomy_default_post_object filter hook.

/**
 * Filter default post object.
 *
 * @param array   $args    Post object passed to wp_insert_post().
 * @param WP_Term $term    Term object assigned to this post.
 * @param string  $context Currently only 'api' is supported.
 */ 
add_filter( 'rich_taxonomy_default_post_object', function( $args, $term, $contest ) {
    // If specific taxonomy, enter default content.
    if ( 'category' === $term->taxonomy ) {
        // Post body.
        $args['post_content'] = 'Here comes default content.';
        // Publish immediately.
        $args['post_status']  = 'publish';
    }
    return $args;
}, 10, 3 );

安装

From Plugin Directory

  1. Click install and activate it.
  2. Select the taxsonomies at the Reading Settings page (Setting > Reading).

From Github

See releases.

常见问题

Where can I get supported?

Please create a new ticket on the support forum.

How can I contribute?

Create a new issue or send pull requests.

评价

此插件暂无评价。

贡献者及开发者

“Rich Taxonomy” 是开源软件。 以下人员对此插件做出了贡献。

贡献者

「Rich Taxonomy」插件已被翻译至 1 种本地化语言。 感谢所有译者为本插件所做的贡献。

将“Rich Taxonomy”翻译成您的语言。

对开发感兴趣吗?

您可以浏览代码,查看SVN仓库,或通过RSS订阅开发日志

更新日志

1.1.2

  • Fix bug on template selector.

1.1.1

  • Fix a bug that breaks the block widgets screen.
  • Update README for clearance of installation. props @megane9988

1.1.0

  • Fix the bug for block disappearing.

1.0.9

  • Fix a bug in the template selector in the taxonomy page editor.

1.0.0

  • First release.