Wordpress-使用qtranslate获取帖子

时间:2018-07-11 10:14:48

标签: php wordpress qtranslate

我有一个wordpress网站,在我的新页面中,我只看到主要语言的新闻。如果我更改语言,则看不到帖子。并使用qtranslate插件翻译帖子。

这是我的代码以及如何获取帖子:

<div class="infinite-scroll">
<?php
   $category = get_field('nome', get_the_ID());
   $paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;

   $custom_args = array(
                  'post_type' => 'post',
                  'posts_per_page' => 6,
                  'paged' => $paged,
                  'category_name' => $category,
                );

    $articles = new WP_Query( $custom_args );
    if ( $articles->have_posts() ) : while ( $articles->have_posts() ) : $articles->the_post(); // run the loop ?>
      <div class="col-xs-12 col-sm-6 col-md-4">
         <a class="news-link" href="<?php the_permalink() ?>">
          <div class="news">
            <div class="image">
              <?php the_post_thumbnail('thumbnail') ?>
               <div class="mask">
                <div class="icon">
                    <i class="icon-plus"></i>
                 </div>
              </div>

              </div>

             </div>
           </a>
          </div>
      <?php endwhile; ?>
      <?php
         if (function_exists(custom_pagination)) {
           custom_pagination($articles->max_num_pages,"",$paged);
         }
       ?>
       <?php else: ?>
       <article>
         <h1>Sorry...</h1>
         <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
        </article>
            <?php endif; ?>
        </div>

使用主要语言,它会很好地列出帖子,如果我更改为另一种语言,则会向我返回错误消息:Sorry, no posts matched your criteria.

出什么问题了?网站的其他内容在几种语言中也能正常工作。此问题仅在新闻中发生。

1 个答案:

答案 0 :(得分:-1)

您正在从ACF字段中获取类别名称,因此如果正在翻译该类别名称,则可能是问题所在。而不是获取名称,而是获取类别的ID并使用该ID(请记住,将$ custom_args中的@Slf4j public enum SupportedLanguage { ENGLISH("english", "en"), FRENCH("french", "fr"); private final String resourceFile; private final Locale locale; SupportedLanguage(final String resourceFile, final String locale) { this.resourceFile = resourceFile; this.locale = new Locale(locale); } public String getResourceFile() { return resourceFile; } public Locale getLocale() { return this.locale; } } 更改为'category_name'