Fixing PHPList Delete/Merge Attributes Function
Mar 18th
I recently installed PHPList v2.10.10 (the latest stable release) to manage an email campaign and ran into a slight problem. PHPList allows users to define their own form fields for lists – name, address, birthday, email, and so on. These fields are referred to as “attributes”. Almost any type of data can be configured by adding an attribute in PHPList. You then create a sign-up page and choose which attributes you want users to enter, and whether or not that attribute is required to complete list sign-up.
I started setting up my attributes and naturally, added one by accident. After finding a button deceivingly named “delete”, I clicked it to correct my error. An http request was sent and the page reloaded – but my attribute was still there, winking at me like an old man who – while sitting on his porch – witnessed your ice cream tumbling off its cone after the first lick.
Luckily, a quick search found a remedy so I pass it along to you, the ethereal inter-web user:
http://forums.phplist.com/viewtopic.php?f=17&t=24502#p67476
Take that, old man.
10 Tips for HTML Email Lists, Templates, and Campaigns
Mar 15th
Developing a good-looking email campaign should be easy, right? You’d be amazed at how backwards the process is. This post assumes you have the technical and creative chops to hosting the email service yourself, rather than choosing a paid service like constant contact or mailchimp. Where’s the fun in that?!
From choosing the right host to archaic css support, here are some tips to help you remedy the malaise of maligned markup and hosting services:
- Start with a plan. You need to know five things:
- how many people you plan on reaching
- how frequently you will be emailing them
- what features you would like (html vs plaintext, images, etc.)
- the duration of your campaign
- your budget
- Find email list software that does everything you need it to do and is easy to use. Generally, they have demo sites where you can test out their features. Some even integrate with popular CMSes, like Drupal, Wordpress, and Joomla. Try several of them out until you find something that you like and that is either offered by your host, or that can easily be installed. Choosing software with good documentation and a large, nerdy user base is typically a good bet.
- If you are planning on sending a lot of emails, find a host that allows it. Hosts typically set a throttling rate to govern the number of emails that can be sent per hour and per day. Defaults on these figures are usually low, but can often be raised after contacting customer support. Do some research beforehand and you’ll be okay.
- Make sure the email list software you are using – as well as your host – aren’t blacklisted by major mail servers like gmail, yahoo, etc. Similarly, make sure your host’s filtering/spam settings are either disabled or allow for large quantities of outgoing mail with your keywords.
- Keep the design simple. Most mail clients and online email service providers allow for minimal use of css and html. They vary drastically in their support (you can find more info here: http://www.email-standards.org/ ), but here are some quick pointers:
- Use tables for optimum control over content alignment. Some email clients don’t render floating elements properly and certainly don’t degrade elegantly. You can avoid tabular layouts altogether if you keep your design simple with a single column of text.
- Avoid the default line length; in other words, your text shouldn’t run as wide as the window. There are two reasons for this:
- It is harder to read
- It won’t grab the reader’s attention to begin with – it looks like most junk they get in their inboxes. Even if they do start reading it, make it easier by limiting the width of a text block to 35-55 characters, either by setting a css width on your containing element, or by using deprecated methods like setting the width attribute in a table.
- Use inline css on each element that you want to configure
- Counter-intuitively, don’t depend on the “cascade” in body css – in other words, if you want all of your text to be styled with font-family: verdana, you might need to place that on each element
- Related to the previous point, avoid using css in the body element; some mail engines strip all html that is outside of body, including body.
- Avoid images as CSS backgrounds – instead, use image elements and get creative; a well designed image can create a fake page-corners, fades, and other common html graphics techniques. (a great example is the Organizing for America Campaign)
- Design for your audience. If you don’t know who that is, do some research. There’s nothing wrong with designing as broadly as possible – but with clear guides. If you know people who have difficulty reading small text will be receiving your email, ensure the text is large enough and with sufficient contrast. Don’t make it gaudily large, around 12-16px in many common webfonts generally does the trick. Images can’t be read by screen readers without alt attributes, so always include them. Title attributes are helpful as well, for mouseovers.
- Make sure the email has a clear goal and that it is easy to achieve; use image and text links to guide the reader to an actionable task. Generally, these links should point to a landing page on your site from which you can collect referral information.
- Make sure your content is engaging. From the images to the copy, everything should be designed to appeal to the reader’s senses and sensibilities. Knowing your audience is crucial for this step, so do some research if you haven’t already.
- Test, test, test. If you don’t have accounts on the major email services, sign up for them. I would advise keeping track of these usernames/passwords in a safe place (http://keepass.info), for future testing purposes. Avoid filling out personal information other than what is required by law. While I don’t condone creating false aliases, I also don’t condone data-mining, as commonly practiced by google/gmail. Tread carefully and wisely. Also, download and/or purchase major email clients (thunderbird, outlook, eudora, etc.), configure them with the appropriate server settings, and test there too.
- Finally: know the law. The European Union and a few states require opt-in/out clauses and privacy policies to be provided at the time of sign-up and linked in every transmission. Unless you’re living in China, North Korea, or other places where access to information is limited (among other things), the internet is boundless – you can’t plan on never getting a hit from the EU, California, Minnesota, Nevada, or other places where laws exist to protect privacy over the web. While it’s unlikely that problems will arise, they can be avoided altogether by including these things. The best way to protect yourself is to know the law and plan for future problems. I’m by no means a lawyer, but I have taken a course in internet/information law. If you’re uncertain, you should probably set up a consultation meeting with a bar-certified professional specializing in this area. A great online resource is http://www.epic.org You can sign-up for their feeds to stay on top of current electronic privacy legislation, cases, and so on.
There are certainly more techniques and considerations, but these should help get you started if you’re uncertain or new to managing and designing email lists. While I strongly condone pushing browser standards forward, the state of email rendering is even less homogeneous – and emails translate into business and money. While it’s great to support and use standards, the burden of implementing standards compliant emails shouldn’t be on the client. Designers & developers need better support from corporations. Full stop, end of transmission.
Getting on the Grid, in a Major way
Jan 1st
Over the past year I have dedicated a lot of time to making sure that the important things in my life are safe and organized, within reason. I’ve been using the book Getting Things Done as a guide, supplemented with other online recommendations.
Here’s a brief and somewhat complete description of my paper system. Important documents are stored in plastic folders in my plastic file box. Each folder has a label printed with my Brother P-2700, which I connect to my computer for more efficient label-tape use. I got it new, with free shipping for $40. Expect to pay far more – I lucked out. A simpler machine will do the same task, but I really enjoy using it, which means I actually file things. The labels make the folders far more uniform than if they were handwritten. I also avoid hanging folders at all costs. Instead, I use plain manila folders, unless the document needs to be water-safe, as previously mentioned. If I need to make a “group” folder, I simply make a list on a sheet of paper (printed from my computer) of folders that would normally be filed inside. This way, I can still maintain a hierarchy while avoiding the clutter of nested folders. Someday (soon, I hope) I will scan some of the stuff and get a safety deposit box. Finally, everything is filed alphabetically.
On to digital/electronic things. Important files are backed up somewhat regularly on my external hard drive. I’m still looking for a program to do this well and automatically. I don’t have Leopard yet, but I will soon enough – I’d like to give time machine a spin. Right now I simply drag and drop directories that I know have changed since the last backup. Much of my work in progress, especially things that I’m working on for others, is emailed to them and myself – and thus also stored online. I will eventually acquire more permanent online storage, other than my web host. I regularly synch my phone with OS X’s Address Book via Bluetooth, then export all contacts as a group vCard that I upload to Grand Central, which I use to manage my numbers and to log messages and conversations, mostly to note how much time I waste. Then I take a breath. I route my email accounts to Gmail. Replies appear as though sent from the same address the original message was sent to. I bi-directionally synch gCal with iCal using GCALDaemon, a server which I manage using Lingon. Lingon is a GUI for OS X launchd configuration files. It makes managing processes prettier and easier. I also use Jott to update/check my gCal via my cell phone. Jott sends me an email and an SMS confirmation/transcription of added calendar events. Also, gCal sends me emails and SMS texts at specific intervals prior to calendar events, depending on which calendar the event stored in. I use this setup to keep track of everything from class times to birthdays to TO-DOs to celestial happenings, like the Southern Solstice. This mobility and flexibility enables easy task capture and review – read/write access to my calendar whether I’m at my desk or on a bus.
I think I’ve lassoed the bucking steer, caged the paper tiger. Now I just have to keep it that way, forever
. One further improvement, however, would be to print hard copies of all my contacts – a proper address book or rolodex seems in order. I figure tertiary storage is good, but a hard copy doesn’t need to be powered on to use. I will update this in the future, and also write more in depth articles, especially regarding gCal, workflow, organization, and staying mobile. I’d like to hear what others are doing!