johnbillion / wp-crontrol
控制您的WordPress网站上的cron事件
Requires
- php: >=7.4
- composer/installers: ^1.0 || ^2.0
Requires (Dev)
- codeception/module-asserts: ^1.0
- codeception/module-db: ^1.0
- codeception/module-webdriver: ^1.0
- codeception/util-universalframework: ^1.0
- dealerdirect/phpcodesniffer-composer-installer: ^0.7.0
- johnbillion/plugin-infrastructure: dev-trunk
- lucatume/wp-browser: 3.2.1
- phpcompatibility/phpcompatibility-wp: 2.1.4
- phpstan/phpstan: ^1.7
- roots/wordpress-core-installer: 1.100.0
- roots/wordpress-full: *
- szepeviktor/phpstan-wordpress: 1.3.4
- wp-coding-standards/wpcs: 2.3.0
- dev-develop
- 1.17.0
- 1.16.3
- 1.16.2
- 1.16.1
- 1.16.0
- 1.15.3
- 1.15.2
- 1.15.1
- 1.15.0
- 1.14.0
- 1.13.2
- 1.13.1
- 1.13.0
- 1.12.1
- 1.12.0
- 1.11.0
- 1.10.0
- 1.9.1
- 1.9.0
- 1.8.5
- 1.8.4
- 1.8.3
- 1.8.2
- 1.8.1
- 1.8.0
- 1.7.1
- 1.7.0
- 1.6.2
- 1.6.1
- 1.6
- 1.5.0
- 1.4
- 1.3.1
- 1.3
- 1.2.3
- dev-update-plugin-infrastructure/johnbillion/plugin-infrastructure/stable-stubs
- dev-wp-compat
- dev-update-plugin-infrastructure/johnbillion/plugin-infrastructure/actions-sast
- dev-update-plugin-infrastructure-to-actions-sast
- dev-release-1.17.0
- dev-master
- dev-release
- dev-release-1.16.3
This package is auto-updated.
Last update: 2024-09-07 20:11:05 UTC
README
贡献者: johnbillion, scompt
标签: cron, wp-cron, crontrol, debug, woocommerce
测试到: 6.6
稳定标签: 1.17.0
捐赠链接: https://github.com/sponsors/johnbillion
WP Crontrol可以让您控制WordPress网站或WooCommerce店铺上的定时cron事件。
描述
WP Crontrol可以让您控制WordPress网站或WooCommerce店铺上的定时cron事件。在管理员界面中,您可以:
- 查看所有定时cron事件及其参数、计划、回调函数以及下次到期时间。
- 编辑、删除、暂停、恢复和立即运行cron事件。
- 添加新的cron事件。
- 批量删除cron事件。
- 添加和删除自定义cron计划。
- 将cron事件列表导出为CSV文件。
WP Crontrol能够识别时区,会提醒您没有操作或错过计划的事件,如果在cron系统中检测到任何问题,会显示有用的警告消息。
用法
- 前往
工具 → Cron事件
菜单来管理cron事件。 - 前往
设置 → Cron计划
菜单来管理cron计划。
其他插件
我维护了几个其他针对开发者的插件。查看它们
- Query Monitor 是WordPress的开发者工具面板。
- User Switching 提供在WordPress中即时切换用户账户的功能。
隐私声明
WP Crontrol默认是私有的,并将始终如此。它不会向任何第三方发送数据,也不包含任何第三方资源。有关WP Crontrol的完整隐私声明,请参阅此处。
无障碍性声明
WP Crontrol旨在对所有用户都完全无障碍。有关WP Crontrol的完整无障碍性声明,请参阅此处。
常见问题解答
此插件与PHP 8兼容吗?
是的,它目前正在积极测试并支持PHP 8.3。
我收到错误 "在您的网站上调用WP-Cron系统时出现问题"。我该如何修复它?
您可以在WP Crontrol网站上阅读有关在WordPress上调用WP-Cron的所有问题.
为什么有些cron事件会错过其计划?
您可以在WP Crontrol网站上阅读有关错过计划的cron事件的所有信息.
为什么有些cron事件在我删除它们后不久又出现了?
如果事件是由插件添加的,那么插件很可能在看到事件丢失后立即重新安排了事件。为了解决这个问题,您可以使用“暂停此钩子”操作,这意味着它会保持原位,但在运行时不会执行任何操作。
删除cron事件是否安全?
这完全取决于事件。您可以使用您最喜欢的搜索引擎搜索事件名称,以找出它属于哪个插件,然后决定是否删除它。
如果事件显示“无”作为其操作,那么通常可以安全删除。请参阅其他常见问题解答以获取有关无操作事件的更多信息。
为什么我无法删除一些cron事件?
WordPress核心软件使用cron事件来执行其一些功能,因此无法删除这些事件,因为如果您删除了它们,WordPress会立即重新安排它们。因此,WP Crontrol最初就不允许您从WordPress核心中删除这些持久事件。
如果您不想运行这些事件,可以使用“暂停此钩子”操作代替。
暂停事件时会发生什么?
暂停事件将禁用附加到事件钩子的所有操作。事件本身将保留在原位,并按其计划运行,但所有附加到其钩子的操作将被禁用。这使得事件无效,但保持了其计划,以便与当事件缺失时自动重新安排的任何事件保持完全兼容。
由于暂停事件实际上暂停了其钩子,因此在暂停和恢复事件时,使用相同钩子的所有事件都将被暂停或恢复。这比分别暂停单个事件更有用和可靠。
恢复事件时会发生什么?
恢复事件将重新启用附加到事件钩子的所有操作。使用相同钩子的所有事件都将恢复。
当cron事件的“操作”显示“无”时意味着什么?
这意味着cron事件已安排在指定的时间运行,但事件运行时没有相应的功能将被触发,因此事件是无用的。
这通常是由在您停用它们时未清理其cron事件的插件引起的。您可以使用您喜欢的搜索引擎搜索事件名称,以找出它属于哪个插件,然后决定是否删除它。
我如何更改cron事件的下一次运行时间或计划?
您可以通过单击事件旁边的“编辑”链接来更改cron事件的时间和计划。
我如何创建一个请求URL的cron事件?
从“工具→cron事件”菜单,单击“添加新cron事件”。选择“URL cron事件”选项,填写详细信息,然后按“添加事件”按钮。
您可以在WP Crontrol网站上阅读有关URL cron事件的功能和安全的所有信息.
为什么我对某些cron事件所做的更改无法保存?
您可以在WP Crontrol网站上阅读有关编辑cron事件问题的所有信息.
我可以导出cron事件列表吗?
是的,可以通过cron事件列表屏幕上的“导出”按钮导出事件列表的CSV文件。此文件可以在任何电子表格应用程序中打开。
我可以看到我网站上运行的 所有cron事件的 历史记录吗?
目前还不能,但我希望很快添加此功能。
我可以看到cron事件和计划的编辑、添加和删除的历史记录吗?
是的。出色的Simple History插件内置了对通过WP Crontrol执行的操作的记录支持。
添加新的cron计划有什么用?
Cron计划由WordPress和插件用于安排定期执行的事件。间隔必须由WordPress核心或插件提供才能使用。例如,许多备份插件提供定期备份的支持。为了进行每周备份,必须首先在WP Crontrol中输入每周cron计划,然后备份插件可以利用它作为间隔。
我如何创建一个新的cron事件?
要设置一个定期执行的cron事件,分为两个步骤。第一步是告诉WordPress关于钩子的信息。这是WP Crontrol被创建来提供的部分。第二步是在钩子执行时调用一个函数。
第一步:添加事件
从“工具 → Cron事件”菜单中,点击“添加新cron事件”。填写事件的详细信息。最好使用符合正常PHP变量命名约定的钩子名称。计划是事件执行的频率。如果您看不到合适的时间间隔,则可以在“设置 → Cron计划”菜单中添加一个。
第二步:编写函数
这部分代码在PHP代码中(例如,在主题的functions.php
文件中)。为了执行钩子,WordPress运行一个动作。因此,我们需要告诉WordPress在运行此动作时执行哪个函数。以下行完成了这个任务
add_action( 'my_hookname', 'my_function' );
下一步是编写您的函数。这里有一个简单的例子
function my_function() { wp_mail( '[email protected]', 'WP Crontrol', 'WP Crontrol rocks!' ); }
如何创建一个新的PHP cron事件?
从“工具 → Cron事件”菜单中,点击“添加新cron事件”。选择“PHP cron事件”选项,输入计划和下一次运行时间。事件计划是您的事件将执行的频率。如果您看不到合适的时间间隔,则可以在“设置 → Cron计划”菜单中添加一个。在“PHP代码”区域中,输入在您的cron事件执行时应该运行的PHP代码。您不需要提供PHP开头标记(<?php
)。
创建、编辑和运行PHP cron事件受严格的安全权限限制。您可以在WP Crontrol网站上了解有关PHP cron事件的所有功能和安全信息。
哪些用户可以管理cron事件和计划?
只有具有manage_options
权限的用户可以管理cron事件和计划。默认情况下,只有管理员具有此权限。
哪些用户可以管理PHP cron事件?这是否危险?
只有具有edit_files
权限的用户可以管理PHP cron事件。这意味着如果用户无法通过WordPress管理区域(即通过插件编辑器或主题编辑器)编辑文件,那么他们也无法在WP Crontrol中添加、编辑或删除PHP cron事件。默认情况下,只有管理员具有此权限,并且启用多站点时,只有超级管理员具有此权限。
如果已通过DISALLOW_FILE_MODS
或DISALLOW_FILE_EDIT
配置常量禁用文件编辑,则没有任何用户将具有edit_files
权限,这意味着将不允许添加、编辑或删除PHP cron事件。
因此,激活WP Crontrol后,执行任意PHP代码所需的用户访问级别不会改变。
您可以在WP Crontrol网站上了解有关PHP cron事件的所有功能和安全信息.
是否有可用的WP-CLI命令?
之前包含在WP Crontrol中的cron命令现在已成为WP-CLI本身的一部分。有关更多信息,请参阅wp help cron
。
停用WP Crontrol插件会发生什么?
您可以在WP Crontrol网站上了解有关停用插件时会发生什么的详细信息.
我如何报告安全漏洞?
您可以通过官方WP Crontrol漏洞披露计划在Patchstack上报告安全漏洞。Patchstack团队帮助验证、分类和处理任何安全漏洞。
插件标题图像中的照片是谁拍摄的?
照片由Michael Pardo拍摄,属于公有领域。