innocode-digital / wpkit
此包已被 废弃 且不再维护。未建议替代包。
WordPress 的面向对象开发框架。
1.8.0
2021-03-03 13:53 UTC
Requires
- php: >=5.4.0
This package is auto-updated.
Last update: 2023-06-10 19:40:08 UTC
README
WordPress 的面向对象开发框架,简化开发者生活。
现在你可以花更少的时间在常规操作上,比如创建文章类型、分类、元框等。WPKit 将帮助你编写更少的代码 -> 喝更多啤酒 :)
由 Redink AS 支持
许可证
WPKit 框架是开源软件,根据 GPL-2+ 许可证分发。有关更多信息,请参阅 LICENSE。
初始化
只需包含 WPKit 自动加载器
require_once __DIR__ . '/WPKit/init_autoloader.php';
然后你就可以开始使用了。我们建议使用 WPKit 完全支持的模块结构。
使用示例
文章类型
让我们创建一个文章类型“汽车”。你只需要创建一个带有 slug 和单名的 PostType
实例。
$cars_post_type = new WPKit\PostType\PostType('car','Car');
元框
现在我们需要添加一些自定义字段。首先,我们需要创建元框
$metabox = new WPKit\PostType\MetaBox('data','Properties');
然后将此元框添加到我们的文章类型
$cars_post_type->add_metabox( $metabox );
或者
$metabox->add_post_type( $cars_post_type );
你可以将一个元框添加到多个文章类型中。
字段
$metabox->add_field( 'reg_no', 'Registration #' ); // By default Text field will be used $metabox->add_field( 'year', 'Year', 'Number' ); // You can set Field in 3rd parameter as string $metabox->add_field( 'color', 'Color', function(){ // Or use more flexible callback function $filed = new WPKit\Fields\Select(); $filed->set_options([ // Like settings options and other 'red', 'black', 'white', 'yellow' ]); return $filed; // Function should always return created filed } );
要获取自定义字段的值,请使用 MetaBox::get()
方法。
<?php $year = WPKit\PostType\MetaBox::get( get_the_ID(), 'data', 'year' ); ?>
测试
你可以使用 WP_Mock。这里有一些测试的引导文件示例
require_once 'vendor/autoload.php'; WP_Mock::bootstrap(); define( 'TEMPLATEPATH', __DIR__ ); $loader = new \WPKit\Module\Loader(); $loader->phpunit_load_modules();
更多功能将在 Wiki 中提供,或者你可以直接探索代码 ;)
发布历史
版本 1.7.0
- OptionPage 和分类的新选项
- 添加了 DateTime 和 PostSelect 字段
- Google 地图字段的 API 密钥
- 添加了使用 WP_Mock 的单元测试
- 修复 SSL 资产加载问题
- 修复在子主题中使用 WPKit 的问题
- Select2 更新到 4.0.3 版本
- Select2 的占位符修复
- 修复页面上的多个 Select2 问题
版本 1.6.3
- 重复项的修复
- 修复 http/https Select2 资产加载问题
版本 1.6.2
- 重复元框的默认值
- 在 URL 字段中自动添加 'http://'
- Option::get 方法中的默认值
- 在图像字段中移除 srcset
- Composer 重命名
- 修复
版本:1.6
- PostLoader 用于大型主页构建器以减少 SQL 查询
- 添加了 MetaBox Related Posts 的限制参数
- 添加了 PostType 的 show_in_menu 和 public 参数
- MetaBoxRepeatable - 添加了垂直布局和一些改进
- 添加了 Taxonomy 的 show_ui 参数
- 修复了 PostType 的 has_archive 类型
- 视频字段改为使用 oEmbed
- 文件字段修复以支持 SVG
- WP 4.5 的改进
- 由于核心WP功能,TaxonomyMeta 已弃用
- PHP 7 准备工作
版本:1.5.6
- 修复Youtube API密钥
版本:1.5.5
- APSIS集成
- 修复youtube和instagram集成问题
- 添加PHPDoc描述
版本:1.5
- 添加WPEditor参数
- Instagram中添加额外请求参数
- 在autoread初始化中添加add_action和add_filter
- 添加Transient缓存
- 在可重复操作中添加JS触发器
- 修复可重复metabox问题
- 修复屏幕上多个图片/文件按钮问题
版本:1.3
- 为帖子类型添加重写
- 为选择字段添加select2
- 添加本地化
- 为metabox Repeatable 添加限制
- 添加用户元框
- 实现Youtube集成类
- 实现Instagram集成类
- 在字段上重新加载JS
- 对象缓存支持
- 更多表格批量操作修复
- 可重复metabox保存修复
版本:1.2.1
- 为帖子类型添加重写选项
- 表格批量操作修复
- AbstractWidget AJAX修复
版本:1.2
- 将上下文添加到metabox中
- 多选支持
- YouTube集成类
- MetaBox 相关帖子
- enqueue inline script中的url错误
- 地图字段的“无结果”消息
版本:1.1
- 添加字段
- 日期
- 文件
- 地图
- WPEditor
- 隐藏
- 数字
- 可重复/可排序字段集
- 表格排序修复
版本:1.0.4
- 第一个版本