WP-CLI: 터미널 방식 워드프레스 — 파트 1
Source: Dev.to
(위의 링크 아래에 번역하고 싶은 본문을 제공해 주시면, 요청하신 대로 한국어로 번역해 드리겠습니다.)
왜 WP‑CLI인가?
wp‑admin를 클릭해서 매번 작은 작업을 할 필요가 없습니다. WP‑CLI는 WordPress의 공식 명령줄 인터페이스로, 터미널에서 사이트를 더 빠르게 관리할 수 있게 해줍니다.
대시보드에서 하는 일반적인 작업(플러그인 업데이트, 캐시 플러시, 비밀번호 재설정, 검색‑대체 실행)에는 30번 이상의 클릭이 필요할 수 있습니다. WP‑CLI를 사용하면 보통 한 줄의 명령으로 처리할 수 있습니다.
해결하는 문제
- 대량 작업 – 한 명령으로 모든 플러그인이나 테마를 업데이트합니다.
- 데이터베이스 검색‑대체 – 직렬화된 데이터를 깨뜨리지 않고 사이트를 마이그레이션합니다.
- wp‑admin에 접근할 수 없나요? – CLI에서 직접 비밀번호를 재설정하거나 관리자 사용자를 생성합니다.
- 반복적인 설정 작업 – 새로운 프로젝트마다 동일한 단계를 자동화합니다.
- Cron 및 예약 작업 – 서버 crontab에서
wp‑cron을 안정적으로 트리거합니다.
좋은가, 나쁜가?
솔직한 답변: 개발자에게는 탁월하지만, 터미널을 전혀 열지 않는 사람에게는 무관합니다.
✅ 좋은 점
- 개발자 워크플로우
- 여러 사이트 관리
- 반복 작업 자동화
- 더 빠른 배포
⚠️ 주의할 점
- 파괴적인 DB 명령에 대한 되돌리기 기능이 없음
- 잘못된 경로를 지정하면 다른 사이트에 영향을 줄 수 있음
- SSH/터미널 접근 필요
- 일부 공유 호스팅에서는 제한될 수 있음
골든 룰: 파괴적인 명령은 항상 스테이징 환경에서 먼저 테스트하세요. 전력은 양쪽 모두에게 작용합니다.
설정 및 설치
단계별 (Linux/macOS)
# Step 1 — Download the Phar file
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
# Step 2 — Make it executable and move it globally
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
# Step 3 — Verify the installation
wp --info
OS와 PHP 버전, WP‑CLI 버전을 확인할 수 있을 것입니다. 확인되면 바로 사용 가능합니다.
대체 설치 방법
- Composer:
composer global require wp-cli/wp-cli-bundle - WSL (추천) Windows 사용자용.
- LocalWP, DevKinsta, DDEV: WP‑CLI가 이미 포함되어 있어 별도 설정이 필요 없습니다.
팁: 모든 명령은 WordPress 루트 디렉터리에서 실행하세요.
꼭 알아야 할 명령어
| Command | What It Does |
|---|---|
wp core install | 한 번에 WordPress 설치 |
wp plugin install --activate | wordpress.org에서 플러그인을 설치하고 활성화 |
wp plugin update --all | 모든 플러그인을 한 번에 업데이트 |
wp theme activate <theme> | 활성 테마를 즉시 전환 |
wp user create <user> --role=<role> --user_pass=<pass> | 역할과 비밀번호를 가진 사용자를 생성 |
wp search-replace 'old' 'new' | 안전한 데이터베이스 검색‑대체 (직렬화된 데이터를 처리) |
wp db export <file> / wp db import <file> | 데이터베이스를 백업하거나 복원 |
wp cache flush | 객체 캐시를 비우기 |
wp option get <name> / wp option update <name> <value> | wp_options 값을 읽거나 변경 |
wp cron event run <event> | WP‑Cron 이벤트를 수동으로 실행 |
Full command reference →
실제 사용 사례: 사이트 이동
파일을 전송하고 DB를 가져온 후, 실행:
wp search-replace 'localhost' 'staging.example.com' --all-tables
직렬화된 데이터가 안전하게 처리됩니다—깨진 배열도 없고 수동 SQL 편집도 필요 없습니다. 이전에 20 분 걸리던 작업이 이제는 몇 초면 끝납니다.
첫 번째 커스텀 스크립트
새로운 WordPress 설치를 위해 자주 사용하는 플러그인을 포함한 셸 스크립트를 만들어 보세요.
#!/bin/bash
# setup.sh — run after: wp core download && wp config create
# Install WordPress
wp core install \
--url=localhost \
--title="My Site" \
--admin_user=admin \
--admin_email=you@dev.com
# Install & activate standard plugins
wp plugin install wordfence woocommerce yoast-seo --activate
# Set a clean permalink structure
wp rewrite structure '/%postname%/' --hard
echo "✅ Setup complete!"
setup.sh 파일로 저장하고 실행 권한을 부여합니다 (chmod +x setup.sh).
새로운 설치가 있을 때마다 실행하면 일관된 환경을 손쉽게 구축할 수 있습니다.
환경을 일정하게 유지하고, 별도의 노력 없이 바로 사용할 수 있습니다.
다음은
Part 2에서는 더 깊이 파고들 예정입니다:
WP_CLI::add_command()로 고급 맞춤 PHP 명령을 작성하기- CI/CD 파이프라인에서 WP‑CLI 사용하기
- 원격 WordPress 사이트 관리하기
--dry-run패턴을 사용해 프로덕션을 절대 망가뜨리지 않기
도움이 되었나요? ❤️를 남기고 Part 2를 기대해 주세요!