Configure Postfix to send email through Gmail

When setting up a local development environment, sometimes you want to actually send real email. If you’re using WordPress, you can install a plugin to run your mail through an SMTP server. But if you’re running anything through the command line or you want to use the built-in PHP mail() function for any reason, then it’s really nice to be able to actually send mail.

Here’s a quick tutorial on how to set up Postfix to send email through your Gmail or G Suite account. I wouldn’t suggest sending a bunch of mail like this, but for the occasional needs that arise where you need to send out a few emails while working on a project, this is great.

Continue reading

Wildcard Subdomains For Local Development – 2017 Update

For years I’ve been using wildcard subdomains for local development rather than having to set up virtual hosts every time I want to spin up a new site. I was using a combination of nginx and dnsmasq to bring it all together. I’d use dnsmaq to make all calls to any subdomain on my development URL point to 127.0.0.1. I’ve been using *.lee.test as my local development domain. So, if I wanted to spin up a new WordPress site for a new project I’d use the domain project-name.lee.test. Then I’d set nginx to use the subdomain as the web root directory for the project. So, I’d have a directory like /home/lee/sites/project-name.

This was all great until Ubuntu 16.10 came around and stopped using dnsmaq in favor of systemd-resolved. The dnsmasq packages are still available for Ubuntu 16.10, 17.04, and 17.10, but I really don’t want to have both dnsmaq AND systemd-resolver running at the same time. I also don’t want to replace systemd-resolver with dnsmasq. So… I have modified my workflow a bit with this bash script that writes domains directly to /etc/hosts. So, here’s how I do things now.

Continue reading

How To Record Your Screen And Webcam At The Same Time On Ubuntu

There are plenty of screen recording options for Ubuntu. I use Simple Screen Recorder, but there are many others. But none of them have a built-in way of getting a little window that shows you (like from your webcam) in the video. Sometimes this is called the “picture in picture” effect. The good news is, it’s pretty easy to do once you know the trick – and the trick is MPlayer. Here’s how it works.

Continue reading

How To Record Phone Calls With Audacity on Ubuntu

I’ve seen several tutorials on how to record phone calls with Audacity, but they all seem to be for using Audacity on Windows or Mac. So, here’s how you do it on Ubuntu. I’m using Ubuntu 16.04. It’s not all that hard once you see how it works. The complicating factor is that you want to record BOTH your mic AND your system audio at the same time. I’m going to show you how to use Google Hangouts to make a phone call and record the audio. Here’s how it works.

Continue reading

How To Launch Google Apps With Keyboard Shortcuts

Chrome AppsOne of the things I really like about using Chrome on Linux is the ability to turn any website into a Desktop-ish App. It’s technically still a web app, but it opens in its own window without a location bar or any of the other decorations you normally see in a web browser. So it looks like a desktop app. I’ve done this with a bunch of different sites including Gmail, Simplenote, Toggl, YNAB, and LastPass. Then, anytime I want to sling out an email, take a note, start tracking my time on a job, etc. It’s all just a keyboard shortcut away. The apps get their own icon too so you can find them easily when you Alt + Tab through your open apps. Here’s how it works.

Continue reading

Foothills WordPress Meetup Group

WordPressThank you, Lou Anne McKeefery and Foothills WordPress Meetup Group,  for the opportunity to present about WordPress ecommerce! You guys had great questions and I’m looking forward to sharing with you all again next month.

We started off going over when you should look for a WordPress ecommerce theme and when it might be a better idea to just use a minimal WordPress theme – not specific to ecommerce. Next, we jumped into the three different flavors of ecommerce (digital products, physical products, and subscriptions). We took a quick look at different WordPress ecommerce plugins for each flavor of ecommerce.

Ecommerce, however, is much more than just a plugin. There are plenty of other things to consider like making sure your email receipts are successfully delivered (and not flagged as spam). We took a look at  how to keep your digital products safe and your site fast as your customers download their purchases. Then we briefly touched on PCI compliance and how Cart66 takes care of all your ecommerce security needs with a slurped hosted payment page.

Finally, we took a quick look at the pros and cons of PayPal and how that compares to accepting credit card payments. Depending on how you use PayPal, you can either win more sales or lose customers who otherwise would have bought something from you.

It is my understanding that the presentation was recorded. I’ll try to get a copy of the recording to post here. In the meantime, here is a link to the slides – Navigating the Waters of Ecommerce.

WordPress Ecommerce - Navigating The Waters

Texpander – Text Expander For Linux

Text Exapander for Snippets in LinuxI’ve been using Ubuntu for a long time and have been lamenting the sad state of autokey and it’s relationship with Firefox and Thunderbird. Autokey is also a little more than I even need. I just want a quick way to expand a text snippet into a longer chunk of text. For example, I want to type sig and have it expand into my complete email signature – not matter what browser or email client I’m using. So I put together this tiny little script to do just that. Here’s how it works.

Continue reading

Add Self-Signed SSL Cert To cURL

Self-Signed SSLIn an earlier post we talked about adding a self-signed SSL certificate to Google Chrome so that you can use SSL certificates on your local development machine. This solves the problem of browsing around on your local site, but it doesn’t solve the issue of making cURL calls. For example, if your site is running BackyBuddy or anything else that involves making backend calls over SSL, you will need to add / trust your self-signed certificate for cURL. So, here’s how you do it.

Continue reading

Add Self-Signed SSL To Google Chrome on Ubuntu 16.04

Self-Signed SSLThere are plenty of times when you are working on a website that uses SSL and you need to work on that site locally in your own development environment. Usually you just set things up not to run on SSL locally because it’s generally less trouble than getting SSL working on your local web server. Sometimes, however, you really need a local development environment that supports SSL. Here is how to do it for free with a self-signed SSL certificate.

Continue reading

Tips For Your Main Plugin File

WordPress plugin development Writing WordPress plugins is great fun because you can build awesome stuff and share it with tons of people very easily. Getting started can be frustrating because there are so many different ways to organize your code and it’s hard to know what’s best for your project. In the next few posts, I’ll share some of the tips I use to code WordPress plugins so they are easy to understand and maintain.

Continue reading