flexpress/component-taxonomy

该软件包最新版本(v1.0.0)没有提供许可证信息。

WordPress 分类助手

v1.0.0 2014-08-13 15:01 UTC

This package is not auto-updated.

Last update: 2024-09-24 08:00:37 UTC


README

使用 Pimple 安装

分类组件使用两个类

  • AbstractTaxonommy,您可以通过扩展它来创建分类。
  • TaxonomyHelper,它会自动挂钩所有内容并注册分类。

让我们为这两个创建一个 pimple 配置

$pimple["documentTypeTaxonomy"] = function () {
  return new DocumentType();
};

$pimple['taxonomyHelper'] = function ($c) {
    return new TaxonomyHelper($c['objectStorage'], array(
        $c["documentTypeTaxonomy"]
    ));
};
  • 注意依赖 $c['objectStorage'] 是一个 SPLObjectStorage

创建一个具体的分类类

创建一个实现 AbstractTaxonomy 类并实现 getName() 和 getSupportedPostTypes() 方法的具体类。

class DocumentType extends AbstractTaxonomy {

    public function getName()
    {
      return "document-type";
    }
    
    public function getSupportedPostTypes()
    {
      return array("document");
    }

}

上面的例子是您必须实现的最小要求,下面的例子是另一个极端,实现了所有可用的方法。

class DocumentType extends AbstractTaxonomy {

  public function getName()
  {
    return "document-type";
  }
  
  public function getSupportedPostTypes()
  {
    return array("document");
  }

  protected function getLabels()
  {
    $labels = parent::getLabels();
    $labels['menu_name'] = 'Type';
    return $labels;
  }
  
  public function getArgs()
  {
    $args = parent::getArgs();
    $args['query_var'] = false;
    return $args;
  }
  
  public function getPluralName()
  {
    return "Doc types";
  }
  
  public function getSingularName()
  {
    return "Doc type";
  }

}

公共方法

  • getSingularName() - 返回分类的单数名称。
  • getPluralName() - 返回分类的复数名称。
  • getArgs() - 返回参数数组。
  • getLabels() - 返回标签数组。
  • getName() - 返回分类名称。
  • getSupportedPostTypes() - 返回应该附加到该分类的帖子类型数组。

TaxonomyHelper 使用

设置 pimple 配置后,您可以像这样使用 TaxonomyHelper

$helper = $pimple['taxonomyHelper'];
$helper->registerTaxonomies();

就是这样,辅助工具将添加所有需要的钩子并注册您提供的所有分类。

公共方法

  • registerTaxonomies() - 注册提供的分类。