soberwp / models
WordPress 插件,允许您使用 JSON、YAML 或 PHP 文件创建自定义文章类型和分类法。
Requires
- php: >=5.6
- composer/installers: ^1.5
- hassankhan/config: ^1.0
- symfony/yaml: ^4.1
Requires (Dev)
README
Models 是一个 WordPress 插件,允许您使用 JSON、YAML 或 PHP 文件创建自定义文章类型和分类法。
现在您可以使用 Intervention 2.x.x 设置文章类型和分类法。
安装
Composer
推荐方法
$ composer require soberwp/models:1.1.0
Models 是一个 mu-plugin,因此不需要激活。
$ composer require soberwp/models:1.1.0-p
手动
- 下载 zip 文件
- 解压到您的站点插件文件夹
- 通过 WordPress 激活
要求
- PHP >= 5.6.x
设置
默认情况下,在活动主题目录中创建 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"创建标签分类法。
支持
- 在 Twitter 上关注 @withjacoby
- 买我一杯啤酒或付我的房租,paypal.me/darrenjacoby
更新
Composer
- 将 composer.json 版本更改为 ^1.0.4**
- 在更新之前检查 CHANGELOG.md 以查找任何破坏性更改。
$ composer update
WordPress
包括对 github-updater 的支持,以通过 WordPress 后端跟踪更新。
- 下载 github-updater
- 将 github-updater 克隆到您的站点插件文件夹
- 通过 WordPress 激活