任何问题请联系WX:uu16853

买模板送网站采集器 让你轻松放开双手运营网站!

购买更多有优惠!

如何在WordPress中禁用wp-cron并设置正确的cron作业

你有没有遇到在WordPress中无法执行计划操作的问题? WordPress有一个名为wp-cron的调度系统,但它有时会错过计划的任务,比如发布计划的帖子,发送触发的电子邮件等。由服务器的操作系统运行的正确的cron作业通常更可靠。 在本文中,我们将向您展示如何在WordPress中禁用wp-cron,并介绍设置正确cron作业的两种方法。 问题是,只有当有人访问你的网站时,WordPress才会被提示检查计划的工作。这对大多数网站来说已经足够好了,但有时它可能会给较小的网站带来问题。 例如,如果您的站点流量较低,则您计划的帖子可能不会按时发布。如果你的网站流量很大,那么wp-cron将被频繁检查,这可能会影响你的网站的性能。 现在,如果你只是想修复错过预定发布错误,那么你可以使用免费插件错过预定发布,但如果你想解决所有预定的行动问题,那么你需要一个真正的cron作业。 真正的cron作业是由您的虚拟主机服务器的操作系统运行的,而不是由WordPress运行的。您可以将其设置为更可靠地检查计划任务。默认情况下,WordPress没有权限在服务器级别进行设置,但您可以按照我们的教程轻松完成。 话虽如此,让我们来看看如何禁用wp-cron并设置正确的cron作业。以下是我们将在本教程中介绍的内容: 在WordPress中禁用wp-cron在WordPress主机上设置适当的Cron作业使用第三方服务设置适当的Cron作业 在此之后,您需要保存文件并将其上传回您的网站。 WordPress将不再在有人访问您的网站时触发wp-cron。 这将把您带到一个新页面,您可以在其中创建新的cron作业。 不要担心您将看到的关于需要良好的Linux命令知识的警告。只有一个命令是必需的,我们将在下面向您确切展示它是什么。 如果需要,您可以更改发送cron作业通知的电子邮件地址。默认地址是你注册虚拟主机时使用的地址,这在大多数网站上都可以很好地工作。 现在,让我们向下滚动到“添加新的Cron作业”部分,并设置一个Cron作业。 首先,您需要决定运行cron作业的频率。这可以是任何你喜欢的,但我们建议每隔30分钟。 您需要点击“通用设置”按钮,然后从下拉菜单中选择一个时间间隔。如果你不确定,“每小时两次”对大多数网站来说是个不错的选择。 现在您可以输入命令,要求WordPress运行其计划任务。您需要将以下代码粘贴到‘Command’字段中: WordPress现在将每30分钟检查并运行一次计划任务,而不是当有人访问你的网站时。 这将弹出‘创建Cron作业’屏幕。首先,您需要将以下URL粘贴到“要调用的URL”字段中。 在此之后,您应该从“何时执行”下拉列表中选择“每隔30分钟”。当您完成后,不要忘记点击‘创建Cron作业’按钮来存储您的设置。 新的cron作业将被添加到列表中,并每30分钟在您的网站上运行一次wp-cron。 我们希望本教程能帮助您学习如何在WordPress中禁用wp-cron并设置正确的cron作业。你可能还想看看我们的WordPress SEO逐步指南,或者看看我们的常见WordPress错误列表以及如何修复它们。 中国和中国都是如此。

WordPress WP-Cron,系统Cron 文字详细教程

CRON作业用于在您的WordPress网站上定期安排固定时间、日期或间隔的任务。WordPress cron作业的一些示例可能涉及安排要发布的帖子、检查更新或按预定义计划运行的备份插件。 在WordPress中,这是由WP-Cron处理的 ,它用于模拟系统cron。但是,根据您网站的流量,使用内置的cron处理程序实际上会开始影响您的页面加载时间。因此,今天我们将向您展示如何禁用WP-Cron ( wp-cron.php) 并改为使用系统cron以获得更快的性能。 WP-Cron的性能问题 如何禁用WP-Cron 如何调度系统Cron WP-Cron的性能问题 WordPress内置的Cron处理程序WP-Cron存在很多性能问题。首先,重要的是要了解WP-Cron不是真正的cron工作,它只是WordPress为模仿系统cron所做的工作而创建的。 WP-Cron不会连续运行。默认情况下,wp-cron.php每次加载页面时都会触发,这在高流量站点上可能会导致问题。如果一个站点没有足够的PHP workers,有时会有一个请求进来,WordPress会产生cron,但是cron必须等待worker,因此只是坐在那里。 相反的情况也是如此。如果一个网站没有很多流量,由于没有人加载页面,可能会错过时间表。 更好的方法是禁用WP-Cron并改用系统cron。这按预定义的时间表运行,甚至在官方插件手册中也有推荐 。 如何禁用WP-Cron 要禁用WP-Cron,请将以下内容添加到您的 wp-config.php文件中,就在“That’s all, stop editing! Happy blogging。” 注意:这会禁用它在页面加载时运行,而不是当您直接通过wp-cron.php. define(‘DISABLE_WP_CRON’, true); 禁用WP-Cron 如何调度系统Cron 然后,您将需要wp-cron.php从您的服务器进行安排。 如果您的站点是多站点,则您需要执行一些额外的设置步骤,以便为您的子站点运行cron作业。以下是我们可以为此推荐的一些资源: 使用WP CLI在多站点网络上运行Cron作业 在多站点实例上运行WordPress cron 对于单站点WordPress,建议您查看正确设置WordPress Cron作业以了解如何设置系统 cron。 在cPanel中创建Cron作业 如果您使用带有cPanel的主机,您还可以从其控制面板创建系统cron。注意:确保首先禁用上面的默认WP-Cron。 第1步 登录到cPanel。在高级部分中,单击Cron作业。 cPanel定时任务 第2步 在Add New Cron Job部分下,您可以从许多不同的预定义计划中进行选择,例如每小时两次或每周一次。您的托管服务提供商很可能对允许运行cron作业的频率有限制。每小时两次是共享主机的常见设置。 cPanel cron作业设置 第3步 添加以下命令。替换https://domain.com为您的域名。根据您的主机配置方式,此命令可能略有不同。然后单击“Add New Cron Job”。 […]

WordPress Cloudflare设置,WP-Cron,定时任务 文字详细教程

WordPress需要一些基本要求,例如MySQL和正确的PHP版本才能正常运行。此外,您还需要额外的设置才能使已安装的插件和主题正常工作。 WP-Cron是WordPress网站在仪表盘中获取更新和报告所需的此类要求之一。另一方面,Cloudflare是许多托管公司内置的流行的免费CDN服务。 不幸的是,如果您没有正确配置Cloudflare,它可能会停止WP-Cron作业的运行并导致不希望出现的问题。如果您遇到困难,这里是您可以尝试通过Cloudflare CDN设置以修复WP-Cron无法正常工作的问题。 更多关于WP-Cron Cron是Unix中用于调度作业以在后台完成任务的命令。在WordPress世界中,WP-Cron类似于Unix cron作业,用于以周期性间隔调度任务。与您可以在特定时间安排的系统cron作业不同,WP-Cron在每次页面加载时运行并触发预定任务。以下是一些示例,让您了解WP-Cron的作用: 更新WordPress仪表盘小工具,例如实时销售小工具。 检查处于预定状态的文章并按计划发布。 插件可以在后台运行数据库更新、缓存清除等任务。 您还可以在此处从官方WordPress页面阅读有关WP-Cron的更多详细信息。 查找WP Cron问题 当WP-Cron运行出现问题时,会直接影响定时任务的运行。您可以在仪表盘和服务器的错误日志中看到一些失败通知。下面是一个来自WP Rocket插件的例子,它使用WP-Cron来运行预定的缓存清除。如果不清除缓存,则会因大量过时的缓存内容而减慢您的网站速度。 WP Rocket Cron作业问题 您还可以使用WP Crontrol之类的插件来监控和查找站点中与cron相关的问题。一旦您发现WP-Cron存在问题,您应该检查您最近在该网站上所做的活动。如果您启用了Cloudflare或更改了CDN中的任何设置,那么这是开始故障排除的第一个地方。 在Cloudflare中检查WP Cron问题 Cloudflare的安全设置允许您阻止恶意机器人。不幸的是,这也可以阻止像WP-Cron这样的自动化活动作为误报。好的部分是您可以根据日志中的IP地址和查询字符串轻松找到它。由于WP-Cron将从您的托管服务器的IP地址运行,您可以根据您的服务器的IP检查被阻止的条目以查找更多详细信息。 如果您不知道服务器的IP地址,您可以从主机面板中找到它。或者,您可以转到Cloudflare帐户的DNS部分并找到带有@的A记录,该记录将指向您服务器的IP地址。 之后,转到“Security>Overview”部分,然后单击“Add filter”按钮。 根据与服务器IP相同的IP地址过滤日志。 在这里,您应该找到显示“ /wp-cron.php ”的“Paths”部分,如下图所示。 您还可以找到其他详细信息,例如阻止的原因,在我们的例子中是“manage defined bots”。 查找服务器IP的安全详细信息 如果您想了解更多详细信息,请在页面上向下滚动并查看活动日志部分。在这里,您可以找到为了解WP-Cron因托管规则设置和托管挑战而被阻止而采取的服务和操作。这取决于您的安全设置,您可能在其中选择了一些带有托管质询的选项。 查看服务器IP的活动日志 单击“Edit columns”按钮以添加可以显示更多详细信息的其他列。由于IP地址已经存在,请选择“Path”和“Query string”复选框。 选择路径和查询字符串 这将添加其他列并向您显示路径和查询字符串。正如您在下面的屏幕截图中所见,路径将显示为/wp-cron.php,查询字符串将显示类似?doing_wp_cron的内容。 查找路径和查询字符串详细信息 相关文章: WP Rocket –如何使用WP Rocket插件正确设置Cloudflare? W3 Total Cache –如何使用W3TC插件正确设置Cloudflare? 使用Cloudflare修复WP-Cron问题 现在很明显,Cloudflare安全设置会阻止WP-Cron在您自己的托管服务器上运行。尝试以下选项来解决问题。您可能需要检查您的WordPress仪表盘,使用插件或检查服务器的日志,如上所述,以确认WP-Cron工作正常。 1.禁用绝对自动化的机器人 免费Cloudflare帐户有一个简单的“机器人战斗模式”来阻止自动机器人。您可以转到“Security> Bots”部分并关闭此选项并检查WP-Cron是否在您的站点上运行。 在免费Cloudflare帐户中禁用Bots […]

WP Crontrol – WordPress plugin WordPress插件下载

点击下载 WP Crontrol 插件描述 WP Crontrol可让您查看和控制WP-Cron系统中发生的情况。在管理员屏幕中,您可以: 查看所有cron事件及其参数,重复发生,回调函数以及下次到期时间。编辑,删除并立即运行任何cron事件。新建计划任务事件.Bulk delete cron events.Add,edit和remove custom cron schedule。 如果您的cron系统似乎没有工作(例如,如果您的服务器无法连接到自身以触发计划的cron事件),则管理屏幕将显示警告消息。 用法 转到工具 – >用于管理cron事件的Cron Events 菜单。转到设置 – > Cron Schedules 菜单来管理cron计划。 屏幕截图 可以添加,修改,删除和执行新的cron事件。 可以添加新的cron计划,为插件开发人员安排事件时提供更多选项。 常见问题 添加新的cron计划有什么用? WordPress和插件使用Cron计划来安排定期执行的事件。间隔必须由WordPress核心或插件提供才能使用。例如,许多备份插件支持定期备份。为了进行每周备份,必须首先在WP Crontrol中输入每周cron计划,然后备份插件可以利用它作为间隔。 如何创建新的PHP cron事件? 在工具中 – >在Cron Events管理面板中,单击cron事件表下面的“添加PHP Cron事件”选项卡。在显示的表单中,输入计划和下一次在框中运行时间。活动安排是您的活动执行的频率。如果您没有看到良好的间隔,请在“设置”中添加一个 – > Cron计划管理面板。在“Hook code”区域中,输入执行cron事件时应运行的PHP代码。您不需要提供PHP开始标记(<?php )。 如何创建新的常规cron事件? 有两个步骤可以获得定期执行的正常运行的cron事件。第一步是告诉WordPress钩子。这是WP Crontrol创建的部分。第二步是在执行钩子时调用函数。 第一步:在工具中添加钩子 – > Cron Events管理面板,输入钩子的详细信息。你最好有一个符合普通PHP变量命名约定的钩子名称。事件计划是您的钩子执行的频率。如果您没有看到良好的间隔,请在“设置”中添加一个 – > Cron计划管理面板。 […]

自己动手写 WordPress 插件:使用 WP-Cron

上一节我们讲了如何利用 WordPress API 开发 WordPress 插件。这一节我们继续讲解 WordPress API,涉及的主题是 WP-Cron,就是在 WordPress 中安排任务。 如何在 WordPress 中安排任务,这是在 WordPress 2.1 中就引入的功能。本人针对这个功能翻译过一篇文章:如何在 WordPress 安排任务,建议大家在继续之前,好好阅读下那篇文章。 前面我们通过把沙发排名信息保存到数据库中,再有留言之后再进行更新,这样的操作来提高沙发插件的执行效率,今天来谈谈另外一种提高插件执行效率的方法,定时去更新沙发沙发的排名信息到数据库中来提高效率。 下面我们来讲解如何实现: 首先注释掉 sofa_comment_post 和 add_action(‘comment_post’, ‘sofa_comment_post’);。 然后添加如下代码: //创建自定义的更新沙发排名信息的事件,调用更新沙发排名信息的函数add_action(‘update_sofa_event’, ‘update_sofa’); //定义任务,调用更新沙发排名信息的事件 if (!wp_next_scheduled(‘update_sofa_event’)) { wp_schedule_event( time(), ‘hourly’, ‘update_sofa_event’ ); } //当插件被停止时候,移除更新沙发排名信息的事件 function update_sofa_deactivation(){ wp_clear_scheduled_hook(‘update_sofa_event’); } register_deactivation_hook(basename(__FILE__),’ update_sofa_deactivation’); 上面的函数注视已经非常清楚了,这里不多讲了,这里是每个小时,更新一次,如果你觉得太频繁了,可以改成每天,把 wp_schedule_event 函数中 hourly 改成 daily 即可。 至于为什么要添加插件停止事件,是因为我们使用 wp_schedule_event […]

WordPress 技巧:禁用 WP Cron

我们知道 WordPress 有个进程专门用来在指定的时间周期或者将来的某个时间点运行特定的任务,比如定时发布某篇日志。这个功能 WordPress 是通过 WP-Cron 实现的,它会在每次你的博客有人访问或者在后台工作的时候,都会去检查当前是否有任务要执行。这样可能会引起一些问题: 增加服务器加载时间,特别是网站访问用户特别多的时候。 而网站的访问用户很少或者加载了静态缓存插件,指定的任务可能又不运行。 所以最好不要让 WordPress 在后台执行 WP-Cron,而是使用服务器的真正的定时 Cron 功能来执行。 可以通过在 wp-config.php 添加下面的代码禁用 WP-Cron: /* Disable background wp-cron */ define('DISABLE_WP_CRON', true); 然后在服务器上创建真正 Cron 作业,如果你使用 Bluehost 这类使用 Cpanel 管理的主机,可以直接在 Cpanel 面板 > 高级选项 > Cron Jobs 中添加: 根据你自己博客定义作业的情况,定义执行的时间周期,比如一天2次等。然后输入下面的命令: /usr/bin/php -f /home/username/public_html/wp-cron.php >/dev/null 你需要根据自己主机的实际情况更改下上面的命令中 wp-cron.php 文件的路径。 或者直接使用服务器访问 wp-cron.php: wget http://YourDomain.com/wp-cron.php 标签:WordPress 技巧 […]

100% Secure Checkout

PayPal / MasterCard / Visa