0

0

如何在 WordPress 文章列表中显示分类名称与发布日期

碧海醫心

碧海醫心

发布时间:2026-02-07 12:52:25

|

422人浏览过

|

来源于php中文网

原创

如何在 WordPress 文章列表中显示分类名称与发布日期

本文详解如何修改 wordpress 自定义短代码函数,在文章缩略图和标题之外,正确显示每篇文章的发布日期和所属分类,同时提供结构化 html 输出与安全渲染建议。

在 WordPress 主题或插件开发中,常需通过自定义查询展示特定分类下的文章列表(如“旅行”类文章)。原始代码已实现基础功能——输出带缩略图和标题的链接列表,但缺少关键元信息:发布日期所属分类。以下为优化后的完整解决方案,兼顾功能性、可读性与安全性。

✅ 正确获取并显示日期与分类

WordPress 提供了两个核心函数:

  • get_the_date():返回当前文章的发布日期(支持格式参数,如 get_the_date('Y-m-d'));
  • get_the_category():返回当前文章所有分类对象数组,需进一步处理为可读文本。

原答案中的逻辑存在两处关键问题需修正:

  1. $post_id 未定义:在循环内应使用 get_the_ID() 或直接省略(因 get_the_post_thumbnail() 在主循环中默认作用于当前全局 $post);
  2. else 分支位置错误:原代码将 “No Posts Found” 放在 while 循环外但 if ( have_posts() ) 的 else 内,导致无结果时仍会闭合
      ,但实际应置于 if 的 else 块中,确保 HTML 结构完整。

以下是修复并增强后的专业级代码:

WOMBO
WOMBO

使用AI创作美丽的艺术品

下载
function wpb_postsbycategory() {
    // 查询旅行分类下最多5篇文章
    $the_query = new WP_Query( array(
        'category_name' => 'travel',
        'posts_per_page' => 5,
        'post_status'    => 'publish' // 明确限定状态,避免草稿干扰
    ) );

    $string = ''; // 初始化字符串,避免未定义警告

    if ( $the_query->have_posts() ) {
        $string .= '';
    } else {
        $string .= '

暂无旅行相关文章。

'; } // 重置主查询数据,防止影响后续模板逻辑 wp_reset_postdata(); return $string; } add_shortcode( 'categoryposts', 'wpb_postsbycategory' );

? 安全与最佳实践要点

  • URL 转义:使用 esc_url() 包裹所有链接地址,防止 XSS;
  • HTML 内容过滤:esc_html() 确保标题、日期等纯文本不执行 HTML;
  • 分类链接可点击:为每个分类生成真实链接,提升用户体验与 SEO;
  • 语义化标签:用
  • 空值判断:检查 $categories 是否为空,避免输出冗余逗号;
  • 显式 post_status:排除草稿/私密文章,保障内容可靠性。

? 使用方式

在任意文章、页面或小工具中插入短代码:

[categoryposts]

即可渲染带日期与分类的旅行文章列表。如需切换分类,可扩展为带参数的短代码(如 [categoryposts cat="tech"]),进一步提升复用性。

通过以上改造,您的文章列表不仅信息更完整,也更健壮、安全、易于维护。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

798

2023.08.22

while的用法
while的用法

while的用法是“while 条件: 代码块”,条件是一个表达式,当条件为真时,执行代码块,然后再次判断条件是否为真,如果为真则继续执行代码块,直到条件为假为止。本专题为大家提供while相关的文章、下载、课程内容,供大家免费下载体验。

98

2023.09.25

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

536

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

17

2025.12.06

wordpress seo
wordpress seo

WordPress网站SEO优化方法有:1、选择一个SEO友好的主题,具有清晰的代码结构,快速的加载速度和响应式设计;2、使用SEO插件,优化你的标题标签,元描述,关键字,XML站点地图等;3、优化你的内容,内容是SEO优化的核心;4、优化你的网站速度;5、创建友好的URL;6、使用内部链接;7、优化图像;8、使用社交媒体;9、定期更新你的网站;10、监控和分析你的网站等等。

425

2023.09.18

wordpress下载后怎么安装
wordpress下载后怎么安装

安装前准备:确保服务器满足要求、获取安装文件、创建数据库。上传 wordpress 文件。创建数据库和用户。运行安装程序:选择语言、输入数据库信息、网站标题和管理员信息。安装 wordpress。安装后配置:设置永久链接、安装主题、安装插件、创建内容。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

322

2024.04.15

seo页面描述
seo页面描述

一个好的SEO页面描述应该包含关键词、简明扼要地概括网页的主题和内容、具有吸引力、与网页内容相符,并且是独特的。它不仅可以帮助搜索引擎了解网页的内容,还可以吸引用户点击进入网页。因此,编写一个优秀的SEO页面描述对于网页的排名和点击率都非常重要。

215

2023.08.31

wordpress seo
wordpress seo

WordPress网站SEO优化方法有:1、选择一个SEO友好的主题,具有清晰的代码结构,快速的加载速度和响应式设计;2、使用SEO插件,优化你的标题标签,元描述,关键字,XML站点地图等;3、优化你的内容,内容是SEO优化的核心;4、优化你的网站速度;5、创建友好的URL;6、使用内部链接;7、优化图像;8、使用社交媒体;9、定期更新你的网站;10、监控和分析你的网站等等。

425

2023.09.18

Golang处理数据库错误教程合集
Golang处理数据库错误教程合集

本专题整合了Golang数据库错误处理方法、技巧、管理策略相关内容,阅读专题下面的文章了解更多详细内容。

2

2026.02.06

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.8万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.2万人学习

CSS教程
CSS教程

共754课时 | 28.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号