Sebelum mulai melaporkan masalah baru di repositori GitHubGitHub GitHub adalah situs web yang menawarkan implementasi daring repositori git yang dapat dengan mudah dibagikan, disalin, dan dimodifikasi oleh pengembang lain. Repositori publik dapat dihosting secara gratis, sedangkan repositori privat memerlukan langganan berbayar. GitHub memperkenalkan konsep ‘pull request’, yaitu perubahan kode yang dibuat di cabang oleh kontributor dapat ditinjau dan didiskusikan sebelum digabungkan oleh pemilik repositori. https://github.com/, pastikan untuk memeriksa instalasi lokal Anda, karena beberapa pengaturan biasanya dapat menyebabkan hasil yang tidak terduga dari perintah WP-CLIWP-CLI WP-CLI adalah Antarmuka Baris Perintah untuk WordPress, yang digunakan untuk melakukan tugas administratif dan pengembangan secara terprogram. Halaman proyeknya adalah http://wp-cli.org/ https://make.wordpress.org/cli/ Anda.
Bagaimana cara mendapatkan informasi yang lebih lengkap tentang instalasi WP-CLI saya?
WP-CLI menyediakan perintah wp --info, yang memberi Anda banyak informasi tentang lingkungan instalasi WP-CLI. Hasilnya akan memberi tahu Anda,
* sistem operasi dan shell yang Anda gunakan
* biner PHPPHP PHP (akronim rekursif dari PHP: Hypertext Preprocessor) adalah bahasa skrip sumber terbuka serbaguna yang banyak digunakan, terutama sesuai untuk pengembangan web dan dapat disematkan ke dalam HTML. https://www.php.net/manual/en/index.php yang digunakan untuk menjalankan WP-CLI
* versi PHP yang digunakan
* lokasi direktori root WP-CLI
* lokasi direktori vendor WP-CLI
* biner WP-CLI yang sedang Anda gunakan (jalur phar)
* lokasi penyimpanan paket WP-CLI
* lokasi berkas konfigurasi global dan proyek untuk WP-CLI, serta
* versi WP-CLI yang Anda gunakan.
Apa yang harus saya lakukan sebelum mulai men-debug masalah?
Sebelum mulai men-debug masalah, pastikan Anda menggunakan versi terbaru WP-CLI. Versi terbaru mungkin sudah memperbaiki masalah yang Anda alami. Perintah wp cli update akan meningkatkan versi WP-CLI Anda atau mengonfirmasi bahwa Anda sudah menggunakan versi terbaru. Jika instalasi berhenti, pastikan Anda diizinkan untuk terhubung ke GitHub menggunakan SSLSSL Secure Socket Layer – Enkripsi dari server ke browser dan sebaliknya. Mencegah pihak yang mengintip melihat apa yang Anda kirimkan antara browser dan server. (port 443) dan git (port 9418) untuk koneksi keluar.
Apa yang harus saya lakukan jika keluaran WP-CLI berbeda dari yang diharapkan?
Sebelum mulai menyelidiki bug, Anda harus mengetahui faktor-faktor yang dapat mengubah perilaku default WP-CLI dan cara memeriksa apakah faktor tersebut mungkin menjadi akar masalah. Ada lima subsistem utama untuk mengubah perilaku default ini: variabel lingkungan, berkas konfigurasi, paket WP-CLI, berkas wp-config.php, dan ekstensi WordPress (plugin, tema, plugin wajib pakai, drop-in).
Variabel Lingkungan
Pengaturan lingkungan kerja Anda merupakan prasyarat untuk menjalankan WP-CLI. Anda dapat memeriksa pengaturan lingkungan saat ini dengan perintah shell env.
Jika ingin menjalankan WP-CLI dari jarak jauh menggunakan SSHSSH Secure SHell – protokol untuk terhubung dengan aman ke sistem jarak jauh sebagai tambahan atau pengganti kata sandi., perintah wp harus dapat diakses melalui path server jarak jauh. Perilaku WP-CLI juga dapat diubah saat runtime melalui penggunaan variabel lingkungan:
WP_CLI_CACHE_DIR– Direktori untuk menyimpan cache berkas WP-CLI. Default-nya adalah~/.wp-cli/cache/.WP_CLI_CONFIG_PATH– Path ke berkas globalconfig.yml. Default-nya adalah~/.wp-cli/config.yml.WP_CLI_CUSTOM_SHELL– Memungkinkan pengguna mengganti shell default/bin/bashyang digunakan.WP_CLI_DISABLE_AUTO_CHECK_UPDATE– Menonaktifkan pemeriksaan pembaruan otomatis WP-CLI.WP_CLI_DOCKER_NO_TTY– Mengabaikan status tty yang terdeteksi dan menghapus flag--ttydaridocker execsaat menjalankan WP-CLI pada container Docker melalui ssh.WP_CLI_DOCKER_NO_INTERACTIVE– Mengabaikan status tty yang terdeteksi dan menghapus flag--interactivedaridocker execsaat menjalankan WP-CLI pada container Docker melalui ssh.WP_CLI_PACKAGES_DIR– Direktori untuk menyimpan paket yang diinstal melalui manajemen paket WP-CLI. Default-nya adalah~/.wp-cli/packages/.WP_CLI_PHP– Path biner PHP yang digunakan saat mengganti default sistem (hanya berfungsi untuk instalasi non-Phar).WP_CLI_PHP_ARGS– Argumen yang diteruskan ke biner PHP saat memanggil WP-CLI (hanya berfungsi untuk instalasi non-Phar).WP_CLI_SSH_PRE_CMD– Saat menggunakan--ssh=<ssh>, menjalankan perintah sebelum WP-CLI memanggil WP-CLI di server jarak jauh.WP_CLI_SSH_BINARY– Saat menggunakan--ssh=<ssh>, ini adalah perintah yang akan dipanggil pada mesin jarak jauh sebagai penggantiwp.WP_CLI_STRICT_ARGS_MODE– Menghindari ambiguitas dengan memberi tahu WP-CLI untuk memperlakukan semua argumen sebelum perintah sebagai argumen global, dan setelah perintah sebagai argumen lokal.WP_CLI_SUPPRESS_GLOBAL_PARAMS– Atur ketrueuntuk melewati tampilan parameter global di akhir layar bantuan. Ini menghemat ruang layar bagi pengguna tingkat lanjut.WP_CLI_FORCE_USER_LOGIN– Atur ke1untuk memaksa nilai yang diberikan ke flag--userditafsirkan sebagai login, bukan ID, guna mengatasi tipe yang ambigu.WP_CLI_EARLY_REQUIRE– Memuat satu atau beberapa berkas PHP khusus (dipisahkan koma) di awal proses bootstrap.WP_CLI_REQUIRE– Memuat satu atau beberapa berkas PHP khusus (dipisahkan koma) setelah proses bootstrap. Ini memiliki efek yang sama dengan--requirepada baris perintah atau pemetaanrequiredalam berkas konfigurasi wp-cli.yml.WP_CLI_USER_AGENT– Menetapkan nilai$_SERVER['HTTP_USER_AGENT']yang diandalkan oleh beberapa plugin dan alat.
Untuk menetapkan variabel lingkungan sesuai kebutuhan, Anda dapat menempatkan definisi variabel lingkungan sebelum perintah WP-CLI yang ingin dijalankan (misalnya EDITOR=vim wp post edit 1); untuk menimpa variabel lingkungan, gunakan export VARIABLE=value di ~/.bashrc atau ~.zhsrc.
Berkas Konfigurasi WP-CLI
Berkas konfigurasi memungkinkan Anda menyesuaikan perilaku WP-CLI agar sesuai dengan kebutuhan pribadi atau kebutuhan proyek Anda. Jika berkas konfigurasi salah atau menyertakan modifikasi yang tidak diinginkan terhadap perilaku default, keluaran WP-CLI kemungkinan besar akan mencerminkan kesalahan tersebut.
Perhatikan bahwa berkas konfigurasi proyek dapat mengganti pengaturan dalam berkas konfigurasi global.
Ganti nama atau hapus berkas konfigurasi Anda, lalu bandingkan hasilnya untuk mengetahui apakah pengaturan konfigurasi mungkin menyebabkan masalah.
Paket WP-CLI
Paket WP-CLI adalah proyek yang dikelola komunitas dan dibangun di atas WP-CLI. Paket tersebut dapat berisi perintah WP-CLI, tetapi juga dapat sekadar memperluas WP-CLI dengan cara tertentu. Meskipun WP-CLI mungkin berfungsi dengan sempurna, paket yang bermasalah juga dapat menyebabkan hasil yang tidak terduga. Untuk melewati pemuatan semua paket yang diinstal, gunakan wp --skip-packages.
Berkas Konfigurasi WordPress (wp-config.php)
Kesalahan dapat terjadi akibat memindahkan atau mengedit wp-config.php melebihi hal-hal yang didukung WP-CLI. Jika Anda mendapatkan kesalahan parse, periksa pengodean berkas wp-config.php Anda (UTF-8 tanpa BOM).
Pastikan baris require_once(ABSPATH . 'wp-settings.php'); tetap berada dalam berkas wp-config.php dan jangan memodifikasi wp-config.php di luar definisi konstanta. Jika Anda memanggil fungsi WordPress dalam wp-config.php, PHP akan gagal dengan kesalahan fatal.
Jika ingin menggunakan $_SERVER['HTTP_HOST'] dalam wp-config.php, Anda perlu menetapkan nilai default dalam konteks WP-CLI:
if ( defined( 'WP_CLI' ) && WP_CLI && ! isset( $_SERVER['HTTP_HOST'] ) ) {
$_SERVER['HTTP_HOST'] = `example.com';
}
Alih-alih $_SERVER['document_root'], gunakan dirname( __FILE__ ) atau yang serupa.
Ekstensi WordPress
Tema dan plugin WordPress dapat bertentangan dengan proses pemuatan WP-CLI atau mengganggunya, misalnya dengan mengalihkan pengguna. Keduanya sering membuat asumsi yang tidak benar dalam konteks WP-CLI, seperti menggunakan nama host permintaan saat ini (konsep yang tidak ada dalam konteks baris perintah).
Anda dapat melewati plugin dan tema tertentu (misalnya --skip-plugins=akismet) atau melewati semuanya (wp --skip-plugins --skip-themes).
Apa yang harus saya lakukan jika WP-CLI melaporkan kesalahan?
Masalah umum merupakan akibat dari perubahan pada wp-config.php atau konfigurasi server web Anda. Bagian “Masalah umum” dalam buku panduan mencantumkan pesan kesalahan yang paling umum dan menjelaskan cara menanganinya.
Coba reproduksi masalah tersebut dalam instalasi WordPress baru dengan Tema default (Twenty …) dan tanpa plugin yang diinstal. Jika masalah hanya dapat direproduksi dalam lingkungan khusus, maka masalah tersebut adalah bug di lingkungan Anda, bukan di WP-CLI. Pastikan juga untuk mengaktifkan mode debugging WordPress dengan menetapkan konstanta define( 'WP_DEBUG', true ); dalam wp-config.php. Hal ini mungkin mengungkapkan masalah pada instalasi WordPress Anda yang sudah ada, bukan yang disebabkan oleh WP-CLI.
Selain itu, Anda dapat menggunakan parameter global WP-CLI --debug untuk menampilkan semua kesalahan PHP dan menambahkan tingkat perincian pada bootstrap WP-CLI.
Saya sudah memeriksa semua hal di atas, tetapi masih mengalami masalah. Di mana saya dapat melaporkan masalah?
Jika Anda merasa telah menemukan bug, kami ingin mengetahuinya agar dapat memperbaikinya.
Pelaporan bug untuk WP-CLI ditangani di GitHub. Sebelum membuat masalah baru, silakan cari masalah yang sudah ada untuk melihat apakah sudah ada penyelesaiannya. Jika belum ada masalah terbuka atau masalah yang telah diperbaiki untuk bug Anda, silakan ikuti panduan kami untuk mengirimkan laporan bug agar masalah tersebut dapat ditangani tepat waktu. Menyediakan ringkasan, langkah-langkah reproduksi, detail lingkungan, dan informasi spesifik lain yang diidentifikasi di bawah ini akan membantu memastikan bahwa Anda mengirimkan laporan bug yang lengkap.
Harap berikan kepada kami:
* ringkasan masalah dalam bentuk naratif,
* daftar langkah yang terperinci dan spesifik untuk mereproduksi masalah,
* detail lingkungan tempat Anda bekerja,
* deskripsi tentang bagaimana bug memengaruhi penggunaan Anda (yaitu hasil yang diharapkan dibandingkan dengan hasil aktual), termasuk * tingkat keparahan,
* kemungkinan solusi sementara, dan
* diagnostik yang relevan, seperti laporan kerusakan, stack trace, atau keluaran debug.
Anda dapat menemukan deskripsi terperinci tentang informasi ini dalam laporan masalah di panduan untuk mengirimkan laporan bug.