개발을 하는데 가장 중요한 포인트는 자신이 만든 코드가 원하는 목적에만 작동되어야 하는 점입니다. 이렇게 만들기 위해서는 제대로 된 알고리즘을 기반으로 코드를 짜야 하지만아무리 잘 만든다고 해도, 테스트를 거치지 않으면 그 코드는 검증되지 않습니다.
워드프레스에서 지원하는 디버그 방법을 공유하고자 합니다.
// 업로드 제한 해제 상수
define('ALLOW_UNFILTERED_UPLOADS', true);// hwp 파일 접근 허가 추가
function my_custom_mime_types($mimes)
{
// 값 추가하기
$mimes['hwp'] = 'application/hangul';
return $mimes;
}
add_filter('upload_mimes', 'my_custom_mime_types');자료를 제한없이 올릴 수 있도록 돕는 함수입니다.
자세한 설정방법은 파일 확장자 업로드 제한 해제방법을 참고하시면 됩니다.
define('WP_DEBUG', true); // 디버그 모드 활성화
define( 'WP_DEBUG_DISPLAY', true ); // 에러 코드 확인, 오류 발생 시 메세지를 보여줍니다.
에러 뿐만 아니라 경고, 알림이 뜨기에 사전에 수많은 에러를 방지할 수 있습니다. 개발 후에는 디버그 모드를 false 로 해야 유저가 해당 알림을 보지 않기에 개발 완료 후에는 디버그 모드를 종료하여야 합니다.WP_DEBUG_DISPLAY 는 나중에 오류를 검토할 수 있도록 WP_DEBUG_LOG 와 같이 사용해야 합니다.
define('SCRIPT_DEBUG', ture);자바스크립트와 CSS 파일을 압축하지 않습니다. 워드프레스는 속도 상승을 위해 파일의 압축이 이루어지지만, 위의 코드를 추가하여 개발 과정에서 코드를 조금 더 집중하여 볼 수 있다는 장점을 가지고 있습니다.
// 첫번째 방법
define( 'WP_DEBUG_LOG', true );
// 두번째 방법
define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log' );워드프레스의 디버그 로그를 기록합니다. AJAX 이벤트를 디버깅 하는 경우도 자료를 기록해줍니다.
define('SAVEQUERIES', 'true');현재 페이지에 작동되는 쿼리를 $wpdb->queries 에 기록합니다. 따로 노출되지는 않기에 추가로 작업해야 하는데요,
아래의 코드를 활용하여 원하는 페이지에 노출시키면 됩니다.
속도 저하의 원인이 되기에 사이트의 개발이 완료되면 해당 코드를 삭제해야 합니다
global $wpdb;
echo "<pre>";
print_r( $wpdb->queries );
echo "</pre>";$wpdb 라는 글로벌 변수를 호출합니다. <pre> 태그와 print_r() 은 배열이 있는 코드를 예쁘게 정리해줍니다.
define('WP_MEMORY_LIMIT', '256M');해당 방법을 통하여 설정하더라도 실제로 메모리값이 늘어나지는 않을 수 있습니다. 이 경우에는 서버에 설치된 PHP 를 설정해야 합니다.
php.ini 파일 안에 있는 memory_limit = 256M 와 같은 설정을 진행하여 해결하거나, 서버의 가용성을 늘려 해결하는 방법을 추천합니다.
define('RDG_REST_API_KEY' , '키값');상수를 등록하게 되면 워드프레스에서 RDG_REST_API_KEY 를 입력함으로 보안에 신겨쓸 수 있게 됩니다
define ( 'SCRIPT_DEBUG' , true );워드프레스에서 기본으로 사용되는 코드들은 압축이 된 상태로 보여집니다. 사람이 알아볼 수 없기 때문에 개발할 때는 위의 코드를 해제하여 개발하는 것이 좋습니다.
define( 'WP_AUTO_UPDATE_TRANSLATION', false );번역 작업이 필요하지 않는 경우가 있습니다. 이 경우는 위의 코드를 실행함으로서 해결할 수 있습니다