README
WordPress Jet Fuel
Propel your WordPress installation into the stratosphere with this multi-function plugin. The combined result of too many years making one-off WordPress customizations and filtering hooks... I truly hope it brings inner peace and enlightenment to your world. (˘▾˘)
Complementary Plugins
The following plugins are particularly complementary; in fact a notable number of 0.1.0 actions were dropped in 0.2.0 in favor of using the methods from these fantastic plugins instead!
- Admin cleanup & modifications:
soberwp/intervention - Custom post types & taxonomies:
soberwp/models
How To Use
- Install Plugin (see below)
- Add
jetfuel('module-name', ['arbitrary', 'options']);
tofunctions.php
...or ideally a filerequired()
byfunctions.php
, e.g:
# functions.php
$lib_includes = [
'lib/mods.php',
];
foreach ($lib_includes as $file) {
if (!$filepath = locate_template($file)) {
trigger_error(sprintf(__('Error locating %s for inclusion', 'your-textdomain'), $file), E_USER_ERROR);
}
require_once $filepath;
}
unset($file, $filepath);
Modules
Deselect Uncategorized (Default Category)
jetfuel('deselect-uncategorized');
@TODO: Add in-depth descriptions of individual modules. Until then, take a peek in src/Module for available functions.
Installation
Composer
composer require gnowland/wp-jet-fuel
Activate with wp-cli
wp plugin activate wp-jet-fuel
Git
git clone
into your sites plugin folder- Activate via WordPress or wp-cli (see above)
Manual
- Download the zip file
- Unzip to your sites plugin folder
- Activate via WordPress or wp-cli (see above)
Updates
Includes support for github-updater to keep track of updates through the WordPress admin.
Changelog
See Releases.
Contributing
Heck yea! Baby, we're better together.
- Refactor some gnarly code? Submit a PR.
- Write a feature addition? Submit a PR.
- Problems/requests? Make an Issue and I'll look into it ASAP.
There's no draconian PR standard, if I can't figure out something in your PR we can work it out together.
Onboarding
git clone git@github.com:gnowland/wp-jet-fuel.git composer install
Test
Make sure your code complies with PSR-2/SOBER guidelines
composer test src/
Build for release
Create dist/
:
composer build
Attribution
Don't be a stranger!
Contact Gifford Nowland <hi(at symbol)giffordnowland.com>
,:
,' |
/ :
--' /
\/ />/
/ /_\
__/ /
)'-. /
./ :\
/.' '
'/'
+
'
`.
.-"-
( |
. .-' '.
( (. )8:
.' / (_ )
_. :(. )8P `
. ( `-' ( `. .
. : ( .a8a)
/_`( "a `a. )"'
( (/ . ' )=='
( ( ) .8" +
(`'8a.( _( (
..-. `8P ) ` ) +
-' ( -ab: )
' _ ` (8P"Ya
_( ( )b -`. ) +
( 8) ( _.aP" _a \( \ *
+ )/ (8P (88 ) )
(a:f " `" `
Rationale
At its core, this plugin merely facilitates the addition of extended functionality to a WordPress website: Custom Post Types, Meta Fields, Widgets, Taxonomies, Shortcodes, Admin Modifications, etc.
Why a functionality plugin, you ask? Think of it this way: instead of tying site architecture and management code to a particular Theme (via functions.php
), a much more sustainable method is to use what's commonly referred to as a "functionality plugin". This separates form (frontend layout) from function (administration), allowing you to retain functionality modifications across theme installations!
Here's what some intelligent people say on the subject:
"We recommend that you always put custom post types in a plugin rather than a theme. This ensures that the user’s content is portable whenever they change their website’s design." — Wordpress.org Plugin Handbook
See also: Why Custom Post Types Belong in Plugins and How to Create Your Own WordPress Functionality Plugin for more supporting evidence behind adding additional site functionality via a plugin instead of a theme's
functions.php
file.
@TODO:
- Set up @wordpress/scripts for block editor (Gutenberg) scripts:
deselectUncategorized.js