redink-no/wpkit

此软件包已被弃用且不再维护。未建议替换包。

WordPress面向对象开发框架。

1.8.0 2021-03-03 13:53 UTC

README

WordPress面向对象开发框架,简化开发者生活。

现在您可以花费更少的时间用于常规操作,如创建文章类型、分类法、元盒。WPKit将帮助您编写更少的代码 -> 喝更多啤酒 :)

由Redink AS提供支持

许可

WPKit框架是开源软件,并根据GPL-2+许可证分发。有关更多信息,请参阅LICENSE

初始化

只需包含WPKit自动加载器

require_once __DIR__ . '/WPKit/init_autoloader.php';

然后您就可以开始使用它了。我们建议使用WPKit完全支持的模块结构。

使用示例

文章类型

让我们创建一个名为“汽车”的文章类型。您只需要创建一个新的PostType实例,并在参数中指定slug和单数名称。

$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字段
  • 添加了谷歌地图字段的API密钥
  • 添加了使用WP_Mock的单元测试
  • 修复了SSL资产加载问题
  • 修复了在子主题中使用WPKit的问题
  • 将Select2更新到4.0.3版本
  • 修复了Select2的占位符问题
  • 修复了页面上的多个Select2问题

版本 1.6.3

  • 修复了可重复的问题
  • 修复了http/https选择2资源加载问题

版本 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中添加了额外的请求参数
  • 将add_action和add_filter添加到自动读取初始化中
  • 添加了瞬态缓存
  • 在可重复操作中添加了JS触发器
  • 修复了可重复元框
  • 修复了屏幕上多个图片/文件按钮的问题

版本:1.3

  • 为帖子类型添加了重写
  • 为选择字段添加了select2
  • 添加了本地化
  • 为元框Repeatable添加了限制
  • 添加了用户元框
  • 实现了YouTube集成类
  • 实现了Instagram集成类
  • 在字段上重新加载JS
  • 对象缓存支持
  • 更多的批量操作修复
  • 可重复元框保存修复

版本:1.2.1

  • 为帖子类型添加了重写选项
  • 表格批量操作修复
  • 抽象小部件AJAX修复

版本:1.2

  • 将上下文添加到元框
  • 多选支持
  • YouTube集成类
  • MetaBox相关帖子
  • 内联脚本中的URL错误
  • 地图字段没有结果消息

版本:1.1

  • 添加了字段
    • 日期
    • 文件
    • 地图
    • WPEditor
    • 隐藏
    • 数字
  • 可重复/可排序字段集
  • 表格顺序修复

版本:1.0.4

  • 第一个版本