, (*1)
This is a plugin boilerplate for a Torro Forms extension. It is highly encouraged to use this boilerplate when building any extension for Torro Forms., (*2)
Getting Started
To create your own plugin, download this repository. For the next steps, let's assume your plugin should be called Torro Super Extension
., (*3)
- Rename the directory to
torro-super-extension
.
- Rename the plugin main file to
torro-super-extension.php
.
- Open
gulpfile.js
and scroll to the bottom.
- Replace every value in the
replacements
object with your new plugin name or plugin author data in the appropriate format. For example, replace my-new-plugin-name
with torro-super-extension
, MY_NEW_PLUGIN_NAME
with TORRO_SUPER_EXTENSION
and so on. Replace the plugin namespace vendor, plugin URL, author name, author email and author URL with your respective data.
- Save the changes.
- Run
npm install
in the console.
- Run
gulp init-replace
in the console.
- Open
gulpfile.js
again and remove the entire bottom section that starts with INITIAL SETUP TASK
, save the file afterwards.
- Check the
composer.json
and package.json
files. You might wanna update some details to your preferences.
- Check the top of
gulpfile.js
, containing the config
object. You might wanna update some details to your preferences.
- Run
gulp build
once to compile everything.
Now you're good to go! One more thing: If you want to publish the plugin on wordpress.org, it's recommended to remove the /languages
directory, plus set the config.domainPath
to false
and remove the pot
task in gulpfile.js
. Then, remove the now unnecessary arguments from the Extension::load_textdomain()
method accordingly., (*4)
Actual Development
Adjust the src/extension.php
file to your needs. This is where your extension will get bootstrapped. You can instantiate the services your extension needs here, setup hooks (which will then be automatically invoked by the Torro Forms main plugin) and more., (*5)
All further classes and assets in the boilerplate is optional and simply sample code. Just bear in mind, you should stick to the directory structure used in the boilerplate - it is oriented after the Torro Forms base plugin., (*6)
Common Gulp Tasks
-
gulp sass
: Compiles CSS/Sass
-
gulp js
: Compiles JavaScript
-
gulp pot
: Refreshes POT file
-
gulp header-replace
: Replaces the plugin header with latest data
-
gulp readme-replace
: Replaces the header and description in the readme with latest data
-
gulp build
: Runs all of the above tasks