shortlist-digital / agreable-partnership-plugin
Wordpress plugin for Shortlist Media.
Installs: 1 317
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 5
Forks: 2
Open Issues: 0
Type:wordpress-plugin
Requires
- behat/behat: ~2.5
- facebook/webdriver: ~1.0
- getherbert/framework: ~0.9
- jarednova/mesh: *
This package is not auto-updated.
Last update: 2024-11-09 19:14:05 UTC
README
Wordpress Plugin built for Croissant stack using Herbert plugin framework.
Dependencies
- Timber
- Advanced Custom Fields
Create custom post type
/app/customPostType.php
Plugin degines an widget using ACF available to articles
/widget-loader-acf.php
A Croissant theme (e.g. Troisieme) will traverse plugins directory for 'slm' prefixed sub directories which containwidget-loader-acf.php
at their root. This ACF definition is added to list of widgets available in theme.
Add plugin view path to Timber's paths for rendering
/app/hooks/timber_loader_paths.php
Parent theme will include the plugin Twig templates and render using Timber (see lab-troisieme-2015/src/views/partials/widget-container.twig). Therefore we add our plugin paths to Timber's internal array of paths using this filter called by Timber:'timber/loader/paths
.
Fire plugin specific action whilst rendering (to enqueue styles/scripts within plugin)
/app/hooks/slm_plugin_enqueue.php
Just before rendering the plugin template, the parent theme calls Wordpressdo_action('acf_{{name}}_enqueue')
. e.g. (using Timber):{% do action('slm_'~widget.acf_fc_layout~'_enqueue', widget) %}
The hook name is constructed from the ACF Field Group 'name' inwidget-loader-acf.php
. e.g. 'acf_partnership_plugin_enqueue'
Configurable plugin options for Wordpress installation
app/panels.php
Adds Settings panel for installation specific configuration. Uses ACF definitions.
Using ACF to create panels in Post Type menu
acf_add_options_sub_page(array(
'page_title' => 'Partnership Style Settings',
'menu_title' => 'Partnership Settings',
'parent_slug' => 'edit.php?post_type=partnership',
));
Add Custom Fields to menu
Specify custom fields using register_field_group($options)
. Best to create in Worpdress Admin and use export function.
$options['location']
will be an array specifying where to display the Custom Fields:
array (
array (
array (
'param' => 'options_page',
'operator' => '==',
'value' => 'acf-options-partnership-settings',
),
),
),
Note: If acf_add_options_sub_page
is given 'menu_title' of 'Partnership Settings', the location 'value' is 'acf-options-partnership-settings' (as above).
Deploy to packagist
Check the current latest tag
git fetch && git tag
Bump the version appropriately and tag
git tag x.x.x
Push to Github. Packagist will receive a hook and update the file
git push origin master --tags