这是一个最基本的主题源码(不适用于FSE站点开发),适用于开发海外Wordpress网站应用,可在此基础上编写下一步样式,开发功能等。
本主题主要是禁用了不必要的功能以提高网站安全性及性能,使用前请了解本主题做了什么。

下载地址:

https://10.1pxeye.com/libs/wp-themes/ope25.zip

(压缩包中包含主题及.htaccess文件)

主要代码在主题里的inc文件夹中,解释如下:

const.php
  1. 标识当前环境是否为开发环境(ENV_IS_DEV)。
  2. 定义站点主页 URL(HOME)和主题目录 URL(TU),方便在代码中使用。
  3. 控制 REST API 的可用性(REST_API_USABILITY)。
  4. 根据环境(开发或生产)动态设置是否允许编辑文件(DISALLOW_FILE_EDIT)和修改文件(DISALLOW_FILE_MODS),以增强安全性。
dev.php
  1. 检测当前环境是否为开发环境。
  2. 在页面底部输出 JavaScript 代码,检查页面是否缺少重要的ogp元标签,meta description或google脚本。
  3. 根据环境类型(开发或生产),在控制台中输出警告或错误信息。
disabled.php
  1. 禁用自动更新
    • 禁用核心、插件和主题的自动更新。
  2. 移除 WordPress 版本生成器
    • 隐藏 WordPress 版本号。
  3. 禁用管理员邮箱检查
    • 停止定期检查管理员邮箱。
  4. 禁用应用密码功能
    • 禁用 WordPress 5.6 引入的应用密码功能。
  5. 禁用 404 猜测重定向
    • 停止 WordPress 对 404 页面的猜测重定向。
  6. 禁用站点地图
    • 禁用 WordPress 5.5 引入的站点地图功能。
  7. 禁用登录页面语言选择
    • 移除登录页面的语言选择下拉框。
  8. 清理 <head> 中的多余标签
    • 移除 RSD、WLW Manifest、短链接、Feed 链接、REST API 链接、资源提示、Emoji 脚本等。
  9. 禁用 XML-RPC
    • 完全禁用 XML-RPC 功能。
  10. 移除评论功能
    • 移除后台评论菜单、文章和页面的评论支持、评论元框、仪表盘评论小工具。
  11. 移除仪表盘小工具
    • 移除仪表盘中的多个默认小工具(如活动、快速发布、站点健康等)。
  12. 禁用密码重置功能
    • 对非管理员用户禁用密码重置功能,并移除相关文本。
  13. 禁用 Pingbacks
    • 移除 XML-RPC 中的 Pingback 相关方法。
  14. 禁用 Gravatar 头像
    • 移除 Gravatar 头像功能。
  15. 禁用 Dashicons 图标
    • 对非管理员用户禁用 Dashicons 图标加载。
  16. 禁用 RSS 订阅功能
    • 完全禁用 RSS 订阅功能,并显示禁用提示。
disable-rest-api.php
  1. 定义 REST API 默认 IP 白名单
    • 默认允许 127.0.0.1 和 ::1(本地回环地址)访问 REST API。
  2. 完全禁用 REST API
    • 如果 REST_API_USABILITY 常量为 false,则完全禁用 REST API。
  3. 禁用 REST API 用户枚举
    • 如果 REST_API_USABILITY 常量为 true,则禁用 REST API 中的用户枚举功能。
  4. REST API 访问控制
    • 检查用户是否已登录且为管理员。
    • 检查远程 IP 是否在白名单中。
    • 如果未登录且 IP 不在白名单中,则阻止访问特定 REST API 端点(如 usersposts 等)。
    • 如果 REST API 被完全禁用,则返回 404 错误。
  5. 返回错误响应
    • 如果访问被阻止,返回 404 错误或指定的 HTTP 错误码,并终止脚本执行。
enqueue.php
  1. 移除不必要的样式文件
    • 在首页、分类页和前端页面中,移除以下样式文件:
      • wp-block-library(Gutenberg 编辑器样式)
      • wp-block-library-theme(Gutenberg 主题样式)
      • wc-block-style(WooCommerce 块样式)
      • global-styles(全局样式)
      • classic-theme-styles(经典主题样式)
  2. 重新注册并加载自定义 jQuery
    • 如果不是后台页面,则移除默认的 jQuery,并加载主题目录下的自定义 jQuery 文件(/assets/js/jquery.js)。
  3. 加载主题的主样式和脚本
    • 加载主题的主样式文件(/assets/css/style.css),并使用 crc32(date("YmdH")) 生成版本号,确保每小时更新缓存。
    • 加载主题的主脚本文件(/assets/js/script.js),依赖 jQuery,并放置在页面底部加载。
optimize.php
  1. 优化归档页面标题显示。
  2. 设置文章摘要长度并添加“阅读更多”链接。
  3. 根据分类层级加载自定义模板。
  4. 检查文章是否属于某个分类的子分类。
  5. 清理上传文件的文件名。
  6. 移除前端样式和脚本的冗余 type 属性。
support.php
  1. 自动管理标题标签。
  2. 启用文章缩略图功能。
  3. 支持 HTML5 的画廊和图片标题

.htaccess文件代码解释:

设置默认字符集
定义 MIME 类型
启用缓存控制
增强安全性
移除不必要的 HTTP 头
启用压缩