ideasonpurpose / wp-theme-init
WordPress 主题中使用的重复函数、过滤器和操作的通用基线。
Requires (Dev)
- ideasonpurpose/wp-test-stubs: dev-main@dev
- php-stubs/acf-pro-stubs: dev-master
- php-stubs/wordpress-stubs: ^6
- phpunit/phpunit: ^10
- dev-master
- v2.14.4
- v2.14.3
- v2.14.2
- 2.14.1
- v2.14.0
- v2.13.2
- v2.13.1
- v2.13.0
- v2.12.0
- v2.11.1
- v2.11.0
- v2.10.1
- v2.10.0
- v2.9.1
- v2.9.0
- v2.8.1
- v2.8.0
- v2.7.3
- v2.7.2
- v2.7.1
- v2.7.0
- v2.6.1
- v2.6.0
- v2.5.5
- v2.5.4
- v2.5.3
- v2.5.2
- v2.5.1
- v2.5.0
- v2.4.2
- 2.4.1
- 2.4.0
- 2.3.1
- 2.3.0
- 2.2.1
- v2.2.0
- v2.0.2
- v1.7.1
- v1.7.0
- v1.5.0
- dev-namespace
This package is auto-updated.
Last update: 2024-09-23 21:09:36 UTC
README
版本:2.14.4
WordPress 主题中使用的重复函数、过滤器和操作的通用基线。
包含的部分内容
-
Webpack 依赖项清单资源加载
使用来自 ideasonpurpose/docker-build 的 Dependency Manifest Plugin。脚本将使用样式表的 "slug" 与其入口点名称结合进行排队。
例如,如果主题目录为
ldco,以下清单条目将排队为ldco-main{ "main": { "files": { "main.js": "/wp-content/themes/ldco/dist/main-b4216f6b.js" } } }编辑器资源将使用适当的钩子进行排队;对于脚本,使用
enqueue_block_editor_assets;对于样式,使用enqueue_block_assets。所有脚本都通过向包含的脚本标签添加type="module"作为 ESM 进行排队。 -
其他修复和清理
- 向 WordPress 控制台添加设计信用。
- 从管理菜单栏中删除 "你好"。
- 从 wp_head 中删除了大量垃圾。许多优化来自 Soil 插件。
- WordPress 将尝试从
save_post钩子触发 webpack devServer 重新加载。 - 覆盖
DISALLOW_FILE_EDIT常量并阻止对 主题文件编辑器 的访问。
-
显示包含 当
WP_DEBUG为 true 时,将在页面中附加显示所有包含的主题文件的 div。要禁用它,请使用包含以下内容的数组初始化类:['showIncludes' => false] -
模板审计
向页面管理中添加模板列,并在外观菜单中添加一个摘要表,显示哪些模板已分配给页面。 -
记录用户最后登录时间 记录用户的最后成功登录并添加到 WordPress 管理员用户表中。
-
重置元框顺序和可见性 向用户配置文件底部添加按钮,将重置用户_meta 中的所有元框顺序和可见性。
-
启用和限制 WP_POST_REVISIONS 修订版设置为 6,这覆盖了 wp-config.php 中设置的任何常量。
-
全局禁用评论 完全禁用评论和引用。要重新启用评论,请使用包含以下内容的数组初始化 ThemeInit 类:
['enableComments' => true] -
删除 jQuery Migrate (可选)通过从 WordPress 依赖项列表中删除它来防止 jQuery Migrate 加载。要从删除 jquery-migrate,请使用包含以下内容的数组初始化 ThemeInit 类:
['jQueryMigrate' => false] -
管理员分隔符 管理员分隔符已移动到自己的库: wp-admin-separators
-
删除过期的登录Cookies 重复启动本地开发环境通常会导致本地主机(localhost)的Cookies中充满过期的
wordpress_logged_in条目。一旦积累过多,本地服务器最终会因为不良请求而失败,并显示错误消息"您的浏览器发送了一个此服务器无法理解的请求。请求头字段的大小超过了服务器限制。" 如果识别到这个错误,可以使用浏览器开发者工具删除Cookies。但是,这通常并不常见。相反,wp-theme-init会在wp_login钩子中删除过期的登录Cookies,从而防止问题发生。仅在设置WP_DEBUG的开发环境中运行。 -
媒体 将启用几个与媒体相关的功能。
- 在调用
ThemeInit()之前,可以通过定义一个JPEG_QUALITY常量来设置JPEG压缩值。数值将在0-100之间进行调整,然后传递给WordPressjpeg_quality过滤器。默认的JPEG_QUALITY为82。 - 将使用高质量的Lanczos缩放过滤器对图像进行缩放。
- 如果图像的文件大小可以至少减少75%,则所有图像上传都将重新压缩。
- 在调用
-
搜索 对原生WordPress搜索进行一些改进
- 短路长度小于2个字符的搜索查询
- 将查询搜索重定向到
/search/ - 解决以点开头的搜索失败问题
-
SEO框架调整 我们对优秀的The SEO Framework插件进行了几个调整
- 隐藏作者的姓名
- 将元数据框移动到管理页面的底部
- 在存档中显示第一篇帖子的默认图片
WordPress集成
依赖项清单处理旨在与WordPress 依赖提取Webpack插件一起工作。这省略了WordPress包含的一些脚本库的子集,并为每个入口点输出一个PHP片段,其中包含用于排队脚本的依赖项列表。
将被省略的WordPress脚本集列表在此列出,包括jquery、lodash、moment、react和react-dom以及所有来自@wordpress命名空间的脚本。
开发
使用npm run test运行PHPUnit测试套件
由IOP提供
![]()
此项目正在积极开发并在Ideas On Purpose的生产环境中使用。