soberwp/models

此包已被 废弃 并不再维护。没有建议的替代包。

WordPress 插件,允许您使用 JSON、YAML 或 PHP 文件创建自定义文章类型和分类法。

安装次数: 67,878

依赖项: 3

建议者: 1

安全性: 0

星标: 172

关注者: 13

分支: 13

公开问题: 3

类型:wordpress-muplugin

1.1.0-p 2018-08-14 10:12 UTC

This package is auto-updated.

Last update: 2023-07-24 18:14:12 UTC


README

Models 是一个 WordPress 插件,允许您使用 JSON、YAML 或 PHP 文件创建自定义文章类型和分类法。

现在您可以使用 Intervention 2.x.x 设置文章类型和分类法。

安装

Composer

推荐方法

Roots Bedrock

$ composer require soberwp/models:1.1.0

Models 是一个 mu-plugin,因此不需要激活。

Roots Sage

$ composer require soberwp/models:1.1.0-p

手动

  • 下载 zip 文件
  • 解压到您的站点插件文件夹
  • 通过 WordPress 激活

要求

设置

默认情况下,在活动主题目录中创建 models/ 文件夹。

如果您使用的是 Roots Sage,默认文件夹是 app/models/

或者,您可以在主题的 functions.php 文件中使用以下过滤器定义自定义路径

add_filter('sober/models/path', function () {
    return get_stylesheet_directory() . '/your-custom-folder';
});

就这样,现在您可以将 model-name.json 文件添加到文件夹或子文件夹中,开始创建模型。使用 Unravel 将配置文件自动移动到主题路径之外,以更好地分离关注点。

用法

数据结构遵循与 WordPress 分类和文章类型数组类似的数据结构,因此如果以下示例中缺少配置选项,请按照开发者参考将其放置在 "config": {}

如果没有指定值,默认值与 WordPress 默认值相同。

此外,如果可用 Extended CPTs 库,则 Models 将在注册您的文章类型和分类法时使用它,而不是允许在 Models 中扩展功能。

以下展示的提取示例为 JSON 格式。

文章类型

创建自定义文章类型。

必需的

{
  "type": "post-type",
  "name": "book"
}

基本

{
  "type": "cpt",
  "name": "book",
  "supports": [
    "title", "editor", "thumbnail"
  ],
  "labels": {
    "has_one": "Book",
    "has_many": "Books",
    "text_domain": "sage"
  }
}

在上面的示例中,"labels": {} 是冗余的,因为 "Book""Books" 将从 "name" 生成。

多个

[
  {
    "type": "cpt",
    "name": "book",
    "supports": [
      "title", "editor", "thumbnail"
    ]
  },
  {
    "type": "cpt",
    "name": "album",
    "supports": [
      "title", "editor", "comments"
    ]
  }
]

所有字段

文章类型提示

  • "active": false 会阻止创建文章类型。默认设置为 true
  • "type": "post-type" 也接受缩写 "type": "cpt";

分类法

创建自定义分类法。

必需

{
  "type": "taxonomy",
  "name": "genre"
}

基本

{
  "type": "tax",
  "name": "genre",
  "links": [
    "post", "book"
  ],
  "labels": {
    "has_one": "Book Genre",
    "has_many": "Book Genres",
    "text_domain": "sage"
  }
}

"links": (string|array) 将分类法分配给文章类型。默认为 "links": "post"

多重

[
  {
    "type": "category",
    "name": "genre",
    "links": "book"
  },
  {
    "type": "tag",
    "name": "author",
    "links": "book"
  }
]

"type": "category""type": "tag" 缩写将在提示中解释。

所有字段

分类法提示

  • "active": false 会阻止创建分类法。默认设置为 true
  • "type": "taxonomy" 也接受缩写;
    • "type": "tax"
    • "type": "category""type": "cat" 创建分类法。
    • "type": "tag" 创建标签分类法。

支持

更新

Composer

  • 将 composer.json 版本更改为 ^1.0.4**
  • 在更新之前检查 CHANGELOG.md 以查找任何破坏性更改。
$ composer update

WordPress

包括对 github-updater 的支持,以通过 WordPress 后端跟踪更新。