wp-jet-fuel

Facilitates the addition of custom functionality to a WordPress website, including Custom Post Types, Meta Fields, Widgets, Taxonomies, Shortcodes, Admin Modificaitons, etc.

Usage no npm install needed!

<script type="module">
  import wpJetFuel from 'https://cdn.skypack.dev/wp-jet-fuel';
</script>

README

WordPress Jet Fuel

GitHub release | Packagist Packagist Downloads | npm npm Downloads | buymeacoffee.com/gnowland

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!

How To Use

  • Install Plugin (see below)
  • Add jetfuel('module-name', ['arbitrary', 'options']); to functions.php ...or ideally a file required() by functions.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');

Deselect Uncategorized Screencast

@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: