This is a short one. A gripe about a few of the more annoying things when searching the WordPress plugin repository…
- The search is truly pathetic. I’ve commented on my lack of enthusiasm for anything Automattic does beyond WordPress before and how they seem to love doing things half-assed, but you would think they could get it together enough to make the repository a useful resource, ya no?
- Screenshots are resized (poorly) to fit in their fixed-width layout and no full-size examples exist.
- bbpress is functionally challenged at best, but the integration into the repository is abysmal and rarely returns all the related topics to a given plugin
- On the subject of WordPress/plugin compatibility… You’ve got to ask yourself one question: do I feel lucky? Well do you, punk? …seriously.
The solutions are simple enough…
- Implement a more advanced method of search. Inclusions, occlusions, per field search operators — you know, thinks we would search by. Here’s a novel idea, allow me to list the plugins that are computable with WordPress 2.6 only (see #4).
- Include a link to each full-size image if it was resized. Better yet, use a lightbox. Problem solved.
- Create a new forum category for each plugin. Link to aforementioned category from plugin page. Better yet, list the discussion topics in their own tab on plugin page. Common sense. Imagine that.
- Rhetorical question: Why is it WordPress.org can’t cross reference the hooks that it has altered in subsequent updates with those found in the files of a plugin and tell you how if an old plugin is still compatible? Answer: Laziness. There’s nothing technically difficult about it, it’s just time consuming.
A major problem I have is that they spend time on things like displaying the stats when there are these nagging issues that have gone unchecked for so long. Do you care how many times per day a plugin has been downloaded more than it’s compatibility with your version of WordPress? I think not.
Hell, I’d be willing to take on the project myself if one or two people wanted to join me. Any takers?

I had a few extra minutes last night and today and added a few things to this script including Direct download links (with :hover for easy selection)

Embedded mp3 player displayed in a ThickBox.

As well as an embedded flv player displayed in a ThickBox.
Images are also displayed in a ThickBox overlay, while mov. mpg and mpeg videos are also played in a ThickBox.
Both jQuery and ThickBox have been embedded into PHPDL v2 and a PHPDL lite version has been released that has no files embedded in it at all. I have also commented the majority of the file using phpdoc syntax.
Please go to the PHPDL Project Page for demos and download links

I’ve been wanting to make a simple script that was entirely self-contained for a while now, but I haven’t been sure on exactly what I wanted to do. Something I’ve done more times than I care to count is write code that reads a directory and displays the files in some form or fashion. It’s something I know inside and out so I figured why not make a directory listing script that uses icons to represent individual file types and embed those images into the script itself. So I started coding.
A few hours later I had an embarrassingly polished script I felt deserved it’s own page. I’ve commented the code as thoroughly as possible, but if you have any questions please ask below.
Project Page: Greg-J.com/phpdl
Demo URL: PHPDL
Download: phpdl.zip
Warning: If this post sounds much more sinical than usual, it’s because the lack of attention this particular area of software has received from the OS community is unacceptable and half-arsed attempts make it all the more frustrating.

While I’m intrigued with the possibilities a social network script built on WordPress MU could potentially offer, I find the overall goal and ambition of the BuddyPress project completely underwhelming. A FOSS social network sounds great - since a decent open source solution for social networks simply doesn’t exist yet (note: the one that had the most chance was phpizabi, but the project died over a year ago. Probably because it’s complete crap) - but I’m failing to see the point of BuddyPress. If I’m going to start a social network with even a mediocre feature set, BuddyPress isn’t going go get me there.
I’m going to hold off final judgment until 1.0 ships, but at this point I’m less enthused than I was when I first found I’d be able to make a social network with BuddyPress.
Criticism is no good unless it’s constructive, but there isn’t enough of the project finished for me to go there. I know all to well how much can change between a day before release and release do, so when you’re as far out as they are from a final product there’s conjecture. My advice at this point would simply be “focus on making the site more interactive”.
I’ll check in when they launch along with every other blogger in the world and set up a test site. I’m mostly looking forward to releasing a free buddypress theme (it’ll exist when the theme exists) based on a social network design I’ve had finished for a while now though. I may begin work on it before completion actually, so stay tuned.
So this is kind of cool. SkeletonCMS has been included on OpenSourceCMS.com.
I’ll definitely have to spend some time to flesh it out, but since it’s an official OSS project, those of you who would like to contribute to the Skeleton flat file CMS please leave me a message.

This is most likely the last - or one of the last - posts I will make before the Greg-J.com redesign. I love this theme, but the site no longer reflects my interests or represents my thoughts the best way it could.
Before redesigning it though, I wanted to share the design with everyone in a way that would let me be creative. I’ve developed a WordPress theme called WP CODA. There isn’t much to say about the theme I haven’t already posted about on the demo. It uses WordPress Pages instead of Posts, but other than that - it’s pretty self explanatory. I hope you enjoy it.
Visit Bustatheme.com to download WP CODA.

CSS-TRICKS.com is another feed in my Snackr roll, and a visit there never disappoints. Recently they finished up a 3 part series on designing a wordpress theme and rounded it off with a download to the theme pictured above. I like the idea of the theme and its straight forward approach, so I thought I’d share the find.
Visit ChrisCoyier.net to see the theme in action. Download it here.
One of my new favorite blogs to read is jQuery for designers. Mainly because the guy who runs it seems to have the same obsession for the very design elements I do and partly because he’s better at jQuery than I am and I learn something every article I read (or watch, he offers screencasts for every article which is… mmm… unique).
One of the many techniques I have needed for this next wordpress theme I’m releasing is a fading hover effect. You can see it used on Dragon Labs as well as the jQuery UI site. Unfortunately the only site is done in degradable and semantic way is Dragon Labs, but Anand doesn’t have his code readily available and I haven’t talked to him in years. So… I tore into the code available from jqueryfordesigners…
You can view their article here.
My problem with the way(s) this effect is accomplished with the technique(s) from jqueryfordesigners is that this effect is only useful to me for links, and I’m not crazy about linking using an onclick event (shame on you jQuery). So I ventured out to edit their code and see if I couldn’t do it better - and by better I mean better for my particular situation. What I came up with was a solution that allows no images to be tied into the markup. The entire process is handled without the need of inline images or extra hidden elements. I would say it was perfect if it wasn’t for the fact that every now and then it simply stops working - for no apparent reason at all.
This method is now out of date. Please view this example for a simpler, revised version that does not suffer from the bug this version does.
The demo is pretty self explanatory, but here’s a play-by-play:
Step 1:
Include jQuery.
Step 2:
Include the following code:
$(document).ready(function() {
// find the div.fade elements and hook the hover event
$('.fadeThis').hover(function() {
// on hovering over find the element we want to fade *up*
var fade = $('> .hover', this);
// if the element is currently being animated (to fadeOut)...
if (fade.is(':animated')) {
// ...stop the current animation, and fade it to 1 from current position
fade.stop().fadeTo(500, 1);
} else {
fade.fadeIn(500);
}
}, function () {
var fade = $('> .hover', this);
if (fade.is(':animated')) {
fade.stop().fadeTo(500, 0);
} else {
fade.fadeOut(500);
}
});
// get rid of the text
$('.fadeThis > .hover').empty();
})
Step 3:
Form your html using a similar pattern:
<a class="fadeThis" href="http://greg-j.com">
<span class="hover">This content is hidden</span>
</a>
If you know why this effect seems to randomly stop working - or better yet, how to fix it - please let me know.
This is a small post made in hopes it reaches a JavaScriptdeveloper, who in turn passes it along to another, then another, so-on-and-so-forth…
I use jQuery with nearly every project. While I find it easier and easier to roll my own JavaScript, I’m not one for reinventing the wheel. If a plug-in exists that does what I want, I’ll use it. The first thing I do is check if they have a packed version (size matters). If not, I pack my own. My problems start when developers don’t have a packed version already available. Chances are, if they don’t have a packed version available, it’s because the JavaScript packer breaks their code. Not because it’s bad code, and not because there is something wrong with Dean Edwards packer, but because when code is packed certain operations are changed if the code isn’t written perfectly.
Enter JSLint. Think of JSLint as the W3C Validator for JavaScript. If your code passes inspection (you can essentially ignore repeatedly assigned vars), it will pack.
Tonight I’ve had to fix not one, but two jQuery plug-ins to make them available for packing. The first is the preloadCssImages plug-in from the filament group (amazing developers I might add) and the second is FancyBox by some guy called KAC. I’m not calling anyone out, rather hoping to make people aware of JSLint. It only takes a few moments to go through your code, and the result is a much lighter footprint in most cases.
I’ve contacted the creators of their respective plug-ins, but if they don’t post the fixed, here they are:
preloadCssImages
FancyBox
I’ll have another post in the next 24 hours releasing a free wordpress theme, so stay tuned!
I use about 2 dozen applications on a daily basis that aid in everything from domain purchasing to web design, but these are 4 I couldn’t live without regardless of what I was doing.
TaskSwitchXP
By itself, TaskSwitchXP is a replacement for the Alt+Tab task switcher built into Windows XP (I refuse to Vista, so this one is for XP folks only). If you have a Logitech G5 /G7 - or any other mouse with programmable buttons - you can assign the thumb button to Alt+Tab and any time you press it, this task switcher will pop up, using the scroll wheel to cycle through your applications. Release the thumb button to select that app. This makes switching your applications amazingly fast. There’s an even better application called TopDesk, but I chose to give up awesomeness for speed. It’s basically Expose` for Windows.
Vista Users: You can get this effect for free
RKLauncher
Another OS X `esque app I couldn’t live without is RKLauncher. It hides the windows taskbar (optional) and gives you an application launcher that stays out of the way but gives you a much more refined way to access your applications . The real benifit to me other than it looks cool is that it gives me more screen real estate. There are other docks (ObjectDock, RocketDock) but RKLauncher is the simplest and has the fastest response when you start to get several dozen icons going. My personal favorite is ObjectDock because it has so many options and features, but it can get too slow. Again, I prefer speed over wow. My only beef with RKLauncher is that it fails to hide the windows taskbar all the time on my machine. I don’t care though because I keep my taskbar on the left side on auto-hide so I can hit the Windows key and bring up my start menu.
GreenShot
The most useful feature of GreenShot is that when you hit the PrtScn key on your keyboard it gives you cross hairs you use to outline a region of your screen you want a screenshot of. You can set it to save it to a folder somewhere or put it on your clipboard. There are other options as well as a built-in image editor as well, but I don’t use them. In this industry there’s always a need to show someone something on your screen and this little tool helps a lot. (It’s also free and open source)
Snackr
This is the newest addition to my desktop apps and I don’t know how I lived without it. Snackr is a desktop RSS Reader built with Adobe AIR. It sits on any side of any monitor (native support for multiple monitors) and scrolls through entires from your RSS feeds. You can easily hide it or let it sit on top of open windows. It’s so badass I no longer use Google Reader which until yesterday was my absolute favorite RSS Reader of all. I still add my favorite feeds to both so I can get my fix when I’m on the road. Snackr is a perfect example of Desktop 2.0 and a beacon of excellent widget design.
1 Comment »