Blog posts tagged "wordpress"

WordPress: Resetting your password the “hard” way.

November 19th, 2008

more yarnings

If you’ve forgetten your password to your WordPress install it has a nifty email-a-one-time-key-to-retrieve-password flow built in. Which for some reason never works on my box. (probably has to do with how I have Postfix setup doing 2ndary MXing) In the olden days the solution to this problem was to connect your database and UPDATE the user_pass field with an MD5 of your desired new password.

But now we’re living in the future, so things are more complicated. I still connect to my database, and manually UPDATE users set user_pass=$hashed where ID=1, but now I need this handy script to generate the hashed password for me. Hopefully the 3 other people in the world this is useful for will find this blog post.

(And now I might start blogging again)

Photo from sarabbit

Flexible Category Lists for WordPress

January 12th, 2007

One of the side effect of overloading (perverting?) the WordPress category system to do tagging is you end up with over 1000 categories. The posting interface gets unhappy, and the wp_list_cats template tag becomes pretty much useless.

(This post is another WordPress meta post, one of several I’ve got queued up in my head, and probably interesting to 3 people in the known universe, but here you go.)

better_cat_lists is WordPress plugin that adds a couple of more flexible methods.


works like wp_list_cats, but only categories with $cat_threshold posts in them.



works like wp_list_cats, but only from posts with the last $n days. You can also limit the total number with $cat_limit


Both methods use the same hack, they overload the list_cats_exclusions callback to do positive match instead of the intended negative match – appending and cat_ID in ($cat_ids) to the exclusion string. PHP at its finest, quick and dirty, like monkey patching but without language level support for it.

Laughing Meme, Rebooted

January 10th, 2007


About a month ago the creaky, heavily forked, and largely neglected version of Typo I was using to host Laughing Meme, started blowing its brains out. And for the preceding 6 months I had been losing the war against comment spam. Additionally I had reached the conclusion that while Mongrel changes the game for Rails hosting, not enough to make it cost effective for a blogging platform. Time to reboot.


One month to the day, please welcome the new revived LM, now on WordPress!

This will mark my third attempt to migrate to WordPress, the last time was about 48 hours before I moved to Typo. Hopefully it will stick this time.

Pardon the Dust

Lots of work still to do on templates (they work on my laptop! what’s your problem?), some links are broken, I haven’t spent as much time crafting the feed formats as I’d like (terribly out of character I know!), and I haven’t migrated over the comments yet. All the old links should work, and if you do find 404 please let me know. (Not only are the permalinks from my Typo install working, but also all of those from the MT install before it!)

All One Big Stream

Given that most of my blogging lately has been link blogging, I’ve moved this content into the main stream (and the main feed). A separate feed just of links is still available, and as soon as I do a bit of hacking a stream of everything but links will also be available. I won’t however be pumping every bookmark, photo, twitter, and burp through this feed. Separate temple of ego may someday appear, but no one will be auto-subscribed, I promise.

WordPress Wants

Hey all you WordPress users. Do you know of plugins, snippets, or examples of:

  1. Good WordPress tagging interface? Don’t make me revive my tags4wp code. Please
  2. Stripped down posting interface?
  3. Good archives?

I Have No Blog, and I Must Share!

And by way of fair warning, I haven’t had a blog for a month, so expect updates to be a bit fast and furious for a while.

Thanks everyone for bearing with.

Photo by Drift Words

WordPress Vulnerability? Paypal Vulnerability?

October 27th, 2005

Someone seems to have successfully modified the content of a post on the WordPress powered Magpie blog to insert link spam into the content of an existing post. Is there a known vulnerability that allows this? I admit I’ve been remiss in following WordPress security advisories?

Interestingly only one post has been altered, and that post has the distinction of being the post with an embedded Paypal donation button.

I’ve yanked the blog down for now until I have time to figure out what happened. (and I just got LM back online)

Tagged: Uncategorized , , ,

We’re Back

October 24th, 2005

After an extended downtime, LaughingMeme is back. Having gone from MT 2.6 to WordPress 1.5.2 to MT 3.2 to Typo 2.5.6 and now to Typo 2.0.6 it was a decidely silly journey.

And while a number of things are still broken, I feel like its starting to take shape, and Typo/Rails as an infinitely hackable framework gives me the chance to play with ideas I’ve been mulling over for a while, on how to present and reference the growing archives we all have. (only the skeleton of which is yet showing)

update: Comments fixed, again. (thanks Ruby for the heads up)

update2: My CSS-fu isn’t up to it (or perhaps my concentration is just shot right now), but the original artistic vision called for the magpie to float behind the MLPs. (ideally blurred slightly by a translucency) Anyone able to help?

Tagged: Uncategorized , , ,


October 9th, 2005

Been meaning to upgrade for forever, but comment spam finally pushed it to critical early this week. And there went my Sunday.

Not Seeing Eye to Eye with WordPress

WordPress was my first choice. I’ve tried upgrading to WP for a few times, but each times I try I get stymied. WP just isn’t flexible enough out of the box and the code is badly in need of refactoring. Might just be an impedance mismatch between me and WP.

Typo, Up On a Too High Pedestal

Next up was Typo. Now I know there is a codebase that is poetry, Typo is the gold standard of Rails apps, and I’ve referred to it when coding my own Rails apps.

Unfortunately when I checked on #typo, the recommended upgrade path from MT2.x was via MT3.x, and it doesn’t use the MT’s import/export feature, but rather direct database manipulation.

Moveable Type 3, the Sound of Settling

So now I’ve got a running MT3 install, and I think I’m just going to stay here, at least for tonight. I am struck again how much polish 6A puts into their apps. Bayesian comment filtering looks promising, Brad’s tagging implementation looks promsing, and I’ve always liked MT’s DSL for templates. (that said I’m currently missing the flexibilty of ERB + layouts)

Not sure I’m going to stay there, but I’m staying there for tonight, as I’m tired.

Tagged: Uncategorized , , ,

Status Update: XML::RSS, Magpie, cvs2rss, wp-agg, etc

May 28th, 2005

Dan from GeekUprising is now the official maintainer of XML::RSS. I imagine his first major change will be to incorporate the patch he sent me last Fall splitting the RSS creation logic from the RSS parsing logic (while still being transparent to people who don’t want that kind of thing). Congratulations, and welcome.

cvs2rss has been missing since the last server move, but well placed nudge from Phil got me to dig up the archives today, so voila, as they.

My aggregator for WordPress, affectionately known as wp-agg is officially superseded by FeedWordPress. Charles has done a great job growing the idea to something useful to someone other then me, and polished it off by actively maintaining it. Nice work. I’ll be switching the Magpie blog as soon as I get a chance.

Sourceforge stats after a 6 month hiatus (or was it 18 months? now I’m forgetting), are finally back, now with largely useless graphs. I had a hunch that usage had continued to grow and it has, with 5,000 page views a day, and 6,000 downloads a month. Wow. Really need to revive the website to handle the enlarged community. Need a good domain name first.

You know, now that I’m a contractor again, if someone wanted to hire me for 20-25 hours of work I’ve got a list of features that I’d love to have time to roll out as MagpieRSS version 0.8.

Tagged: Uncategorized , , , , , ,

WordPress 1.5 and Magpie

February 15th, 2005

Haven’t seen the official announcement yet, but WordPress 1.5 has officially been released. If you’re still using 1.2.x release then expect to wowed. Of course the most important new feature (for certain idiosyncratic definitions of important) is that Magpie is now included in the core. It’s a version of 0.6.x ( which means no multiple charset support) that has been cleverly modified to cache to the database. (removing one of Magpie’s major support burdens)

update: the official announcement

Tagged: Uncategorized ,

WordPress RSS Aggregator

July 18th, 2004

I’ve been playing with the idea of a devblog for a while, a place which collates the various feeds associated with a project into a simple location for easy viewing, and commenting it. Fisheye, and CIA are full blown attempts at solving this very problem for large open source projects. This morning, unable to get back to sleep, seemed simpler and faster to write something new, then finish reading the install instructions.

I present my quick and dirty RSS-to-Wordpress aggregator. There are a number of tools that allow you to display an RSS feed on your WordPress blog, and several that allow you to import an RSS into your blog, but I didn’t find any that worked as aggregators, periodically polling a feed, and creating new posts from the items found within. So that is what I built.

Some features:

  • dc:date becomes the postdate, dc:creator (or dc:contributor) becomes the postauthor, title maps to title, description to post_content, dc:subject to category.
  • a postmeta variable is used to track which RSS items have been seen before, and only insert them once.
  • you can assign 1 or more categories to be automatically attached to each post per feed. (e.g. a ‘CVS Commits’ category)
  • new authors, and new categories are auto-vivified if they don’t exist.


  • I wrote this to parse our internal cvs2rss feeds, and our Twiki feed. Those both produce RSS 1.0 feeds that conform to my particular RSS aesthetics. As such the script doesn’t try to hard to support other versions of RSS.
  • Links are treated as perma-links, and unique identifiers.
  • Ignores content:encoded
  • Only handles inserts, not updates
  • I wrote this with nightly build 2004-7-14, your milage may vary.

None of these would be hard to fix, but this was good enough for my needs this morning, in the short period of time I wanted to spend on it.


Some other features that would be nice to:
  • Store config in the database and add WP UI for managing aggregated feeds (should be doable with option groups?)
  • Support adding categories by name instead of id. (and auto-vivify categories)
Uses Magpie (surprise!), so you get to leverage support for fetching private RSS feeds. (which I’d recommend for serving up internal RSS feeds) Expanding on the devlog theme, you might want to include the RSS from your project management tool, and bug tracker. (we aren’t currently using RSS enable tools for this, but if, for example, you were using TasksProp or Basecamp, those would be good feed to include.)

A Few Observations on WordPress

  • Doesn’t support PHP5 yet. I’m not sure how pervasive the problem is, but it uses a modified version of ezSQL for its DB abstraction layer, which isn’t PHP5 compatible. Too bad they aren’t building on top of PEAR DB.
  • Excellent for whipping up an attractive, feature rich blog.
  • Faster then expected, really zippy in fact, at least without load.
  • Code is kind of a mess (or at least old school PHP). Very little OO, SQL, and HTML is scattered around, core use of global variables.
  • I’m not a fan of the “PHP is already a template argument”, but I understand why some people are.
  • Doesn’t feel as polished as MT, but is certainly more hackable. Reminds me of the Kwiki “every installation is a snowflake” goal. Interesting to see if this creates a surge of creativity, or just balkanization.
  • Option groups, and the postmeta table make it incredibly simple to add new features.
  • PHP5+SQLite support, and a one-click install could make WP the Kwiki of blogging tools.

update [2004/10/28]: In Boston, but on Seattle time, fill in some extra details. This quick hack is growing faqs, and might need to sprout a page of its own pretty soon. In the mean time there is a new version which uses a simple config file, and has expanded support.


  1. How do I print the link of the original RSS item?
    <?php echo getpostmeta($id, 'wpaggrss_id', true) ?>
  2. Dates aren’t working, all my posts are from 1969. Currently wp-rss-agg only supports dates in dc:date field, however there is a feature in magpie-cvs that should make it simple to provide Atom and RSS 2.0 date compatibility as well.

update: FeedWordPress is an actively developed and maintained version of this script. Charles has taken it beyond my simple proof of concept, and it is almost certainly what you’re looking for.

Tagged: Uncategorized , , , , , , ,