개발 과정에서 코드 디버깅은 매우 중요한 작업이며 WordPress 디버깅 기술을 익히면 디버깅을 더 잘하는 데 도움이 될 수 있습니다. 예를 들어, 로컬 개발 환경에서는 불합리한 코드 영역 수정을 용이하게 하기 위해 모든 코드 경고 정보를 출력해야 할 수도 있습니다.
이 글에서는 WordPress의 모든 디버깅 방법을 설명합니다. 개발자라면 효율성을 크게 높이려면 이러한 기술을 숙지해야 합니다.
디버그 모드를 활성화하려면 루트 디렉터리의 wp-config.php 파일에 일부 상수를 추가해야 하므로 아래 소개된 모든 코드는 루트 디렉터리의 wp-config.php 파일에 추가됩니다.
WP_DEBUG
WP_DEBUG는 WordPress 상수입니다. True로 설정하면 WordPress가 개발자 모드로 들어가고 모든 개발 관련 프롬프트가 화면에 출력됩니다.
개발을 촉진하려면 로컬 개발 환경에서 WP_DEBUG를 활성화하는 것이 좋습니다.
//启用开发者模式 define( 'WP_DEBUG', true );
WP_DEBUG_LOG
워드프레스 실행 시 발생하는 모든 오류를 기록하고 싶다면 WP_DEBUG_LOG를 켜면 모든 오류가 wp-content/debug.log 파일에 기록되어 저장됩니다.
오류 기록을 위한 전제 조건은 WP_DEBUG 모드를 켜는 것입니다. WP_DEBUG를 켜야만 오류가 발생합니다.
//开启错误记录 define( 'WP_DEBUG_LOG', true );
WP_DEBUG_DISPLAY
WP_DEBUG 모드에서 발생한 오류를 화면에 표시하지 않고 WP_DEBUG_LOG로만 기록하고 싶다면 WP_DEBUG_LOG, WP_DEBUG를 켤 때 WP_DEBUG_DISPLAY도 켜면 됩니다.
//阻止错误显示在屏幕上 define( 'WP_DEBUG_DISPLAY', true ); SCRIPT_DEBUG
기본적으로 WordPress 백엔드는 압축 및 병합된 JS 및 CSS 파일을 사용합니다.
때때로 디버깅을 위해 백그라운드에서 압축된 CSS 및 JS 파일을 사용하고 싶지 않을 수 있습니다. 이 경우 SCRIPT_DEBUG를 True로 설정할 수 있습니다.
//禁用压缩的 CSS 和 JS 文件 define( 'SCRIPT_DEBUG', true );
저장 쿼리
데이터베이스 쿼리 수를 최적화하려면 SAVEQUERIES가 매우 중요합니다. SAVEQUERIES를 True로 설정하면 WordPress에서 각 데이터베이스 쿼리에 소요된 SQL 문과 시간을 기록합니다.
//记录数据库查询 define( 'SAVEQUERIES', true );
로깅을 활성화한 후 $wpdb의 query 변수를 사용하여 모든 데이터 쿼리를 가져올 수 있습니다. 아래 코드를 테마의 footer.php 파일에 넣으면 모든 데이터베이스 쿼리를 볼 수 있습니다.
<pre class="brush:php;toolbar:false"><?php var_dump( $GLOBALS['wpdb']->queries ); ?>