WPML 및 커스텀 포스트 타입 아카이브 템플릿
WPML 3.0.2-a를 WordPress 3.8.1과 함께 사용하고 있습니다.
커스텀 투고 타입은 다음과 같이 정의되어 있습니다.
function add_custom_posts(){
$args = array(
'labels' => array(
'name' => __( 'Showcases' ),
'singular_name' => __( 'Showcases' ),
'add_new_item' => __( 'Add New Showcase'),
'edit_item' => __( 'Edit Showcases' ),
'view_item' => __( 'View Showcase' ),
'search_items' => __( 'Search Showcases' ),
'not_found' => __( 'No Showcases found.' ),
'not_found_in_trash' => __( 'No Showcases found in Trash.' )
),
'public' => true,
'has_archive' => 'case-studies',
'menu_position' => 5,
'taxonomies' => array('post_tag'),
'supports' => array( 'title', 'thumbnail', 'editor', 'excerpt', 'page-attributes' ),
'rewrite' => array('slug' => 'case-studies', 'with_front' => false),
'capability_type' => 'post',
'hierarchical' => false,
);
register_post_type('showcases', $args);
}
add_action( 'init', 'add_custom_posts', 100 );
커스텀 투고 타입의 아카이브와 싱글 투고 URL에 디폴트 언어를 표시하면 문제 없습니다.예를 들어 다음과 같습니다.
/case-studies/
/case-studies/%postname%/
완벽하게 작동하며 그들이 해야 할 것을 보여주고 있습니다.
그러나 다른 언어에서는 작동하지 않습니다.
/de/case-studies/
/de/case-studies/%postname%/
둘 다 WordPress 테마의 index.php 템플릿을 표시하고 있습니다.실제로는 404페이지인데 404.php가 없기 때문에 index.php가 사용되고 있습니다.
Showcase 투고 타입은 WPML 설정에서 번역 가능합니다.
왜, 어떻게 고쳐야 하는지 아세요?
이 지원 스레드를 찾았습니다.이 스레드에서는 다음 행(코드 내)을 변경해야 합니다.
'has_archive' => 'case-studies',
대상:
'has_archive' => icl_translate('wpml_custom', 'wpml_custom_showcases', 'case-studies'),
이것은 상용 소프트웨어이고 문서가 없기 때문에 공식 지원에 문의하는 것이 좋을지도 모릅니다.
나는 무엇이 문제인지 알아냈다.
문자열이 WPML -> String translations에서 변환되지 않았습니다.
번역(케이스 스터디 -> de/case-studies)을 해보니 효과가 있었습니다.
사실 모든 변종에서 작동했습니다. 원래 코드와 답변에 제시된 코드 둘 다입니다.
이것은 당신에게 도움이 될 것 같습니다만, 몇 가지 액션을 놓쳤을 뿐입니다. :)
'has_archive' => 'case-studies',
로.
'has_archive' => icl_translate('wpml_custom', 'wpml_custom_showcases', 'case-studies'),
그리고나서
[ Settings ]> [ Permalinks ]으로 이동하여 [Save]를 누릅니다.
이게 완벽하게 작동하는지 알려주세요.
건배!
해보셨습니까
'has_archive' => true
?
내가 제대로 이해했다면 원하는 대로 작동했을 것이다.
언급URL : https://stackoverflow.com/questions/21631882/wpml-and-custom-post-types-archive-template
'programing' 카테고리의 다른 글
어레이의 첫 번째 항목을 새 필드에 투영(MongoDB 집약) (0) | 2023.03.12 |
---|---|
angularjs에서 폼의 유효성을 확인하려면 어떻게 해야 합니까? (0) | 2023.03.12 |
뷰포트 크기에 따라 조건부로 렌더링합니다. (0) | 2023.03.12 |
참조가 DOM 요소를 가리킬 때 useEffect의 종속성으로 ref.current를 사용하는 것이 안전합니까? (0) | 2023.03.12 |
장고와 리액트 입수하는 방법JS가 같이 일한다고? (0) | 2023.03.12 |