…and I'm all out of bubble gum.
How To
WordPress µ Testing Setup
May 18th
A few days ago (well, maybe a couple weeks ago), I was chatting with one of my colleagues about how I go about testing out new plugins and themes for WordPress µ before loading them on our school blog server. It seems like documenting my process might be generally helpful, so…
To start with, I decided (after ten years of mucking out Apache config files and PHP extensions and custom MySQL installs — thank you so, so much Marc Liyange for your timely and helpful installers!), that I was a grown-up and could spend $60 on a tool that makes my life easier: I run MAMP Pro on my MacBook. This means that I have a generic Apache/PHP/MySQL stack that supports commonly-used PHP extensions, Apache configurations, etc. I have redirected the document root of my install to my regular user’s Sites directory in OS X (~/Sites) so that I have ready access to the backend files of for my test installs. The net result: WordPress’ famous “Five Minute Install” is now true of almost any LAMP-based web application — I had a five-minute install of Drupal, Moodle, Joomla… you name it.
I’ve also settled into using Coda ($99) to edit HTML/PHP source code, since I particularly like the built-in terminal and publishing management features.
With WordPress µ installed (which, I guess, is now calling itself WPMU or WordPress MU or even WordPress 3 in betas), I now do the following:
- I install create a new blog for each new theme or plugin that I want to test out. I follow a pretty intuitive naming scheme: the URL for the blog is the URL for the plugin or theme, and the name of the blog is the name of the plugin or theme (so WordPress Hashcash is at …/wp-hashcash and named WordPress Hashcash).
- As I create each new blog, I create a new user to be that blog’s administrator. I almost never use this login, but it means that I have one user who is matched to each blog. In doing this, I make heavy use of Gmail’s + modifiers, so new user emails look like mygmailaddress+talyn+wpmu+blogurl@gmail.com — this lets me catch and filter relevant emails easily on the other end. (I developed this system when I was testing plugins that sent email notifications). For the curious, Talyn is the name of my laptop (so I know which server is sending me email) and WPMU is the keyword to distinguish these emails from, say, Drupal notifications.
- I also have six generic users that I add to most (not all — I add them as needed) blogs, each with their own standard privileges:
- Anna “Annie” Administrator
- Edward “Eddie” Editor
- Allison “Allie” Author
- Christine “Chrissy” Contributor
- Samuel “Sammy” Subscriber
- Nathan “Nate” No Privileges
I actually included nicknames so that I could control for how different themes displayed usernames (since I’m thinking about FERPA and how it may apply to our students on our school blogserver).
- I have one blog on which I never activate themes or plugins, which I lyrically call “Is this blog in the blast radius?” This is based on my experience installing Digress.it on WordPress µ at the start of the year (it hosed every blog on the server, rather than just the one where it was activated). I check this before I deem any test complete.
- One tricky thing that I did was that I set up MAMP to run Apache and MySQL as my local user account on my MacBook, and I have set permissions on my Sites directory so that my local user has all privileges, as does the www group, and other users have read/execute privileges (
chown -R seth ~/Sites; chgrp -R www ~/Sites; chmod -R 775 ~/Sites). This means that I usually don’t run into problems with web apps that want to move or create files. This is also, of course, totally insecure. Que sera, sera. - I have an extra blog set up on my WordPress µ install that runs Feed WordPress, and it republishes the feeds for all of the other blogs on the server tagged Note. This means that I can post something tagged Note to any blog that I’m working on and then have all my notes together in one place. Adding the subscriptions to the Feed WordPress blog is a manual step, but not prohibitively difficult. And it really does mean that I have one place for all of my notes on how things went (or didn’t went) in my WordPress µ testing. I have the feeds categorized as Plugins, Themes, Configuration and Hacks, since those are generally what I’m testing (and mostly Plugins, at that).
- One hitch in my system is that I have opted to keep my system entirely up-to-date (I’m running WordPress µ 2.9.2 with the most recent versions of all my plugins), while our school blog server is still at 2.8.4a. Generally speaking, this hasn’t been much of a problem, but when I’m particularly concerned, I will sometimes check things out on a lingering 2.8.4a install before loading it.
Creating RSS Feeds in FirstClass
May 18th
Since this is available nowhere else on the internet, I’m posting it here for safekeeping. I believe that this applies to at least FirstClass 10, perhaps also FirstClass 9 (but that’s just a W.A.G.). This is from FirstClass tech support:
An RSS feed can be generated for any FirstClass container object (folder, conference, etc.) which is visible to the Web by adding a template override parameter to the URL. In other words, if the URL to the news conference on your Web site was http://www.mysite.com/News , then the URL to the RSS feed for that conference would be http://www.mysite.com/News?Templates=RSS&items . If you have an RSS feed reader you can simply enter that URL, give it a name, and you’ll have a feed. Usually, sites that offer an RSS feed will put a little icon on their main Web page to show that they have one. If your main page is a FirstClass document all you need to do is:
- Paste in your preferred RSS image
- Highlight the image in the editor and right-click your mouse, choose “Make Link”
- Enter the RSS feed URL, in our example http://www.mysite.com/News?Templates=RSS&items or ?plugin=RSS&Items
Buyer beware: I have not seen this work yet in my own tinkering. But I am hopeful that somehow I’m doing something wrong.
Category Shortcode
Apr 23rd
I just slapped together a very quick plugin for a teacher’s blog that adds a [category] shortcode to WordPress. Basically, it just passes through all of the attributes of the shortcode as parameters to wp_list_categories(), allowing the user to embed a list of blog categories in any page, post or widget. This feels like something that should already exist (but I couldn’t find it).
A Breezy Introduction to Basic Animation in Flash
Feb 26th
The tough thing about best practices is remembering to practice them: a while back I started to collect my screencasts on particular topics into one, easy-to-remember link (e.g. iMovie ’09 information is at http://battis.net/link/imovie09). I spent a while uploading my Flash tutorials to one of my class conferences the other day, forgetting to just create the simple link (and thereby limit repetitive work). So, with that in mind…
Here are a few tutorials on animation (at a basic level) in Flash 8 Professional. They need to be re-recorded and cleaned up a little, but they’re a useful starting place for someone totally at a loss when faced with Flash’s ridiculous learning curve. The link to this post and to anything else I might have to say about Flash is http://battis.net/link/flash8
The videos in this sequence are (with links to higher-quality, but less-firewall-friendly, Screencast-O-Matic videos):
- Create a Simple Animation — How to create a simple Flash Professional 8 animation using a Motion Tween between two keyframes.
- Adding Complexity to a Motion Tween — How to use rotation (or scale, skew or other Transformations) to adjust a simple animation.
- Adding a Motion Guide — How to add a Motion Guide layer to a simple animation in Flash Professional 8.
- Shape Tweens — How to use Shape Tweens to animate motion (or, well, shapes) in Flash Professional 8.
- Reverse Exploding Animation — How to have a scattered group of shapes “resolve” themselves into your design in Flash Professional 8 (this was a request from my media design class).