amphibee/wpgb-extended

使用面向对象的PHP注册Gridbuilder ᵂᴾ模板和(即将推出的)标签

安装次数: 8,808

依赖项: 0

建议者: 0

安全性: 0

星级: 6

关注者: 5

分支: 3

开放性问题: 5

类型:wordpress-muplugin

1.13 2022-11-14 05:37 UTC

README

使用面向对象的PHP注册Gridbuilder ᵂᴾ

Gridbuilder ᵂᴾ Extended提供了一种面向对象的API来注册模板和(即将推出的)标签。如果您在主题中注册了模板或标签,您可以在与其他开发者协作时安全地依赖版本控制。

安装

使用Composer在项目的根目录中安装此包。

composer require amphibee/wpgb-extended

下载Gridbuilder ᵂᴾ插件并将其放置在pluginsmu-plugins目录中。访问WordPress仪表板并激活插件。请注意,此包支持Gridbuilder ᵂᴾ版本1.4或更高版本。

模板

使用Template::make()函数注册一个新模板。以下是一个模板注册的示例。

use WpgbExtended\Facades\Template;

Template::make('post-list')
  ->setSourceType('post')
  ->setClasses(['list', 'is-full-width'])
  ->setWrapperTag('ul')
  ->setQueryArgs([
    'post_type'      => 'post',
    'posts_per_page' => 10,
  ])
  ->setRenderCallback('prefix_render_callback')
  ->setNoResultsCallback('prefix_noresults_callback');

访问官方Gridbuilder ᵂᴾ模板文档以了解更多有关模板设置的详细信息。

标签

通过slug获取标签

您现在可以通过slug获取标签

wpgb_render_facet([
  'slug' => 'pagination',
  'grid' => 'post-list'
])

改进的标签渲染

标签的slug类使您能够更强大地设置样式!

注意:默认情况下,只有在调用wpgb_render_facet时通过slug添加类。如果您想通过ID调用标签时启用它,您需要使用此过滤器启用它

add_filter('wpgb_extended/enable_facet_class_from_db', '__return_true');

注册标签

@TODO

内容同步

Gridbuilder ᵂᴾ Extended允许您同步所有内容(网格、卡片、标签)。当与多个环境(本地、测试、生产)一起工作时,这非常有用。与高级自定义字段类似,网格、卡片、标签存储在json文件中。默认情况下,它们存储在您的主题文件夹中(wpgb-json文件夹)。您可以使用wpgb_extended/sync/json_folder过滤器自定义此文件夹。

您可以使用过滤器wp_grid_builder/enable_sync全局禁用同步,或使用过滤器wpgb/{$type}/enable_sync(例如wpgb/card/enable_sync)按实体禁用同步。

注意:对于地图和网格,Gridbuilder ᵂᴾ不提供单个slug。Gridbuilder ᵂᴾ Extended默认基于名称。因此,请注意,在中间时间内它不需要更改,否则将创建重复项。同样,名称必须是唯一的,否则在同步时将生成冲突(计划在下一个版本中添加警报功能)