To illustrate how this week went: at lunch time on Wednesday I finally finished my breakfast and then ate my lunch. The morning was spent working on Qpractice (more on that later), switching between phone calls with hosts to slack calls with the client, and working with other experienced WordPress developers to try and figure out the issue. What I really was hoping to do on Wednesday was give all my attention to Laracon Online. I’ve attended all of the past Laracon Onlines and try to treat them like a real conference I would go to, but I didn’t know I would be so busy in March when I bought the ticket two months ago. I ended up only having the opportunity to watch two of the talks (Jason McCreary and Steve Schoger), but I plan on watching the other videos when I get a chance soon.
The big project™
This week, I got to be a part of the scrum meeting and another meeting about our Gutenberg strategy for the project. I also finished up the Google Places ID lookup tool and improved the user interface, so the process requires less saving and fewer steps to update the Google Places data into post meta. Later in the week, I dove into Gutenberg and created a new button in the editing toolbar of Gutenberg rich editor blocks.
On an ecommerce site like Qpractice there are dozens of different actions that happen in the background on a regular basis. Actions like cancelling someones subscription when their trial expires, renewing subscriptions automatically, and communicating with external reporting tools. It turns out that hundreds of recurring orders that should have been charged in February had still not been charged. At first I thought it may have been because some of the actions were bugged and causing the queue to get stuck, but I eventually figured out that the web hosts cron tool seemed to be not actually triggering our actions to run. The owner of Qpractice manually spent some time running the queued actions to get some orders flowing again, while we looked into it some more.
It took a lot of working with the hosts support team to get to the bottom of it, but they were hitting an HTTP cron url instead of the HTTPS url. When the HTTP url is pinged WordPress responds with a redirect response, and the hosts tool was not set up to follow the redirect to its destination. The hosting company was able to deduce that their script was not correctly detecting that the site had an SSL certificate for the www subdomain. After they explicitly indicated that the www subdomain was also covered by the SSL certificate, their cron tool hit the right url, and our WordPress scheduled events were no longer piling up.
The weeks never go as planned, but I was able to solve a big issue for Qpractice while balancing the work for other clients. Next week I am going to be jumping into React and the Gutenberg editor, which could be a lot of fun.