markdown Integrasi WP CLI ke dalam flow pengembangan WordPress

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown Integrasi WP CLI ke dalam flow pengembangan WordPress相关的知识,希望对你有一定的参考价值。

# WordPress Command Line Interface (WP CLI)

> Melakukan integrasi WP CLI ke dalam workflow pengembangan WordPress serta pengelolaan situs web berbasis WordPress yang sedang berjalan.

WP CLI merupakan tools official dari WordPress yang menyediakan interface ke WordPress di lingkungan *Comand Line*, interface ini memungkinkan instalasi, setup dan beberapa aktifitas pengelolaan rutin dapat dilakukan melalui command line.

Keberadaaan tools ini tidak hanya diperuntukan kepada web administrator yang terbiasa melakukan aktifitasnya di lingkungan *command line* namun juga membuka ruang pengembangan / extend ataupun automatisasi melalui script yang dapat dikembangkan melalui bahasa program apapun.

Berikut merupakan beberapa hal dasar yang dapat dilakukan untuk mengadopsi WP CLI ke dalam alur proses pengembangan WordPress yang kita lakukan.

URL WP CLI =>  https://wp-cli.org/

## Instalasi 

- [ ] Download file `wp-cli.phar`
- [ ] Ubah mode file menjadi executable `+x` dan pindahkan ke path `bin` untuk local user
- [ ] Verifikasi bahwa WP CLI sudah terinstall

``` bash
$ cd ~
$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
$ chmod +x wp-cli.phar
$ mv wp-cli.phar /usr/local/bin/wp
$ wp

NAME

  wp

DESCRIPTION

  Manage WordPress through the command-line.

SYNOPSIS

  wp <command>

...

$ wp --info
OS:	Darwin 17.4.0 Darwin Kernel Version 17.4.0: Sun Dec 17 09:19:54 PST 2017; root:xnu-4570.41.2~1/RELEASE_X86_64 x86_64
Shell:	/bin/bash
PHP binary:	/usr/local/Cellar/php71/7.1.14_25/bin/php
PHP version:	7.1.14
php.ini used:	/usr/local/etc/php/7.1/php.ini
WP-CLI root dir:	phar://wp-cli.phar
WP-CLI vendor dir:	phar://wp-cli.phar/vendor
WP_CLI phar path:	/Users/tjrocks/Projects/Web_Development/Music_Concert
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version:	1.5.0
```

### Tab Completions

Fitur tambahan penyelesaian perintah melalui `Tab` juga dapat dinikmati melalui script wp-completion.bash.

```bash
$ wget https://raw.githubusercontent.com/wp-cli/wp-cli/master/utils/wp-completion.bash
$ source wp-completion.bash

tjrocks at Thead in ~
$ wp db #Tab
check      create     export     optimize   query      reset      size
cli        drop       import     prefix     repair     search     tables
```

## Usage

Setelah dicopy ke dalam folder bin untuk local user maka WP CLI dapat diakses melalui command `wp`, untuk verifikasi awal silahkan jalankan `wp` tanpa parameter apapun. Aplikasi akan menampilkan parameter tamabahan yang dapat diberikan untuk menggunakan aplikasi ini.

**Download file WordPress menggunakan WP CLI**

``` bash
$ cd /path/wp/root/
$ wp core download
```

Perintah di atas akan melakukan download terhadap file WordPress core melalui command `git`. 

Contoh lain yaitu melakukan instalasi dan aktifasi plugin melalui WP CLI;

``` bash
$ wp plugin install user-switching --activate
Installing User Switching (1.0.9)
Downloading install package from https://downloads.wordpress.org/plugin/user-switching.1.0.9.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'user-switching'...
Plugin 'user-switching' activated.
Success: Installed 1 of 1 plugins.
```

## Skenario pemanfaatan WP CLI

## WordPress Local Provisioning

Dikombinasikan dengan Laravel Valet, provisioning WordPress untuk Local Development Environment dapat dilakukan dengan sangat mudah melalui beberapa baris perintah.

- [ ] Download core files `wp core download`
- [ ] Create MySQL database via `mysqli`
- [ ] Create WordPress config file  `wp config create --dbname=namadb --dbuser=namadbuser`
- [ ] Install WordPress melalui `wp core install` dengan parameter yang kita inginkan
- [ ] Masukkan path ke dalam konfigurasi valet

``` bash
$ cd /path/ke/local/web/root/wp
$ wp core download
$ ls #Verifikasi file sudah terdownload
$ mysql -uroot
mysql> create database database_db;
myaql> exit;
$ wp config create --dbname=database_db --dbuser=root
$ wp core install --admin_email=admin@email.com --admin_user="AdminLocalWP" --admin_password="PasswordLocal##" --title="Site Title" --url="https://localinstall.dev"
$ valet link localinstall
$ valet secure
```

Local install WordPress tersebut kemudian dapat kita akses dalam keadaaan sudah terinstall di https://localinstall.dev, dengan asumsi konfigurasi valet sudah berhasil dilakukan.

## WordPress Local Server 

Untuk provisioning non valet juga dapat dilakukan dengan menggunakan `http://localhost` sebagai url instalasi

```bash
$ wp server
PHP 7.1.14 Development Server started at Thu Mar 29 17:28:42 2018
Listening on http://localhost:8080
Document root is /Users/tjrocks/Projects/Web_Development/Music_Concert/concerts-v2
Press Ctrl-C to quit.
```

## Instalasi dan Aktifasi Plugin WordPress

Beberapa plugin yang ada di setiap instalasi WordPress

- [ ] ACF https://wordpress.org/plugins/advanced-custom-fields/
- [ ] Custom Post Type https://wordpress.org/plugins/custom-post-type-ui/
- [ ] SEO Ultimate https://wordpress.org/plugins/seo-ultimate/
- [ ] Jetpack https://wordpress.org/plugins/jetpack/
- [ ] Google Analytics https://wordpress.org/plugins/google-analytics-dashboard-for-wp/
- [ ] Postman SMTP https://wordpress.org/plugins/post-smtp/
- [ ] Google Sitemap https://wordpress.org/plugins/xml-sitemap-feed/
- [ ] Structured Data https://wordpress.org/plugins/wp-seo-structured-data-schema/

Instalasi dan aktifasi plugin menggunakan WP CLI dan plugin slug

``` bash
$ wp plugin install --activate advanced-custom-fields
Installing Advanced Custom Fields (4.4.12)
Downloading installation package from https://downloads.wordpress.org/plugin/advanced-custom-fields.4.4.12.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'advanced-custom-fields'...
Plugin 'advanced-custom-fields' activated.
Success: Installed 1 of 1 plugins.
```

以上是关于markdown Integrasi WP CLI ke dalam flow pengembangan WordPress的主要内容,如果未能解决你的问题,请参考以下文章

markdown Eksekusi aplikasi nodejs melalui systemd dan integrasi dengan platform linux。

markdown WP CLI

markdown WP-CLI备忘录

markdown WP-CLI数据库迁移说明

markdown WordPress片段:使用WP CLI检查数据库

markdown 使用WP-CLI导出Wordpress数据库