WPML em modelos de página personalizados

Eu tenho um site WordPress traduzido do dansk para o inglês usando o WPML. Nela, eu tenho uma página que usa um modelo de página personalizado para exibir os títulos de todas as postagens. Infelizmente, está exibindo todas as postagens duas vezes: o original e o traduzido.

Este é o código que eu tenho:

    ICL_LANGUAGE_CODE, 'numberposts' => '-1', 'post_type' => 'post', ); $myposts = get_posts($args); foreach($myposts as $post) : ?>
  • <a href="https://wordpress.stackexchange.com//questions/43182/wpml-in-custom-page-templates/">

Alguém tem alguma ideia do que preciso fazer para que esta página exiba apenas os títulos no idioma atual?

Solutions Collecting From Web of "WPML em modelos de página personalizados"

Para que o filtro de idioma do WPML entre em vigor, você deve permitir filtros em get_posts. O padrão está desativado.

Você pode adicionar suppress_filters=0 aos seus arcos get_posts e deve funcionar. Veja: http://codex.wordpress.org/Template_Tags/get_posts#Parameters

 
    < ?php $args = array( 'suppress_filters' => false, 'numberposts' => '-1', 'post_type' => 'post', ); $myposts = get_posts($args); foreach($myposts as $post) : ?>
  • < ?php the_title(); ?>
  • < ?php endforeach; ?>

Eu acho que o motivo de mostrar conteúdo em todos os idiomas é porque o código de idioma arg não deve estar na matriz.

Eu também não uso filtros de pressão também.

Se você tiver o WPML configurado corretamente, então você pode seguir em frente e usar uma consulta personalizada, como:

 

< ?php _e('Archive','textdomain'); ?>

    < ?php $loop1 = new WP_Query( array( 'post_type' => 'post', 'posts_per_page' => -1 ) ); ?> < ?php while ( $loop1->have_posts() ) : $loop1->the_post(); ?>
  • < ?php the_title(); ?>
  • < ?php endwhile; ?>