Posting some WordPress tips at the day job

During the week I work at a Vermont-based web agency called Union Street Media, where I’m fortunate to spend every day working with a great team on WordPress-powered websites. I’m going to start posting some of the things you’d usually expect to see here at scottnelle.com on the company blog. It will mostly be tips that I uncover during the work day after failing to find a good solution via Google. The first of these posts covers adding content to the end of all posts of a specific type. I’ve used that technique to build a plugin which allows our project managers to create project milestone signoff forms directly on the site.

Stay tuned for more WordPress posts from me both here on scottnelle.com and over at the USM Interactive Blog.

Get An RSS Feed Of Your Youtube Subscriptions

Updated July 7, 2015 – It looks like YouTube has disabled it’s combined subscription feeds. You can still download an OPML file of your subscriptions’ individual feeds and import all of them to your RSS reader. To find the OPML file visit YouTube’s Subscription Manager and click the “Export Subscriptions” button at the bottom of the page. The original post follows, but the instructions no longer work.

Following the announcement that Google Reader will be shutting down, I’ve been looking for a new place to read my content. I’m still not sure where I’ll land on that, but the change has me thinking about how I consume content as well. I’ve decided I’d like to do more of it in fewer places (the goal of RSS to begin with.) To that end, I’ve added my Youtube subscriptions to my feed reader. Here’s how you can get an RSS feed for your Youtube subscriptions, too:

Make Your Feed Available

First, make sure your feed is publicly available. Go to http://www.youtube.com/account_privacy and uncheck “Keep all my subscriptions private.”

Get Your User ID

Next, get your Youtube user ID at http://www.youtube.com/account_advanced. You’ll see your YouTube User ID listed.

Finally, replace {USER_ID} in the following address with your own User ID and you’ll have an RSS feed for new videos from your subscription list.

http://gdata.youtube.com/feeds/base/users/{USER_ID}/newsubscriptionvideos

 

Updated Fluid App Userscript for Gmail Unread Count

Screen Shot 2012-12-19 at 9.39.48 AMI’ve been enjoying using a Fluid App for my Google Mail account and I bought the Pro version for $5, primarily so I could get a badge in my dock with a count of unread messages. Unfortunately, the script that ships with the app to display this account no longer works, likely due to changes in Gmail itself. The original script parses the very complex markup to get the inbox value. My simplified script just reads the window title to determine the unread count. Here’s how to install the script:

  • Window > Userscripts
  • Create a new script
  • Pattern: “*mail.google.com*”
  • Script:
window.fluid.dockBadge = '';
setTimeout(updateDockBadge, 3000);
setInterval(updateDockBadge, 15000);

function updateDockBadge() {
	var title = document.title;
	var regex = /s*Inboxs*((d+))[^d]*/;
	var res = title.match(regex);
	if (res && res.length > 1) {
		var newBadge = res[1];
		window.fluid.dockBadge = newBadge;
	}
	else {
		regex = /^Inbox -/;
		if(regex.test(title)){
			window.fluid.dockBadge = '';
		}
	}
}

How it works:

It reads the window title and detects if you’re in the inbox and if there’s a number representing unread messages.

  • If so, it puts that number in the badge
  • If not, but you are in the inbox, it clears the badge
  • If you are viewing a message it does nothing to the badge since the unread count only shows on the inbox

This is obviously less technically clever than a script that reads the inbox count from the page markup directly, but it’s much less likely to break with changes to Google Mail, and much easier to understand and therefore fix if something does break.

As an aside, if you’re looking for a fancy Gmail icon, check out this set in the flickr Fluid Icon Pool.

Update: This works if you use English language settings for Gmail. Otherwise, you’ll have to change the word “inbox” to whatever is appropriate in your language.

Zeitgeist.css Chrome Extension

I’ve put together a small Google Chrome extension which automatically adds Zeitgeist.css to any page which is unstyled. Install the extension here, or read on for more info. and source.

About Zeitgeist.css

Zeitgeist.css is a fun project started by Ryan Freebern which aims to create a default styling for web pages that reflects the aesthetics of the day, whenever that day may be. In Ryan’s word’s:

zeitgeist.css is a crowdsourced, extendable basic CSS file that imparts a design based on current design aesthetics to any simple HTML file, such as those produced by compiling markdown.

Think of it this way: If you make a web page and add no styles, it looks dated. Zeitgeist.css aims to bring those pages up to date easily. As easy as Ryan makes it, however, it isn’t automatic. That’s where this extension comes in. It checks every page using JavaScript’s querySelectorAll method to determine whether styles have been applied via a link element or a style element. If not, Zeitgeist.css is automatically applied.

Design Refresh

For the first time in years I’m making not-insignificant changes to the design of this site. The last design even survived a complete rewrite and update of the HTML. Now I’m adding a fresh coat of paint to complete the update. I’ll be iterating on this design for a while–consider it something of a live redesign. There may be a few rough edges, but I’ll try to smooth them out over time. Thanks for sticking around.