WPML
상태
해결됨
보고된 제품
WPML Multilingual CMS 3.1.7.2

문제 개요

다양한 유형의 작업을 수행하거나 프런트엔드에서 일부 페이지를 표시할 때 빈 페이지 또는 다음 오류 중 하나가 표시될 수 있습니다:

  • Fatal error: Maximum function nesting level of '100' reached, aborting!
  • Fatal error: Allowed memory size of xxxxxx bytes exhausted

일부(드물고 매우 특정한) 구성에서는 WPML 코드가 무한 루프에 빠집니다. 이 루프는 할당된 최대 PHP 메모리 제한에 도달할 때까지 무한히 실행되며 메모리를 소모합니다. 서버의 메모리 제한이 매우 높게 설정되어 있음에도 여전히 메모리가 고갈된다면 이 문제를 겪고 있는 것일 수 있습니다.

99.5%의 경우 메모리 오버플로는 PHP의 메모리 제한이 너무 낮기 때문에 발생한다는 점에 유의하세요. 이 버그는 매우 드문 경우에만 발생합니다. 메모리 오버플로에 대한 대부분의 보고는 허용된 메모리 양을 단순히 늘리는 것만으로 해결됩니다.

서버의 메모리가 매우 높게 설정되어 있는데도 여전히 부족한 경우 여기에 제안된 패치를 적용할 수 있습니다. 이 작업에는 WPML의 파일을 편집해야 한다는 점에 유의하세요. 이 문제와 기타 문제를 해결한 베타 버전을 곧 릴리스할 예정입니다.

임시 해결 방법

이 수정 사항은 WPML 문자열 번역 버전 2.0.9.1을 기준으로 합니다.
다음 플러그인 업데이트를 기다리는 것을 권장하지만, 빠른 수정이 필요하고 플러그인 파일을 편집할 수 있는 충분한 기술이 있다면 다음 지침을 따르세요:


  • *wp-content/plugins/wpml-string-translation/inc/functions.php* 파일을 여세요.

  • 2940번째 줄의 다음 코드를: WPML_Config::load_config_run();
    다음과 같이 바꾸세요: remove_action('update_option', 'update_option_to_translate_string', 5);
    WPML_Config::load_config_run();
    add_action('update_option', 'update_option_to_translate_string', 5, 3);

  • 저장하세요

알려진 모든 문제 →