为WordPress页面(page)添加标签和分类功能

WordPress的页面(page)默认是不支持添加标签和分类的,下面倡萌将分享下,让页面支持添加标签和分类,以及在标签存档和分类存档中包含页面的方法。

post-tags-and-categories-for-pages-wpdaxue_com

要实现该功能,只需下载安装 Post Tags and Categories for Pages 插件。或者你也可以将下面的代码(来自该插件)直接添加到当前主题的 functions.php 文件即可:

//为WordPress页面添加标签和分类

class PTCFP{

  function __construct(){

    add_action( 'init', array( $this, 'taxonomies_for_pages' ) );

    /**
     * 确保这些查询修改不会作用于管理后台,防止文章和页面混杂 
     */
    if ( ! is_admin() ) {
      add_action( 'pre_get_posts', array( $this, 'category_archives' ) );
      add_action( 'pre_get_posts', array( $this, 'tags_archives' ) );
    } // ! is_admin

  } // __construct

  /**
   * 为“页面”添加“标签”和“分类”
   *
   * @uses register_taxonomy_for_object_type
   */
  function taxonomies_for_pages() {
      register_taxonomy_for_object_type( 'post_tag', 'page' );
      register_taxonomy_for_object_type( 'category', 'page' );
  } // taxonomies_for_pages

  /**
   * 在标签存档中包含“页面”
   */
  function tags_archives( $wp_query ) {

    if ( $wp_query->get( 'tag' ) )
      $wp_query->set( 'post_type', 'any' );

  } // tags_archives

  /**
   * 在分类存档中包含“页面”
   */
  function category_archives( $wp_query ) {

    if ( $wp_query->get( 'category_name' ) || $wp_query->get( 'cat' ) )
      $wp_query->set( 'post_type', 'any' );

  } // category_archives

} // PTCFP

$ptcfp = new PTCFP();
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
欢迎关注我们的微信公众号:WPDAXUE

倡萌

一个文科IT宅男,喜欢折腾WordPress和被它折腾 ^_^

2 条评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注