shortlist-digital / agreable-longform-plugin
Shortlist Media 的 WordPress 插件。
3.0.4
2017-06-27 13:02 UTC
Requires
- behat/behat: ~2.5
- facebook/webdriver: ~1.0
- jarednova/mesh: *
- shortlist-digital/herbert-framework: ~1.0
- dev-master
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.0
- 2.2.1
- 2.2.0
- 2.1.0
- 1.5.0
- 1.4.1
- 1.4.0
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.0
- dev-superhero-vid-upload
- dev-adding-superhero-video
- dev-permission-roles
- dev-]
- dev-header-tabs
- dev-basic-details-refactor
- dev-related-content-hook
- dev-add-meta-description-field
This package is not auto-updated.
Last update: 2024-09-14 18:58:27 UTC
README
使用 Herbert 插件框架构建的 Croissant stack WordPress 插件。
依赖项
- Timber
- 高级自定义字段
创建自定义文章类型
/app/customPostType.php
插件使用 ACF 定义的 widget,可供文章使用
/widget-loader-acf.php
Croissant 主题(例如 Troisieme)将遍历插件目录中的以 'slm' 前缀的子目录,这些子目录在根目录中包含widget-loader-acf.php
。这个 ACF 定义被添加到主题中可用的 widget 列表。
将插件视图路径添加到 Timber 的路径中以进行渲染
/app/hooks/timber_loader_paths.php
主主题将包含插件 Twig 模板并使用 Timber 进行渲染(见 lab-troisieme-2015/src/views/partials/widget-container.twig)。因此,我们使用由 Timber 调用的名为'timber/loader/paths'
的过滤器将我们的插件路径添加到 Timber 的内部路径数组。
在渲染时执行插件特定操作(用于在插件中排队样式/脚本)
/app/hooks/slm_plugin_enqueue.php
在渲染插件模板之前,主主题调用 WordPressdo_action('acf_{{name}}_enqueue')
。例如(使用 Timber)
{% do action('slm_'~widget.acf_fc_layout~'_enqueue', widget) %}
钩子名称是从widget-loader-acf.php
中的 ACF 字段组 'name' 构造的。例如 'acf_longform_plugin_enqueue'
可配置的 WordPress 安装插件选项
app/panels.php
添加安装特定配置的设置面板。使用 ACF 定义。
使用 ACF 在文章类型菜单中创建面板
acf_add_options_sub_page(array(
'page_title' => 'Longform Style Settings',
'menu_title' => 'Longform Settings',
'parent_slug' => 'edit.php?post_type=longform',
));
添加自定义字段到菜单
使用 register_field_group($options)
指定自定义字段。最好在 WordPress 管理员中创建并使用导出功能。$options['location']
将是一个数组,指定显示自定义字段的位置
array (
array (
array (
'param' => 'options_page',
'operator' => '==',
'value' => 'acf-options-longform-settings',
),
),
),
注意:如果 acf_add_options_sub_page
给定 'menu_title' 为 '长文设置',则位置 'value' 为 'acf-options-longform-settings'(如上所述)。
部署到 Packagist
检查当前的最新标签 git fetch && git tag
相应地提升版本并标记 git tag x.x.x
推送到 Github。Packagist 将收到一个钩子并更新文件 git push origin master --tags