Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Increase Your Productivity - The Local WordPres...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Luminus Olumide Alabi
August 17, 2018
Technology
3.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Increase Your Productivity - The Local WordPress Development Toolset of Your Dreams
Luminus Olumide Alabi
August 17, 2018
More Decks by Luminus Olumide Alabi
See All by Luminus Olumide Alabi
Rocking Remote Work: Living Your Best Life & Maintaining Your Sanity
luminus
0
250
The Power Of Open Source: How WordPress Saved My Life
luminus
0
89
eCommerce in Nigeria for Fun and Profit
luminus
2
3.6k
Other Decks in Technology
See All in Technology
5分でわかる Amazon Connect_20260608
hwangbyeonghun
0
160
Agile and AI Redmine Japan 2026
hiranabe
4
570
40代で“やっとエンジニアになれた”――閉じた学びを開き、空の青さを知る / 20260628 Naoki Takahashi
shift_evolve
PRO
4
1.5k
きのこカンファレンス2026_肩書きを外したとき私は誰か
yamasatimi
1
120
技術・能力を向上する原理原則 #きのこセッションa #きのこ2026
bash0c7
0
190
デジタル・デザイン:次の50年を描く「進化する青写真」
y150saya
0
720
ご挨拶「10周年を迎える共創ラボのこれまでとこれから」
iotcomjpadmin
0
170
AIに「使われる」時代のSaaS戦略 〜既存WebAPIのMCPサーバー化における開発ノウハウ〜
ekispert_api
0
200
飲食店もAIで。レジ締めやハンディシステムをつくってる話 / Using AI for restaurant management
vtryo
0
220
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
180
AI・ロボティクスと自動化社会 / AI, Robotics, and the Automated Society
ks91
PRO
0
130
感情と身体を置き去りにしない、エンジニアの生きのこり方 ──いまから、ここから「自分の状態」を扱うという選択
saorimurooka
0
440
Featured
See All Featured
Test your architecture with Archunit
thirion
1
2.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
440
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Code Review Best Practice
trishagee
74
20k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
The Curse of the Amulet
leimatthew05
2
13k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Transcript
INCREASE YOUR PRODUCTIVITY THE LOCAL WORDPRESS DEVELOPMENT TOOLSET OF YOUR
DREAMS 1 — © Luminus Alabi | WordCamp Brighton 2018
LUMINUS ALABI HI > Happiness Engineer @ Automattic > 7th
degree Black Belt at Hanging Out > Equal Opportunities Hugs Dispenser Hi ! @luminus // " https://luminus.alabi.blog 2 — © Luminus Alabi | WordCamp Brighton 2018
WHY WE'RE HERE > Blazing Fast Local Development Setup >
Making magic with WP-CLI > Supercharging your Terminal experience 3 — © Luminus Alabi | WordCamp Brighton 2018
BLAZING FAST LOCAL DEVELOPMENT SETUP 4 — © Luminus Alabi
| WordCamp Brighton 2018
LARAVEL VALET 1 1 https://laravel.com/docs/5.6/valet 5 — © Luminus Alabi
| WordCamp Brighton 2018
LARAVEL VALET PHP Development environment for Mac minimalists. 6 —
© Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET > No Vagrant > No Docker > No
/etc/hosts file > No headache 7 — © Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET Blazing fast and uses roughly 7 MB of
RAM. 8 — © Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET Configures your Mac to always run Nginx in
the background when your machine starts 9 — © Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET Uses DnsMasq to proxy all requests on the
*.test domain to point to sites installed on your local machine. 10 — © Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET Perfect if you prefer extreme speed, or are
working on a machine with a limited amount of RAM 11 — © Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET > Out of the box support for 20+
Frameworks/CMSes > Extensible to support more via custom drivers 12 — © Luminus Alabi | WordCamp Brighton 2018
LARAVEL VALET Linux & Windows users aren't left out 2
2 Valet Linux and Valet Windows 13 — © Luminus Alabi | WordCamp Brighton 2018
VALET+ 3 3 https://github.com/weprovide/valet-plus 14 — © Luminus Alabi |
WordCamp Brighton 2018
VALET+ > 3rd Party fork of Laravel Valet > Includes
additional functionality 15 — © Luminus Alabi | WordCamp Brighton 2018
VALET+ PHP version switching > valet use 5.6 > valet
use 7.1 > valet use 7.2 16 — © Luminus Alabi | WordCamp Brighton 2018
VALET+ Xdebug support 17 — © Luminus Alabi | WordCamp
Brighton 2018
VALET+ Mailhog 18 — © Luminus Alabi | WordCamp Brighton
2018
VALET+ Subdomains > valet subdomain list > valet subdomain add
<subdomain> 19 — © Luminus Alabi | WordCamp Brighton 2018
VALET+ WP-CLI 20 — © Luminus Alabi | WordCamp Brighton
2018
MIGRATING FROM VALET TO VALET+ 1. Install Valet+ globally with
Composer 2. Remove Laravel Valet to prevent conflicts 3. Optional but Recommended: Update Composer 4. Run the valet install command 21 — © Luminus Alabi | WordCamp Brighton 2018
MIGRATING FROM VALET TO VALET+ > composer global require weprovide/valet-plus
> composer global remove laravel/valet > composer global update > valet install 22 — © Luminus Alabi | WordCamp Brighton 2018
SERVING SITES 1. Create a Sites directory if you don’t
already have one: mkdir ~/Sites 2. Navigate to that directory: cd ~/Sites 3. Set that directory as your project root: valet park 23 — © Luminus Alabi | WordCamp Brighton 2018
MAKING MAGIC WITH WP-CLI 24 — © Luminus Alabi |
WordCamp Brighton 2018
SETTING UP A NEW WORDPRESS SITE WITH WP-CLI 25 —
© Luminus Alabi | WordCamp Brighton 2018
WP-CLI Demo Demo 1 Demo 1 Setting up a new
WordPress site with WP-CLI 26 — © Luminus Alabi | WordCamp Brighton 2018
SITE CREATION ON STEROIDS WITH THE WP-CLI VALET COMMAND 4
4 https://github.com/aaemnnosttv/wp-cli-valet-command 27 — © Luminus Alabi | WordCamp Brighton 2018
WP-CLI VALET COMMAND Custom WP-CLI command with 2 functions: >
Create a new WordPress install -- fast > Completely remove an installation. 28 — © Luminus Alabi | WordCamp Brighton 2018
WP-CLI Valet Command Demo Demo 2 Demo 2 WP-CLI Valet
Command Demo 29 — © Luminus Alabi | WordCamp Brighton 2018
BENDING WP-CLI SITE CREATION TO YOUR WILL THROUGH CONFIG FILES
30 — © Luminus Alabi | WordCamp Brighton 2018
Arguments are interpreted following an order of precedence, from highest
priority to lowest: 1. Command-line arguments. 2. wp-cli.local.yml file inside the current working directory (or upwards). 3. wp-cli.yml file inside the current working directory (or upwards). 4. ~/.wp-cli/config.yml file. 5. WP-CLI defaults. 31 — © Luminus Alabi | WordCamp Brighton 2018
MY ~/.wp-cli/config.yml FILE 5 Core config core config: dbuser: root
dbpass: root extra-php: | define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false); @ini_set('display_errors',0); define( 'WCS_DEBUG', true ); 5 https://gist.github.com/Luminus/45e886809c81e325894a0825374065ec 32 — © Luminus Alabi | WordCamp Brighton 2018
MY ~/.wp-cli/config.yml FILE Core download core download: # locale: nl_NL
skip-content: true 33 — © Luminus Alabi | WordCamp Brighton 2018
MY ~/.wp-cli/config.yml FILE Core install core install: admin_user: luminus admin_password:
password admin_email:
[email protected]
34 — © Luminus Alabi | WordCamp Brighton 2018
MY ~/.wp-cli/config.yml FILE Valet new & Valet destroy valet new:
admin_user: luminus admin_password: password dbpass: root valet destroy: yes: true 35 — © Luminus Alabi | WordCamp Brighton 2018
KICKING IT UP A NOTCH WITH BASH SCRIPTING 36 —
© Luminus Alabi | WordCamp Brighton 2018
MY wc-site SCRIPT 6 A single command to create a
new WordPress site with: > WooCommerce plugin installed and activated > Storefront theme installed and activated > Default browser launched with my Admin user already logged in to WP-Admin 6 https://gist.github.com/Luminus/363f5c381b2ba279c747fc2c2913917c 37 — © Luminus Alabi | WordCamp Brighton 2018
MY wc-site SCRIPT #!/bin/bash # Function to display usage instructions
when the command is used incorrectly function usage { echo "usage: wc-site <name> [--master]" echo "e.g. wc-site gradient will create a site at https://gradient.test" echo "The \"--master\" switch will install the current WooCommerce master from Github" exit 1 } 38 — © Luminus Alabi | WordCamp Brighton 2018
MY wc-site SCRIPT # If the wc-site command is run
without the site name, display usage instructions if [[ -z "$1" ]]; then usage else # If only the site name is supplied, assume WordPress.org version of WooCommerce is wanted if [[ -z "$2" ]]; then woo="woocommerce" # If master switch is used then current WooCommerce master from Github is wanted elif [[ $2 = "--master" ]]; then woo="https://github.com/woocommerce/woocommerce/archive/master.zip" # If a second argument other than "--master" is supplied, teach the user how to do it else usage fi fi 39 — © Luminus Alabi | WordCamp Brighton 2018
MY wc-site SCRIPT # Change current directory to Sites cd
~/www/sites/ # Create WordPress site. Set the database name to be the same as the site name. # wp valet uses `wp_<name>` which I'm not keen on wp valet new $1 --dbname=$1 # Change current directory to the new site so you can work your WP-CLI magic cd ~/www/sites/$1 # Install & Activate WooCommerce based on whether the master switch is used or not. wp plugin install $woo --activate # Install & Activate Storefront wp theme install storefront --activate # Install & Activate the WP-CLI Login Companion Plugin wp login install --activate # Update permalink structure wp rewrite structure '/%year%/%monthnum%/%day%/%postname%/' # Launch the site in your default browser # valet open $1 # Launch the site's /wp-admin/ in your default browser # wp admin # Generate a Magic Link and Log in to the site in your default browser # Luminus is the default admin username for my local sites wp login as luminus --launch 40 — © Luminus Alabi | WordCamp Brighton 2018
WC-Site Demo Demo 3 Demo 3 WC-Site script in action
41 — © Luminus Alabi | WordCamp Brighton 2018
SUPER CHARGING YOUR TERMINAL EXPERIENCE 42 — © Luminus Alabi
| WordCamp Brighton 2018
ZSH AND OH-MY-ZSH 7 7 Installing ZSH and https://ohmyz.sh/ 43
— © Luminus Alabi | WordCamp Brighton 2018
ZSH > Extended Bourne shell with a large number of
improvements. > Oh-My-Zsh makes all the magic happen 44 — © Luminus Alabi | WordCamp Brighton 2018
OH-MY-ZSH > Community-driven framework for managing your ZSH configurations >
Bundled with loads of helpful functions, plugins & themes > Will make you shout… Oh My ZSH! > Windows 10 users can get in on it 8 8 https://www.maketecheasier.com/install-zsh-and-oh-my-zsh-windows10/ 45 — © Luminus Alabi | WordCamp Brighton 2018
OH-MY-ZSH Say goodbye to cd for changing directories. 46 —
© Luminus Alabi | WordCamp Brighton 2018
No cd Demo Demo 4 Demo 4 NO cd 47
— © Luminus Alabi | WordCamp Brighton 2018
OH-MY-ZSH Say hello to the take command: > Create a
new directory and change to it. > Will even create intermediate directories as required. 48 — © Luminus Alabi | WordCamp Brighton 2018
Take Command Demo Demo 5 Demo 5 Take Command Demo
49 — © Luminus Alabi | WordCamp Brighton 2018
OH-MY-ZSH Quick aliases for Git introduced by the git plugin
9 > gcl instead of git clone > gaa instead of git add --all > gcmsg instead of git commit -m > gp instead of git push > gcb instead of git checkout -b 9 GIT Plugin Cheat sheet 50 — © Luminus Alabi | WordCamp Brighton 2018
OH-MY-ZSH WP-CLI aliases for speeding up WordPress tasks 10 >
wppi woocommerce instead of wp plugin install woocommerce > wpta storefront instead of wp theme activate storefront 10 WP-CLI Plugin Cheat sheet 51 — © Luminus Alabi | WordCamp Brighton 2018
ITERM2, Z, HUB, GITUP 52 — © Luminus Alabi |
WordCamp Brighton 2018
ITERM2 11 > Replacement for the Mac OS terminal >
Brings features you never knew you always wanted: > Split Panes > Hotkey Window > Inline Images 11 iTerm2 Features 53 — © Luminus Alabi | WordCamp Brighton 2018
Z 12 > Jump around in the terminal > Tracks
most used directories based on 'frecency' > Frecency is a portmanteau of ‘recent’ and ‘frequency’ > Goes to most 'frecent' directory matching your request > z sites goes to your Sites directory > Quicker than using cd and memorising exact paths 12 https://github.com/rupa/z 54 — © Luminus Alabi | WordCamp Brighton 2018
HUB 13 > Command-line wrapper for git > Makes working
with GitHub easier > Useful for contributors as well as maintainers > git clone cool-stuff - clone your own project > git clone woocommerce/woocommerce vs git:// github.com/woocommerce/woocommerce.git 13 https://hub.github.com/ 55 — © Luminus Alabi | WordCamp Brighton 2018
GITUP 14 > For updating multiple git repositories at once
> Smart enough to handle several remotes > Works on OS X, Linux, and Windows > gitup . updates all repos in current directory 14 https://github.com/earwig/git-repo-updater 56 — © Luminus Alabi | WordCamp Brighton 2018
COMMAND LINE POWER USER 15 Online Video Course covering: >
CLI Basics > iTerm2 > ZSH & Z 15 Wes Bos's Free Command Line Power User course. 57 — © Luminus Alabi | WordCamp Brighton 2018
RECAP 58 — © Luminus Alabi | WordCamp Brighton 2018
RECAP > Blazing Fast Local Development Setup > Making magic
with WP-CLI > Supercharging your Terminal experience 59 — © Luminus Alabi | WordCamp Brighton 2018