- 상태
- 해결됨
- 보고된 제품
- WPML Multilingual CMS 3.6.0
- 해결된 버전
- 3.6.1
문제 개요
특정 테마를 사용할 때 페이지 표시가 깨지는 다음과 같은 치명적 오류가 발생할 수 있습니다:
Fatal error: Uncaught exception ‘InvalidArgumentException’ with message ‘Argument ID must be numeric and greater than 0’
임시 해결 방법
해당 테마가 잘못된 유형(객체 대신 배열)의 인수를 WordPress 필터에 전달하기 때문에 이 문제가 발생합니다.
이 문제는 다음 릴리스에서 변수가 올바른 유형을 사용하도록 강제하여 해결됩니다.
그동안은 sitepress-multilingual-cms/classes/language-switcher/class-wpml-ls-render.php 파일의 127번째 줄(함수 맨 위)에 다음 줄을 수동으로 추가하여 코드를 패치할 수 있습니다.
$args = (object) $args;
패치를 적용한 후 코드는 다음과 같아야 합니다.
//...
public function wp_nav_menu_objects_filter( $items, $args ) {
$args = (object) $args;
$menu_id = isset( $args->menu->term_id ) ? $args->menu->term_id : null;
//...