WP DEVELOP

EP121. “额外挑战:让首页 Slideshow 可后台编辑”

首页 WordPress 开发课程 SLIDESHOW(旧版参考) · EP121
约 5 分钟· #EP121#SLIDESHOW(旧版参考)
🔒 登录后可标记已读

📌 并入 EP120 的提醒:这一讲的做法(把首页 Slideshow 改成可后台编辑)在 2024 年的现代 WordPress 主题开发里,作者会改用「自定义 Block 类型」来实现(本课程后面「Block Themes & Full Site Editing」章节会真正动手做一遍)。这一讲只作为历史参考保留,可以选择跳过直接进入 Block Theme 章节。

这一讲开始进入「额外挑战(Extra Credit)」环节:作者不再手把手带做,只给出挑战描述和两种可选思路,让学习者自己动手实现。第一个挑战是:目前首页的 Slideshow 是写死在 front-page.php 模板里的静态内容,只有会写代码的人才能改文字/图片/链接,目标是让非技术人员也能在后台直接编辑 Slideshow 的内容。


涉及文件

无——本讲是挑战题目 + 思路提示,不提供具体代码实现,需要自己动手完成。


代码实现

本讲不提供具体代码,只给出两种实现思路:

思路一:新建自定义文章类型

  • 新建一个类似 homepage-slide 的自定义文章类型,会出现在后台侧边栏
  • 给它配 ACF 字段:Slide Title、Slide Subtitle、Slide Link Text、Slide Link Value、Slide Photograph
  • 每一篇文章代表一张幻灯片:有 3 篇文章就是 3 张幻灯片,想加第 4、5 张就再新建文章——数量完全灵活,不受限制
  • 优点:免费版 Advanced Custom Fields 就能实现,不需要额外付费插件

思路二:在首页这个 Page 上直接加固定数量的字段组

  • 在首页(Page)上用 ACF 设置只在这个页面显示的字段组,类似课程前面「Page Banner」字段的做法
  • 缺点:如果用普通字段,幻灯片数量是固定的(比如预先设 5 组「Slide Image 1~5」),没法灵活增减
  • 如果想要「数量不固定、可以自由加减」的效果,需要用付费的 Advanced Custom Fields Pro 版本里的两个功能:
    • Repeater Field(重复字段):把一组字段(比如标题+图片)打包成可以无限复制的单元,后台会出现「+」按钮,点一下就能加一组新的字段填写
    • Flexible Content Field(灵活内容字段):更进阶的功能,允许开发者预先定义好几种「内容区块类型」(比如两栏布局、三栏布局、Slideshow、数据表格),编辑者在后台通过「Add Row」按钮自由选择要用哪种区块、按什么顺序排列,每种区块具体输出什么 HTML 由开发者控制——作者认为这是他见过 WordPress 里最强大灵活的功能,甚至认为这是 WordPress 相比 Drupal、Joomla、Craft CMS 等其他 CMS 的杀手级优势

ACF Pro 的价格参考(作者录制当时):个人版约 25 澳元(不到 20 美元),可以用在多个网站上,但只有 1 个网站能享受自动更新——声明作者跟这个插件没有任何利益关系,纯粹是个人长期实践中的真实推荐。


常见坑

无——本讲是开放式挑战题目,原文没有给出具体实现步骤,也就没有可供记录的「踩坑点」。


Sources

Udemy:

  • Become a WordPress Developer: Unlocking Power With Code — Section 22, EP121(含 EP120 提醒并入)