워드프레스 "예약된 이벤트가 실패했습니다" 오류 메시지가 표시되는 경우

워드프레스 정보를 제공하는 블로그 Avada 2022. 7. 30. 11:13 • 댓글:

워드프레스의 사이트 건강(Site Health) 도구에서 사이트 문제나 개선사항을 확인할 수 있습니다. 사이트 건강에서 "예약된 이벤트가 실패했습니다" 오류 메시지가 표시되는 경우 확인 사항에 대해 살펴보겠습니다.

워드프레스 "예약된 이벤트가 실패했습니다" 오류 메시지가 표시되는 경우

워드프레스 사이트 건강 도구

워드프레스 관리자 페이지 > 도구 > 사이트 건강에서 사이트 문제를 확인할 수 있습니다.

워드프레스 사이트 건강

위의 그림에서는 2개의 권장 개선사항이 표시되고 있습니다.

  • 비활성화 플러그인을 모두 제거해야 합니다.
  • 비활성화 테마를 제거해야 합니다.

사용하지 않는 플러그인과 테마는 삭제하는 것이 보안상 좋습니다. 꼭 필요한 플러그인 외에는 비활성화된 플러그인은 삭제하시기 바랍니다. 가령, 저는 UpdraftPlus 백업/복원 플러그인을 필요할 때에만 활성화하여 사이트를 백업하고, 평소에는 비활성화 상태로 도구 있습니다. 이런 경우에는 삭제하지 말고 필요할 때에만 활성화하여 사용하면 될 것입니다.

사이트에 문제가 없으면 "정말 잘 했습니다! 모든 것이 정상적으로 작동되고 있습니다" 문구가 표시됩니다.

워드프레스 사이트 건강 도구

"예약된 이벤트가 실패했습니다" 오류 메시지가 표시되는 경우

간혹 다음과 같이 예약한 이벤트가 실패했습니다 에러 메시지가 표시될 수 있습니다.

워드프레스 예약된 이벤트가 실패했습니다 오류 메시지가 표시되는 경우
출처: 네이버 카페.

위의 화면에서는 "예약한 이벤트 wp_update_comment_type_batch을(를) 실행하는데 실패했습니다. 사이트는 여전히 작동되고 있지만, 글을 예약하거나 자동 업데이트가 의도한 것처럼 작동되지 않을 수도 있다는 것을 나타낼 수도 있습니다." 문구가 표시되고 있습니다.

이 문제는 WP-Cron이 비활성화되거나 지연 실행될 때 나타날 수 있습니다.

워드프레스에서는 wp-cron.php라는 파일을 사용하여 가상 Cron 작업이나 예정된 글 게시, 플러그인/테마 업데이트 확인, 알림 이메일 송부 등과 같은 작업을 자동으로 수행합니다. 기본적으로 워드프레스는 예정된 작업이 있을 때 누군가가 워드프레스 사이트를 방문할 때마다 wp-cron.php를 호출하도록 설정되어 있습니다. 방문자가 얼마 없는 사이트의 경우에는 아무 문제가 없지만 방문자들이 방문할 때 여러 번 예정된 작업을 확인하는 것은 매우 비효율적일 수 있고 서버에 리소스 사용량 문제를 야기하고 사이트 로딩이 느리게 할 수 있습니다.

그러므로 방문자 수가 많을 경우 wp-cron을 비활성화하면 사이트 속도 개선에 도움이 됩니다.

 

워드프레스에서 wp-cron.php 비활성화하여 사이트 속도 향상시키기 - 워드프레스 정보꾸러미

WordPress에서는 wp-cron.php라는 파일을 사용하여 가상 Cron 작업이나 예정된 글 게시, 플러그인/테마 업데이트 확인, 알림 이메일 송부 등과 같은 작업을 자동으로 수행합니다.

www.thewordcracker.com

[**wp-config.php**] 파일에 다음 라인을 추가하여 WP-CRON을 비활성화할 수 있습니다.

define('DISABLE_WP_CRON', 'true');

일부 웹호스팅에서는 워드프레스를 자동으로 설치하면서 위의 라인을 자동으로 추가하도록 설정되어 있을 수 있습니다.

위의 라인이 추가되면 예약된 작업(예: 예약글 발행, 워드프레스 업데이트 확인 등)이 실행되지 않기 때문에 "예약된 이벤트가 실패했습니다" 오류가 발생하게 됩니다.

저는 wp-cron을 비활성화하는 대신 다음과 같은 라인을 추가하여 wp-cron이 실행되는 시간을 조정했습니다.

define('WP_CRON_LOCK_TIMEOUT', 3600);

위의 코드에서 3600은 3600초를 의미하며 60분을 나타냅니다. 위와 같은 코드를 추가하면 예약된 작업이 지연되어 실행될 수 있지만 예약 작업 실행에는 문제가 없을 것입니다.

요약

정리하면 "예약된 이벤트가 실패했습니다" 에러 문구가 표시되면 wp-cron이 비활성화되어 있는지 체크해보시기 바랍니다.

  1. wp-config.php 파일에 define('DISABLE_WP_CRON', 'true'); 라인이 추가되어 있거나
  2. 서버 레벨에서 WP-CRON이 비활성화되어 있을 수 있습니다.

1번의 경우 [**define('DISABLE_WP_CRON', 'true');**] 라인을 삭제하면 문제가 해결됩니다. 잦은 크론 실행으로 인해 사이트 속도가 느려지는 경우 [**define('WP_CRON_LOCK_TIMEOUT', 3600);**]을 추가하여 크론이 실행되는 간격을 조정할 수 있습니다.

2번의 경우에는 웹호스팅 업체에 연락하여 문제를 해결해야 합니다.

사이트 건강(Site Health) 용어 번역에 대하여

중요한 사항은 아니지만 "사이트 건강"이라는 용어는 그다지 바람직한 번역이 아닐 수 있습니다. 컴퓨터 분야에서는 Health를 보통 "상태"로 번역합니다. 예를 들어, MS 용어집에서는 "health"가 "상태"로 번역되어 있습니다.

마이크로소프트 용어집

워드프레스에서도 Site Health가 본래 사이트 상태로 번역되었지만, 언젠가부터 번역이 "사이트 건강"으로 바뀌었고 이 표현이 계속 사용되고 있습니다. 

참고

https://avada.tistory.com/2681

 

워드프레스에서 전송되는 이메일이 스팸으로 분류되는 문제

워드프레스에서 Contact Form 7이나 WPForms 등의 문의폼 플러그인을 사용하여 사용자로부터 문의를 쉽게 받을 수 있습니다. 간혹 문의폼을 통해 제출한 문의 내용이 이메일로 전송이 안 되는 경우가

avada.tistory.com

https://avada.tistory.com/2659

 

워드프레스 엘리멘터 헤더 템플릿 만들기 (헤더 & 푸터 커스텀)

워드프레스에서 페이지에 따라 다른 헤더나 푸터를 사용하고 싶은 경우가 있습니다. 일반적인 테마에서는 헤더는 사이트 전체에 공통으로 사용되고, 페이지에 따라 다른 헤더를 사용하려면 테

avada.tistory.com

 

워드프레스 네이버 카페