Wordpress Plugin Boilerplate but Powered with examples and a generator!
GPL-3.0 License
Website | Wiki | GitHub | Code Generator
WordPress Plugin Boilerplate Powered is a complete foundation for building your WordPress plugins following PSR-4 standard. The project history is part of the Wiki that also includes the workflow and how it is organized. Every experienced WordPress developer uses always the same libraries (or snippets) but at the same time follows best practices. Choose a library or a snippet and the boilerplate (with the help of the Code Generator) will generate everything without the need of manual copy & paste way or searching on the Internet!
The final usage ultimately depends on what you edit in the wpbp.json and composer.json files, and of course any other changes you've made. You should be able to run the commands and edit the files mentioned below to get started. Read all these links and edit the code however you like using the libraries, snippets, and tools listed below.
â ī¸ These steps may be incomplete and need expanded upon and testing. For example, you may also want to run tests, Codeception, etc.
wpbp-generator --json
- Generate a new wpbp.json file in the current folder.wpbp-generator
- Download WPBP and extract it to a new folder and removes the parts you don't want.cd your-plugin-folder
- Change into your plugin folder:composer install
- Install fresh with dev files.composer --no-dev update
- Update composer with no dev files.composer dumpautoload -o
- Optimize composernpm install
- Install node packages.npm run plugin-zip
- Zip plugin files.âšī¸
npm pack --dry-run
- You can verify files to zip by running this command.
đ Remember: Don't edit the vendor or node-modules folders. They are overwritten on updates.
These are options in wpbp.json.
WPBP Libraries | Other libraries |
---|---|
WPBP/PointerPlusCreate a WP Admin wizard-like system. | CMB2/CMB2CMB2 is a developer's toolkit for building metaboxes, custom fields, and forms. |
WPBP/CronPlusAdd and remove cronjobs. | micropackage/requirementsA requirements checker. |
WPBP/Widgets-HelperA class to ease creating powered Widgets. | inpsyde/assetsA Composer package to deal with scripts and styles. |
WPBP/Page-Madness-DetectorDetect if the website is using a pagebuilder/visual builder. | origgami/CMB2-gridCMB2 grid columns. |
WPBP/TemplateLoad template files with autosearch and multilanguage folder for email template. | johnbillion/extended-cptsA library which provides extended functionality to WordPress custom post types and taxonomies. |
WPBP/DebugQuery Monitor Wrapper. | Freemius/wordpress-sdkFreemius truly empowers developers to create prosperous subscription-based businesses. |
WPBP/CPT_ColumnsImprove the CPT list in the backend. | wpdesk/wp-noticeLibrary to display notices in wp-admin. |
WPBP/i18n-noticeHandle i18n for plugins, based on Yoast i18n-module. | julien731/WP-Review-MeA lightweight library to include in your WordPress theme/plugin to ask the user to review it on WordPress.org |
stevegrunwell/wp-cache-rememberHelper for the object cache and transients. | |
Seravo/wp-custom-bulk-actionsCustom bulk actions for any type of post. | |
yahnis-elsts/plugin-update-checkerA custom update checker that supports GitHub,GItlab and others. | |
AyeCode/wp-super-duperA class to build a widget, shortcode and Gutenberg block. | |
decodelabs/taggedPHP markup generation in... PHP. |
đ Specific code snippets already integrated that is possible to remove with the generator
wp_localize_script
for passing PHP variables to JavaScript on the frontendWPBP/tools Bash scripts. Currently, has some for wp-bump-version and wp-readme-last-wp-tested.
CodeAtCode/freemius-suite Suite to package and deploy the free version of the plugin by Freemius on WordPress SVN.
Do you want to see which plugins have been made with this boilerplate? Check out this Wiki page!
WordPress Plugin Boilerplate Powered is licensed under the GPL v3 or later; however, if you opt-in to use third-party code that is not compatible with v3, then you may need to switch to using code that is GPL v3 compatible.