我有一个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.
出什么问题了?网站的其他内容在几种语言中也能正常工作。此问题仅在新闻中发生。
答案 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'
)