WP-CLI 설치에 대한 전체 가이드

게시 됨: 2022-03-16
WP-CLI 설치

WordPress 명령줄 인터페이스(WP-CLI)는 강력한 WordPress 개발자 중심 도구입니다. 여기 Delicious Brains에서 테스트 작성, 사이트 데이터베이스 변경 관리, WP Migrate DB Pro에서 WP-CLI 지원을 지원하는 데 사용합니다. 마지막으로 WordPress용 클라우드 기반 서버 제어판인 SpinupWP는 WordPress 사이트를 관리하기 위해 WP-CLI를 많이 사용하므로 우리에게 매우 중요한 도구입니다.

우리는 그것을 아주 좋아합니다. 우리는 모든 WordPress 개발자가 그것을 설치하고 사용하는 방법을 아는 것이 중요하다고 생각합니다. 이 게시물에서는 WP-CLI를 설치하고 이 놀라운 도구와 함께 효율적으로 작동하도록 설정하는 방법을 다룹니다.

목차

  1. WP-CLI란 무엇입니까?
  2. macOS 및 Linux에 WP-CLI를 설치하는 방법
    1. 공식 방법
    2. 패키지 관리자를 사용하여 WP-CLI 설치
    3. APT를 사용하여 WP-CLI 설치
    4. Homebrew를 사용하여 WP-CLI 설치
    5. Composer를 사용하여 WP-CLI 설치
    6. Docker를 사용하여 WP-CLI 설치
    7. WP-CLI가 작동하는지 확인
  3. Windows에 WP-CLI를 설치하는 방법
    1. WP-CLI가 Windows에서 작동하는지 확인
  4. WP-CLI 설치 후
    1. 탭 완성 설정하기
    2. WP-CLI 구성 파일 만들기
    3. WP-CLI 업데이트
  5. 마무리

WP-CLI란 무엇입니까?

WP-CLI는 WordPress용 명령줄 인터페이스입니다. 이를 통해 WordPress 사이트의 관리 패널과 동일한 많은 작업을 수행할 수 있지만 컴퓨터나 웹 서버의 명령줄 터미널에서 수행할 수 있습니다. 이렇게 하면 개발 중과 사이트가 배포된 후 모두 매우 유용합니다. WP-CLI를 사용하여 WordPress 설치, 다중 사이트 설치 구성, 플러그인 및 테마 업데이트, WordPress 자체 업데이트 등을 수행할 수 있습니다.

WP-CLI에 익숙해지면 웹 브라우저를 통해 동일한 작업을 수행하는 것보다 이것이 종종 더 빠르다는 것을 알게 될 것입니다.

WP-CLI와 같은 명령줄 도구는 사용자를 대량으로 추가하거나 정기적으로 업데이트를 확인하는 것과 같은 반복적인 작업에도 적합합니다. WP-CLI는 Bash 스크립트 및 cron 작업과 같은 다른 명령줄 도구 및 유틸리티와 쉽게 결합할 수 있기 때문입니다.

사람들은 다양한 WordPress 관련 작업에 WP-CLI를 사용합니다. 예를 들어…

플러그인 설치 및 활성화:

 $ wp plugin --activate advanced-custom-fields

사용자 추가:

 $ wp user create erik [email protected] --role=subscriber

WordPress 코어 및 데이터베이스 업데이트:

 $ wp core update && wp core update-db

데이터베이스 스냅샷 생성:

 $ wp db export /mnt/backups/$(date +%Y%m%d).sql

단일 사용자를 추가하거나, 일회성 백업을 실행하거나, 명령줄을 사용하여 업데이트 확인을 수행하는 것은 관리 페이지를 사용하는 것보다 큰 장점이 아닐 수 있습니다. 그러나 추가할 사용자가 500명이거나 매일 오전 3시에 업데이트 및 백업을 수행하려는 경우 명령줄 도구가 있으면 정말 편리합니다.

맛있는 브레인 팀이 수년 동안 수집한 힌트, 팁 및 트릭을 포함하여 향후 자습서에서 WP-CLI를 최대한 활용하는 방법에 대해 자세히 설명합니다. 하지만 먼저 WP-CLI를 제대로 설치해 보겠습니다.

WP-CLI 설치 방법

이 지침은 Mac 및 Linux 사용자를 위한 것입니다. Windows에 설치하기 위한 지침으로 이동하려면 여기를 클릭하십시오.

공식 방법

WP-CLI를 설치하는 권장 방법은 WP-CLI 사이트에 설명되어 있습니다. Mac 또는 Linux 시스템에 WP-CLI를 설치하려면 PHP 버전 5.6 이상이 필요하며 cURL 명령줄 도구가 설치되어 있어야 합니다. 터미널을 열고 다음 명령을 실행합니다.

첫 번째 단계는 Phar 빌드를 다운로드하는 것입니다.

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

다음으로 다운로드한 파일을 확인해야 합니다.

 $ php wp-cli.phar --info

마지막으로 실행 가능하게 만들고 PATH로 이동합니다.

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

패키지 관리자를 사용하여 WP-CLI 설치

WP-CLI 개발자는 다수의 패키지 관리자를 위한 패키지 유지 관리에 적극적으로 참여하지 않습니다. 패키지 관리자를 사용하여 WP-CLI를 설치하는 옵션은 사용하는 패키지 관리자와 자원 봉사자가 개입하여 패키지를 생성했는지 여부에 따라 다릅니다.

APT를 사용하여 WP-CLI 설치

Tiago Hillebrandt는 Debian/Ubuntu 및 모든 변형에 WP-CLI를 설치하기 위한 PPA를 유지 관리합니다. 다음과 같이 그의 PPA를 사용할 수 있습니다.

 $ sudo add-apt-repository ppa:tiagohillebrandt/wp-cli $ sudo apt-get update $ sudo apt-get install wp-cli

Homebrew를 사용하여 WP-CLI 설치

Homebrew에는 WP-CLI에 대한 공식이 있으므로 다음 명령을 실행하면 됩니다.

 $ brew install wp-cli

Composer를 사용하여 WP-CLI 설치

Composer를 사용하여 WP-CLI를 설치할 수도 있습니다. Composer의 가장 일반적인 용도는 PHP 프로젝트 내에서 종속성을 유지하는 것이지만 컴퓨터에 도구를 설치하는 데 사용할 수도 있습니다. 특정 WP-CLI 버전이 절대적으로 필요한 경우 현재 프로젝트에 대해서만 WP-CLI를 설치할 수 있습니다. 프로젝트에 최신 버전이 아닌 다른 것이 필요한 경우는 매우 드물기 때문에 전 세계적으로 설치하는 것이 좋습니다. 어디에서나 WP-CLI에 쉽게 액세스할 수 있고 내 프로젝트에서 개발 종속성이 하나 줄어듭니다. 전역적으로 설치하는 방법은 다음과 같습니다.

 $ composer global require wp-cli/wp-cli

이 설치 방법을 사용하려면 ~/.composer/vendor/bin 을 PATH 변수에 추가해야 합니다. 이것은 MacOS, Linux 또는 Windows를 사용하는지 여부에 따라 다르게 작동합니다. 다음은 Bash 또는 Zsh를 사용하기 위한 몇 가지 유용한 링크입니다.

이와 같이 전역적으로 WP-CLI를 설치하면 컴퓨터의 모든 폴더에서 연결할 수 있습니다.

Docker를 통해 WP-CLI 설치

Docker 커뮤니티는 WordPress 및 WP-CLI 이미지를 유지 관리합니다. docker compose 에서 생성한 yml 파일에서 CLI 변형을 WordPress 이미지로 지정하여 Docker 프로젝트에서 WP-CLI 이미지를 사용할 수 있습니다.

 image: wordpress:cli

WP-CLI가 작동하는지 확인

사용하는 설치 방법에 관계없이 설치가 성공했는지 확인하고 WP-CLI가 어떤 디렉토리에 있는지에 관계없이 액세스할 수 있는지 확인하는 것이 좋습니다. 제대로 작동하는지 확인하려면 --info 를 전달할 수 있습니다. 매개변수:

 $ wp --info

올바르게 설치되었으면 다음과 같이 표시되어야 합니다.

OS: Darwin 20.6.0 Darwin 커널 버전 20.6.0: 2021년 11월 10일 수요일 22:23:07 PST; 루트:xnu-7195.141.14~1/RELEASE_X86_64 x86_64
쉘: /bin/zsh
PHP 바이너리: /usr/local/Cellar/[email protected]/7.4.27/bin/php
PHP 버전: 7.4.27
php.ini 사용: /usr/local/etc/php/7.4/php.ini
MySQL 바이너리: /usr/local/bin/mysql
MySQL 버전: x86_64(Homebrew)의 macos11.6용 mysql 버전 8.0.28
SQL 모드:
WP-CLI 루트 디렉토리: phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI 공급업체 디렉토리: phar://wp-cli.phar/vendor
WP_CLI phar 경로: /usr/local/bin
WP-CLI 패키지 디렉토리:
WP-CLI 전역 구성:
WP-CLI 프로젝트 구성:
WP-CLI 버전: 2.6.0

Windows에 WP-CLI를 설치하는 방법

기본 Windows에 WP-CLI를 설치하는 것은 Mac 또는 Linux 시스템에 설치하는 것과 약간 다릅니다. 시작하기 전에 Microsoft가 몇 년 전에 소개한 Linux용 Windows 하위 시스템을 사용하여 위의 MacOS 및 Linux 지침을 사용하여 설치할 수 있어야 합니다. 기본 Windows에서 작동하도록 하려면 다음 단계를 따르세요.

WP-CLI는 무엇보다도 *nix 기반 시스템을 위해 만들어졌습니다. SSH를 통해 원격 WordPress 사이트에 액세스하는 것과 같은 일부 기능을 사용하려면 꽤 많은 단계를 거쳐야 할 수 있습니다. 다른 기능은 전혀 작동하지 않을 수 있습니다. 그러나 Windows 시스템에서 WP-CLI의 기본 설치 및 실행이 가능합니다.

이 단계가 작동하려면 Windows 사용자 계정에 관리자 권한이 있어야 합니다. 관리자 권한이 없는 경우 관리자 권한을 부여하거나 이 단계를 도와줄 수 있는 사람에게 요청해야 합니다.

Windows 요구 사항

Windows에 WordPress 명령줄 설치를 시작하려면 Windows용 명령줄 PHP가 설치되어 있고 모든 작업 디렉터리의 명령줄에서 PHP를 실행할 수 있도록 PATH에 추가해야 합니다. WP-CLI를 설치하는 가장 쉬운 방법은 cURL을 사용하는 것입니다. 대부분의 Windows 설치에는 2018년부터 Windows 10에 포함된 cURL이 이미 설치되어 있습니다.

컴퓨터에 아직 설치하지 않은 경우 계속하기 전에 다음 제안된 방법 중 하나를 사용하거나 cURL 홈 페이지에서 다운로드하여 설치하는 것이 좋습니다.

다운로드 및 설치

먼저 GitHub에서 로컬 폴더로 wp-cli.phar의 최신 빌드를 다운로드해야 합니다. cURL이 설치되어 있는 경우 세 가지 명령으로 이 작업을 수행할 수 있습니다.

 C:\> mkdir C:\wp-cli C:\> cd C:\wp-cli C:\> curl -O https://raw.github.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

cURL이 없어서 설치할 수 없는 경우 Windows 파일 탐색기에서 수동으로 C:\wp-cli 폴더를 만들고 위의 링크를 사용하여 파일을 다운로드한 다음 해당 폴더로 이동할 수도 있습니다.

파일을 다운로드한 후 다음을 입력하여 작동하는지 확인하는 것이 좋습니다.

 C:> php C:\wp-cli\wp-cli.phar --info

로컬 WP-CLI 환경을 요약하는 몇 줄을 볼 수 있습니다.

WP-CLI 명령을 실행할 때마다 phar 파일에 대한 전체 경로를 입력하는 것은 정말 빨리 지나갈 것입니다. 삶을 조금 더 쉽게 하기 위해 우리는 두 단계를 더 수행할 것입니다. 먼저 C:\wp-cli 폴더를 PATH 환경 변수에 영구적으로 추가합니다. setx 명령을 사용하여 이 작업을 수행하는 것을 선호합니다. /m 스위치를 사용하여 환경에만 추가하거나 모든 사용자에 대해 추가 중에서 선택할 수 있습니다.

귀하의 사용자 계정을 사용하는 모든 향후 세션:

 setx PATH "%PATH%;c:\wp-cli"

현재 터미널 세션의 경우:

 set PATH "%PATH%;c:\wp-cli"

또는 이후의 모든 세션에 대해 시스템의 모든 사용자에 대해 다음을 수행합니다.

 setx PATH "%PATH%;c:\wp-cli" /m

로컬 개발 머신이라면 자신의 환경에 경로를 추가하는 것만으로도 충분합니다. WP-CLI를 사용하여 야간 작업을 잠재적으로 예약할 서버인 경우 모든 사용자를 위한 환경에 추가하는 것이 좋습니다. /m 스위치와 함께 setx 를 사용하려면 전체 관리 권한으로 CMD 터미널을 열어야 합니다. 가장 쉬운 방법은 시작 메뉴에서 cmd.exe 를 검색하고 마우스 오른쪽 버튼으로 클릭한 다음 관리자 권한으로 실행을 선택하여 여는 것입니다.

cmd.exe를 관리자로 시작

마지막으로 다음 내용으로 wp.bat 라는 WP-CLI 폴더에 Windows 배치 파일을 만듭니다.

 @ECHO OFF php "c:\wp-cli\wp-cli.phar" %*

.bat 파일을 사용하면 항상 phar 파일의 전체 이름을 입력하는 대신 더 짧은 wp 를 사용하여 WP-CLI 실행을 호출할 수 있습니다. 타이핑을 많이 하지 않아도 되며 Mac과 Linux에서 WP-CLI가 호출되는 방식이기도 합니다.

WP-CLI가 Windows에서 작동하는지 확인

위의 모든 것이 준비되었으므로 이제 모든 폴더에서 WP-CLI를 실행할 수 있습니다.

 C:\> wp --info

올바르게 설치되었으면 다음과 같이 표시되어야 합니다.

OS: Windows NT 10.0 빌드 19043(Windows 10) AMD64
셸: C:\WINDOWS\system32\cmd.exe
PHP 바이너리: C:\php\php.exe
PHP 버전: 7.4.27
php.ini 사용:   
MySQL 바이너리: 
MySQL 버전:
SQL 모드:
WP-CLI 루트 디렉토리: phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI 공급업체 디렉토리: phar://wp-cli.phar/vendor
WP_CLI 파일 경로: C:\wp-cli
WP-CLI 패키지 디렉토리:
WP-CLI 전역 구성:
WP-CLI 프로젝트 구성:
WP-CLI 버전: 2.6.0

WP-CLI 설치 후

WP-CLI를 실행하고 작동하는지 확인했으면 초기 설정을 할 차례입니다. WP-CLI의 핵심 개념 중 하나는 subcommands commands 을 가질 수 있는 명령입니다. 이러한 각 명령과 하위 명령에는 여러 개의 선택적 스위치가 있을 수 있습니다. 때때로 꽤 긴 명령 문자열을 입력하게 될 수 있습니다. 요전에 WordPress 옵션 내부에 배열 요소를 삽입해야 했고 명령은 다음과 같이 끝났습니다.

 $ wp --path=www/testing option patch insert tantan_wordpress_s3 post_meta_version 7

WP-CLI에 익숙해지면 의심할 여지 없이 이러한 많은 명령을 암기하게 될 것입니다. 그러나 이것이 당신이 정기적으로 하는 것보다 더 많은 타이핑을 하는 것처럼 보인다면, 첫 번째 시도에서 덜 힘들게 느껴지고 훨씬 더 정확할 가능성을 높이기 위해 할 수 있는 몇 가지 방법을 보여드리겠습니다.

탭 완성 설정하기

가장 먼저 할 일은 TAB 키를 눌렀을 때 다음에 입력해야 할 내용을 자동으로 제안하는 셸의 메커니즘인 탭 완성을 활성화하는 것입니다. 내 환경에서는 위 명령의 시작 부분을 입력하여 어떤 하위 명령이 있는지 확인합니다.

 $ wp option [TAB] add delete get list patch pluck update

탭 완성 설정은 하지 않기 에는 너무 쉽지만 사용 중인 명령줄 셸을 아는 데 도움이 됩니다. 확실하지 않은 경우 $SHELL 환경 변수를 확인하여 이를 수행하는 방법을 빠르게 보여드리겠습니다.

 # On older MacOS and on most Linux boxes, we should see /bin/bash $ echo $SHELL /bin/bash # On newer MacOS boxes, we should see /bin/zsh $ echo $SHELL /bin/zsh # Check for Oh My Zsh $ omz Usage: omz <command> [options] Available commands: help Print this help message changelog Print the changelog plugin <command> Manage plugins pr <command> Manage Oh My Zsh Pull Requests reload Reload the current zsh session theme <command> Manage themes update Update Oh My Zsh version Show the version

Oh My Zsh를 사용하는 경우 이것이 가장 쉽습니다. 다음 명령을 입력하기만 하면 됩니다.

 $ omz plugin enable wp-cli omz::plugin::enable: plugins enabled: wp-cli.

직접 Bash 또는 Zsh를 사용하는 경우 스크립트를 다운로드하고 환경에 추가하는 데 몇 가지 단계가 더 필요합니다. 먼저 홈 폴더로 전환하고 WP-CLI 버전 2.6.0용 스크립트를 다운로드합니다.

 $ cd ~/ $ curl -O https://raw.githubusercontent.com/wp-cli/wp-cli/v2.6.0/utils/wp-completion.bash

그런 다음 프로필에 추가하고 다시 로드합니다. Bash 사용자는 다음 명령을 사용할 수 있습니다.

 $ echo "source ~/wp-completion.bash" >> ~/.bash_profile $ source ~/.bash_profile

그러나 Zsh 사용자는 다음을 사용해야 합니다.

 $ echo "source ~/wp-completion.bash" >> ~/.zshenv $ source ~/.zshenv

Linux 시스템에서는 ~/.bash_profile 에서 wp-completion.bash 를 소싱하는 대신 ~/.bashrc 에서 해야 합니다. wp-completion.bash 파일이 홈 디렉터리에 있는지 확인하고 홈 디렉터리에서 다음 명령을 실행합니다.

 cat wp-completion.bash >> .bashrc source .bashrc

탭 완성은 Windows에도 어느 정도 존재하지만 내가 아는 한 Mac이나 Linux에서와 같이 WP-CLI와 같은 타사 도구와 통합하는 것은 불가능합니다. Windows에서 WP-CLI 탭 완성 기능을 추가하는 방법을 알고 계시다면 아래 댓글로 연락주세요.

WP-CLI 구성 파일 만들기

WP-CLI를 설치하자마자 항상 하는 다음 작업은 $HOME 폴더에 구성 파일을 추가하는 것입니다. 구성 파일은 완전히 별도의 기사를 보증할 수 있는 흥미로운 기능이 많이 포함된 상당히 고급 주제입니다. 기본 구성 파일을 제자리에 두는 것은 반복적인 입력을 줄이는 좋은 방법입니다.

구성 파일이 없으면 WP-CLI는 작업 디렉토리가 실제 WordPress 사이트의 wp-config.php 파일과 동일하다고 가정합니다. 그 디렉토리에 없을 때가 많습니다. 예를 들어 터미널을 열 때마다 일반적으로 $HOME 폴더에 있습니다. 운 좋게도 --path 매개변수를 WP-CLI에 제공하여 올바른 폴더에서 보이도록 할 수 있습니다.

 $ wp --path=/Users/eriktorsner/src/path/to/wordpress plugin list

상상할 수 있듯이 매번 초기 경로 변수를 계속 입력하는 것은 금세 지루해집니다. 입력량을 줄이기 위해 WP-CLI가 path 및 기타 중요한 매개변수를 가져오는 데 사용할 구성 파일을 추가할 수 있습니다.

이 파일을 만들려면 즐겨 사용하는 텍스트 편집기를 열고 홈 디렉터리에 wp-cli.yml 이라는 파일을 만듭니다. 다음 줄을 추가합니다.

 path: /Users/eriktorsner/src/path/to/wordpress

로컬 WordPress 설치가 있거나 설치할 계획인 위치와 일치하도록 해당 경로를 조정해야 합니다. 이 파일이 있으면 WP-CLI가 WordPress 설치 위치를 자동으로 인식하므로 매번 입력할 필요가 없습니다.

WP-CLI 명령을 실행할 때마다 사용할 구성 파일을 찾습니다. 구성 파일을 넣을 수 있는 몇 가지 잠재적인 위치가 있으며 가장 높은 우선 순위에서 가장 낮은 우선 순위로 어떤 구성 파일이 선택되는지를 결정하는 특정 우선 순위가 있습니다.

  1. 현재 작업 디렉토리 또는 그 이상 에 있는 wp-cli.local.yml 파일
  2. 현재 작업 디렉토리 또는 그 이상 에 있는 wp-cli.yml 파일
  3. $HOME 폴더에 wp-cli.yml 이라는 파일

"또는 그 이상"은 WordPress 설치 루트에 구성 파일을 유지한다고 가정하면 WP-CLI가 사용자가 wp-content/uploads/year/month 와 같은 하위 디렉토리로 작업했는지 여부를 계속 찾을 수 있음을 의미합니다. wp-content/uploads/year/month . 또한 구성 파일을 홈 폴더가 아닌 다른 위치에 저장하려는 경우 항상 WP_CLI_CONFIG_PATH 환경 변수를 사용하여 위치를 지정할 수 있다는 점을 알아두는 것이 좋습니다.

typed 명령을 통해 제공하는 모든 매개변수는 구성 파일에서 가져온 값을 재정의하므로 필요할 때 구성 파일의 값을 쉽게 재정의할 수 있습니다.

이 섹션에서는 WP-CLI 구성 파일이 얼마나 유용할 수 있는지에 대한 표면을 거의 긁었습니다. 향후 게시물에서 더 깊이 파고들어 이를 사용하여 로컬 WordPress 개발 환경을 관리하는 방법을 보여줄 계획입니다.

WP-CLI 업데이트

WP-CLI에는 자체 업데이트 기능이 있습니다. 권장 방법을 사용하여 WP-CLI를 설치한 경우 update 하위 명령을 사용하여 업데이트할 수 있습니다.

 $ sudo wp cli update

로컬 개발 환경에서 WP-CLI의 최신 기능을 시험해보고 야간 빌드를 사용하고 싶을 수 있습니다(그러나 프로덕션 서버에서는 피하십시오).

 $ sudo wp cli update --nightly

패키지 관리자를 사용하여 WP-CLI를 설치한 경우 항상 대신 패키지 관리자 메커니즘을 사용하여 업데이트해야 합니다. 직접 업데이트하면 거의 확실하게 작동하지만 권장하지 않습니다. 현재 설치된 버전을 알 수 있는 기회를 패키지 관리자에게 빼앗길 것입니다. 그것은 결코 좋은 일이 아닙니다. 설치 방법을 선택한 후에는 업데이트에도 계속 사용하는 것이 좋습니다.

마무리

이 게시물을 따라했다면 이제 탭 완성 및 기본 구성 파일이 있는 WP-CLI 설치 작업이 완료되었을 것입니다. 향후 게시물에서 플러그인 관리를 파헤쳐 이 도구로 실제로 작업을 완료하는 방법을 살펴보겠습니다.

그동안 우리가 없이는 살 수 없는 WP-CLI 패키지에 대한 기사나 스크립트를 사용하여 로컬 WordPress 사이트 설정 자동화에 대한 시리즈를 읽고 싶을 수도 있습니다.

WP-CLI 설치 방법에 대해 질문이 있는 경우 주저하지 말고 아래 의견에 알려주십시오.