WordPress Twenty Sixteen Search Widget Slider

Twenty Sixteen Search Widget Slider

I really like WordPress’ Twenty Sixteen default theme. It’s clean, well-designed, and versatile. With a child theme based on Twenty Sixteen, customizations are easily accomplished. I’ve used it as the basis for several sites. There is one thing I like to change.

Most sites need a Search widget. The logical place to put a Search widget on a Twenty Sixteen site is at the top of the Sidebar widget position. However, on mobile devices, all the widgets in the Sidebar position, including the Search widget, are inconveniently moved below the main content. That’s actually a good thing for a blog; it’s best to have the freshest content up top. It’s not so good for a site whose visitors rely heavily on search results to navigate the site.

Continue reading “WordPress Twenty Sixteen Search Widget Slider”

Send a Notification Email When a Woocommerce Customer Changes Their Address

Envelope

I have a client who runs a subscription-based business on a WordPress site using Woocommerce. Since some of his subscriptions last a year or more, increasing the likelihood that a customer’s address might change, he wanted to be notified by email if the customer used the Woocommerce change-of-address form.

While it’s possible to add a custom email notification class so that the email notification will show up in Woocommerce -> Settings -> Emails, I really just needed something simple, and didn’t mind that the recipient email address would be hard-coded. I came up with the following code snippet, which does the trick in WordPress 4.6 and Woocommerce 2.6.4.

Continue reading “Send a Notification Email When a Woocommerce Customer Changes Their Address”

Undefined Index: SCRIPT_NAME

Which PHP

A WordPress plugin on one of my client’s sites was filling up the error log with a PHP error “undefined index” for the server variable SCRIPT_NAME. The error persisted through a number of plugin updates. I found that I could work around it by editing the plugin’s code and substituting the server variable PHP_SELF instead of SCRIPT_NAME, but it was a hassle to modify the code for the plugin every time there was an update, and I wanted to find a permanent fix.

Continue reading “Undefined Index: SCRIPT_NAME”

This Is Somewhat Embarrassing, Isn’t It?

Title Variable

It was not only embarrassing; it was puzzling.

I was contacted by a client whose site was returning the dreaded WordPress “this is somewhat embarrassing, isn’t it?” 404 not found error message whenever he tried to access some of his pages. The affected pages all included custom variables in the URL following pretty permalinks based on the post name.

Continue reading “This Is Somewhat Embarrassing, Isn’t It?”

Turn Off Pesky Order Notes for Woocommerce Order/Customer CSV Export

Cash Register

One of my clients uses the plugin Woocommerce Order/Customer CSV Export to export his customers’ orders into a spreadsheet for managing a mailing list. The other day, he emailed me to tell me that instead of being prompted to download the CSV when he clicked the “Export” button, he was getting a nasty screen-full of text.

It took a while to troubleshoot, but it turned out the problem was caused by the 34,000+ records that CSV Export had inserted into the WordPress comments and commentmeta tables. Each time the client was clicking that “Export” button, a new record was added to each table for each exported order, and as the number of orders added up, the records were increasing proportionally. Not only was it causing serious database-bloat, but it was also cluttering up the Order Notes box for each order with “Order exported to CSV and successfully downloaded” notes that the client neither wanted or needed.

Continue reading “Turn Off Pesky Order Notes for Woocommerce Order/Customer CSV Export”