WP-CLI

administracija iz lupine

Gregor Grešak / @gresakg


Url prezentacije: skrci.me/wpcli

med.over.net

med.over.net

avto.over.net

avto.over.net

styling.over.net

styling.over.net

Zavod.over.net

zavod.over.net

brezalkohola.si

brezalkohola.si

Dan Sonca

dan-sonca.si

... in mnogo drugih ...

WordPress 4.0.1

Huraaaaa!!!!

(ste že posodobili?)

Hurrraaaa!!

(vzdih) ... spet 30+ wordpessov za posodobit ...

Depressed In Paris....

Rešitev: Wordpress Multisite?

Neee ... !!!

  • boleča migracija
  • težave z user managementom
  • hrošči
  • ena velika baza podatkov za vse
  • ...
suicide gun

Wordpress Multisite ni prava rešitev!

Autoupdate?

Mu zaupate?

Tehnično, namesto vas upgrade naredi naključni obiskovalec.

stupid rental car keys.. they give you TWO, but the keychain doesn't come apart, so, um, what's the point?

Opomba: Vseeno je autoupdate boljši kot no-update!

WP-CLI

Končno :)

champagne
  • Postopek posodobitve iz 2 dni na dve uri
  • Nič več loginov in ugibanja gesel
  • Adijo, user interface
  • Adijo, Superadmin, (varnost!)
  • Pravi chronjobi!

Toda ...

Potrebujete shell dostop ...

lizzie@aragorn:~$

Namestitev

Preprosta: copy paste s spletne strani http://wp-cli.org


curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

php wp-cli.phar --info

chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Samo v zadnjem koraku je potrebno imeti administratorske pravice.

To je potrebno narediti enkat za celoten strežnik.

Kako poteka upgrade


cd /pot/do/wordpressa

wp core update
wp core update-db

Postopek traja manj kot minuto.

Pri več inštalacijah, se downloadana datoteka shrani in ponovno uporabi.

Kaj pa plugini?


wp plugin update --all

# kaj pa teme?

wp theme update --all

Tudi tukaj se vse downloadane datoteke shranijo in znova uporabijo.

Je to vse?

Ne, to je le začetek.

Možno je vse. Npr. nov wordpress:


wp core download
wp core config --dbname=wp --dbuser=mojuser --dbpass=supergeslo123 --locale=sl_SI
wp core install --url=example.com --title="Moj 382ti blog" --admin_user=janez --admin_password=supergeslo [email protected]

Wordpress postavljen! Lahko začneš pisat!

Moj 382ti blog

Inštalacija nove teme ali plugina


wp plugin install wordfence
wp plugin activate wordfence
wp theme install suevafree
wp theme activate suevafree

#seznam pluginov (deluje tudi za teme)

wp plugin list
+-----------+----------+-----------+---------+
| name      | status   | update    | version |
+-----------+----------+-----------+---------+
| akismet   | inactive | available | 3.0.2   |
| hello     | inactive | none      | 1.6     |
| wordfence | active   | none      | 5.3.3   |
+-----------+----------+-----------+---------+

Pozor! Inštalacija novih tem je tako preprosta in prijetna, da se vam lahko zgodi tole:

Themes 39

Upravljanje uporabnikov


wp user create test [email protected] --role=editor --send-email

Success: Created user 2.
Password: LEAOY4OqouQ@

# seznam uporabnikov

wp user list
+----+------------+--------------+-------------------+---------------------+---------------+
| ID | user_login | display_name | user_email        | user_registered     | roles         |
+----+------------+--------------+-------------------+---------------------+---------------+
| 1  | janez      | janez        | [email protected] | 2014-11-22 11:17:22 | administrator |
| 2  | test       | test         | [email protected]  | 2014-11-22 12:01:29 | editor        |
+----+------------+--------------+-------------------+---------------------+---------------+

Swiss Army Knife

Možno je skoraj vse

Praktično pa predvsem za dolgotrajne operacije, ki v browserju povzročijo time out.

  • Import/Export
  • Search/Replace, v bazi podatkov, ki upošteva serializirane vrednosti!
  • Uvoz medijskih datotek in regeneracija thumbov!
  • Upravljanje objav, kategorij, komentarjev, widgetov, menijev ...
  • ... in ... smetana za developerje ...
Xbox game controller, black

WP konzola

Pravzaprav PHP konzola z naloženim wordpressom!


wp shell
wp> wp_title();
Moj 382ti blogNULL
wp> get_the_title(1);
string(12) "Hello world!"
wp> $post = get_post(1);
wp> setup_postdata($post);
wp> get_excerpt();
string(54) "Welcome to WordPress. This is your first post. Edit or"

Zaključek

Še vedno gre za ponavljajoča se opravila, vendar gre veliko hitreje in z manj napora.

Posamezna opravila je možno kombinirati v shell skripte in si delo še dodatno olajšati.

Vsem, ki jih je zanimal wp-cli priporočam, da si pogledajo easyengine.

https://rtcamp.com/easyengine/

Hvala!

@gresakg

gresak.net

Github/gresakg

Če vas zanima managed wordpress hosting, se oglasite!



Url prezentacije: skrci.me/wpcli