Every time you schedule a post in WordPress for a specific time, it appears a few seconds late. I came upon this issue while working on a time sensitive website. I was trying to schedule a post to appear at a particular time – not even a second late ⌚
⏰ Delay in Scheduled Post
I also noticed that the delay in seconds was abnormal, i.e., it varied from twenty to forty seconds. I tried talking to the support of my hosting and they said that this issue is occurring due to WordPress’ Cron job system ?
So I looked at the code responsible for setting the time of a scheduled post in WordPress Core. I found out that while the date and time – hours & minutes – are taken from the user as input, the seconds are set randomly.
✔ The Solution
There is a function –
touch_time – in WordPress Core which is responsible for setting the post time of a normal as well as a scheduled post. This function is present inside
wp-admin/includes/templates.php. So I did a little testing and set the time second of my scheduled post to zero and boom 👊
My post appeared accurately at the specified time — not even a second late. So, I wrote a lightweight plugin to resolve this issue and I have made it open source so that anyone else facing the same problem can use this plugin to get rid of this issue 👌
🌐 GitHub Link: https://github.com/asharirfan/reset-post-time
Happy Blogging 🤙