首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在WordPress子主题中包含WP-Query类?

如何在WordPress子主题中包含WP-Query类?
EN

Stack Overflow用户
提问于 2021-04-08 19:12:05
回答 2查看 41关注 0票数 0

我想我遗漏了一些明显的东西!我正在基于WordPress TwentyTwentyOne主题创建我的第一个子主题。我想在我的主页上显示来自特定类别(例如“新闻”)的帖子。我创建了一个特定的页面模板" page -home.php",这是来自父主题的"page-php“的副本,但添加了以下代码:

代码语言:javascript
复制
$args = array(
   'category_name' => 'news',
   'posts_per_page' => 3
);
$my_query = new WP_Query( $args );
if ( $my_query->have_posts() ) {
   while ( $my_query->have_posts() ) {
      $my_query->the_post();     
   }
}
wp_reset_postdata();

这不起作用。Eclipse IDE在"new ()“上显示错误:"WP_Query无法解析为类型”,这是可以理解的,因为项目不包含wp-WP_Query目录。然而,我本以为WordPress环境会添加这个,但事实似乎并非如此。

然后我添加了以下令人费解的代码

代码语言:javascript
复制
$filename = $_SERVER["SCRIPT_FILENAME"];
$dir = substr($filename,0, strrpos($filename,"/"));
$incPath = $dir."/wp-includes";
$incPath = str_replace("/", DIRECTORY_SEPARATOR, $incPath);
set_include_path(get_include_path() . PATH_SEPARATOR . $incPath);
require_once 'class-wp-query.php';

这也无济于事。

我有种感觉,我明显漏掉了一些东西,不应该这么复杂。

我在Windows10.0.19041和Apache2.4和PHP 7.4上运行Wordpress 5.7。

EN

回答 2

Stack Overflow用户

发布于 2021-04-08 21:32:05

它对我来说很好用:

代码语言:javascript
复制
<?php
$args = array(
    'posts_per_page' => 3,
);
$the_query = new WP_Query($args);

if ($the_query->have_posts()) {
    echo '<ul>';
    while ($the_query->have_posts()) {
        $the_query->the_post();
        echo '<li>' . get_the_title() . '</li>';
    }
    echo '</ul>';
} else {
    // no posts found
}

wp_reset_postdata();

?>
票数 0
EN

Stack Overflow用户

发布于 2021-04-08 23:13:57

我已经添加了这行

代码语言:javascript
复制
echo '<li>' . get_the_title() . '</li>';

根据Aleksandr的建议,页面现在输出所需的标题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67002788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档