非程序员也能用Wordpress获取分类下所有文章实战案例
自己不会代码想做网站,想在Wordpress里获取某个分类下的所有文章,听起来复杂,但实际操作起来特别简单。我做过不下50个企业官网,其中80%都用Wordpress做后台,特别是那些不懂代码的老板,他们最在意的就是如何快速把内容按分类展示出来,比如“产品介绍”、“公司新闻”、“客户案例”这些栏目下文章太多,手动整理太麻烦。今天就用一个实战案例,手把手教你如何在Wordpress里实现“获取分类下所有文章”,而且完全不依赖代码。
一、各自定位
在Wordpress建站过程中,获取分类下所有文章是常见的功能需求,特别是在构建企业官网、知识库、电商站等场景。对于非程序员用户来说,他们希望以最简单的方式实现该功能,避免使用复杂的插件或修改主题代码。
Wordpress本身提供了多种方式来实现这一功能:
- 内置函数:使用
get_posts()或WP_Query等内置函数来获取分类下的所有文章。 - 插件工具:使用如“Category Posts Widget”或“WP Show Posts”等插件,通过可视化界面配置实现文章展示。
- 主题定制:某些主题自带分类展示模块,可以直接在后台拖拽使用。
- 自定义开发:对于高级用户,可以通过编写PHP代码来实现高度定制化的文章展示。
这些方式各有优缺点,下面将从定位、核心差异、代码写法、适用场景、选型建议等方面进行对比,帮助你选出最适合自己的方案。
二、核心差异对比
以下是几种常见方案的核心差异对比:
| 方案类型 | 代码/配置要求 | 灵活性 | 配置复杂度 | 依赖插件 | 响应式支持 | SEO友好度 | 后期维护成本 |
|---|---|---|---|---|---|---|---|
| 内置函数 | 中等 | 高 | 中等 | 否 | 是 | 高 | 低 |
| 插件工具 | 无 | 低 | 低 | 是 | 是 | 中 | 中 |
| 主题内置模块 | 无 | 低 | 低 | 否 | 是 | 中 | 低 |
| 自定义开发 | 高 | 极高 | 高 | 否 | 是 | 高 | 高 |
从上表可以看出,如果你是非程序员用户,插件工具或主题内置模块是最适合的方案;而如果你是开发者或有定制需求的站长,内置函数或自定义开发则更为合适。
三、代码/配置写法对比
1. 内置函数(PHP)
如果你有基本的PHP知识,或者想在主题中嵌入代码,可以使用WP_Query来获取分类下的所有文章。下面是一个简单的示例代码,用于在页面中展示“产品介绍”分类下的所有文章:
<?php
$args = array('category_name' => '产品介绍', // 替换为你实际的分类名称'posts_per_page' => -1, // 获取所有文章
);
$query = new WP_Query($args);if ($query->have_posts()) {while ($query->have_posts()) {$query->the_post();echo '<h2><a href="' . get_permalink() . '">' . get_the_title() . '</a></h2>';echo '<p>' . get_the_excerpt() . '</p>';}
} else {echo '暂无文章';
}
wp_reset_postdata();
?>
这段代码可以直接粘贴到主题的page.php或自定义页面模板中,使用前记得替换分类名称。
2. 插件工具(以“Category Posts Widget”为例)
安装“Category Posts Widget”插件后,你可以在后台的“小工具”中找到该插件。拖拽到“侧边栏”或“主内容区”后,设置如下:
- 选择分类:选择你想要展示的分类(如“产品介绍”)。
- 显示文章数:设置要展示的文章数量,如“全部”或“10篇”。
- 布局样式:可选标题、摘要、图片等展示形式。
- 响应式设置:插件默认支持响应式布局,可直接使用。
使用插件的好处是零代码,适合不懂技术的用户,但缺点是灵活性较低,样式和内容展示形式受插件限制。
3. 主题内置模块
有些Wordpress主题(如Astra、OceanWP、Divi等)自带分类展示模块,可在后台的“页面构建器”中找到相关组件。
以Divi主题为例:
- 进入“页面构建器”。
- 添加“博客模块”或“分类文章模块”。
- 设置分类名称和显示数量。
- 调整样式(如标题颜色、图片大小等)。
- 保存并发布页面。
这种方式非常直观,但需要你使用支持该功能的主题,否则无法使用。
4. 自定义开发(PHP + CSS)
对于高度定制化的场景,如需要展示文章列表并支持分页、筛选、搜索等功能,你可以编写自定义PHP代码,并结合CSS实现样式定制。
以下是一个简单的自定义开发代码示例,支持分页显示分类文章:
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array('category_name' => '产品介绍','posts_per_page' => 5,'paged' => $paged
);
$query = new WP_Query($args);if ($query->have_posts()) {while ($query->have_posts()) {$query->the_post();echo '<div class="post-item">';echo '<h2><a href="' . get_permalink() . '">' . get_the_title() . '</a></h2>';echo '<p>' . get_the_excerpt() . '</p>';echo '</div>';}
} else {echo '暂无文章';
}
wp_reset_postdata();
?>
你可以通过添加CSS样式来美化这些文章卡片,例如:
.post-item {border: 1px solid #ccc;padding: 15px;margin-bottom: 10px;border-radius: 5px;
}
.post-item h2 {font-size: 18px;color: #333;
}
自定义开发的灵活性最高,但也需要你具备一定的PHP和CSS能力,适合有一定开发基础的用户。
四、适用场景
1. 内置函数
- 适用场景:需要在页面中动态展示分类文章,但不想使用插件,或需要在模板中嵌入代码。
- 适用用户:略懂PHP的用户、主题开发者、需要高度控制展示逻辑的站长。
2. 插件工具
- 适用场景:希望快速展示分类文章,无需代码,适合非技术用户。
- 适用用户:不懂代码的站长、需要快速搭建页面的用户、希望节省时间的用户。
3. 主题内置模块
- 适用场景:使用支持分类展示功能的主题,希望在页面中直接拖拽模块展示文章。
- 适用用户:使用特定主题的用户、希望快速搭建页面的用户。
4. 自定义开发
- 适用场景:需要高度定制化的文章展示,如分页、筛选、搜索、多条件排序等。
- 适用用户:开发者、有前端和后端开发能力的用户、需要深度优化页面的站长。
五、选型建议
| 用户类型 | 推荐方案 | 推荐理由 |
|---|---|---|
| 非程序员用户 | 插件工具 | 零代码,操作简单,适合快速搭建 |
| 略懂PHP的用户 | 内置函数 | 灵活性高,可嵌入页面或模板中 |
| 使用特定主题的用户 | 主题内置模块 | 可直接拖拽使用,无需额外配置 |
| 开发者或定制需求用户 | 自定义开发 | 灵活性和可定制性最高,适合高级用户 |
如果你是非程序员,推荐使用插件工具,如“Category Posts Widget”或“WP Show Posts”,它们都是经过实际项目验证的插件,稳定性高,且支持Cloudflare 文档中提到的CDN加速与缓存策略,可以提升网站加载速度和SEO表现。
如果你是开发者或有定制需求的站长,建议使用内置函数或自定义开发,这样你可以完全控制展示逻辑,并且可以结合SEO优化策略,如添加关键词、优化标题结构等,进一步提升网站排名。