Andy Skelton?

Yeehaw, it's another blog! I'll try and stick to topics relating to WordPress and Automattic, Inc. Of course, nothing here is edited or approved by Automattic or any other entity. These are my views. Your mileage may vary.

Shape My WordCamp Talk

Now that Jane’s announcement has made it official, I need to prepare for my talk at WordCamp San Francisco. The working title is “Deep Voodoo: How the innermost innards of WordPress work” and the working content is nil.

This is where you come in. As a core contributor or plugin developer, you are aware of areas in WordPress code that scare you. I’ve been there and back again. I’ve digested, debugged and patched some of the most labyrinthine logic. I’ve even written some of the worst of it. On Saturday, August 13, I will try to make sense of it for everyone.

Please take a minute to recall something in the core code of WordPress that really stumps you. Ask me about it. I will try to work all of your comments into my talk, provided that I can’t answer it with a quick reply, a link to the Codex or a Google search.

If this gambit of asking for questions beforehand fails, maybe I’ll just give a tour of my personal favorite fork of WordPress in which every function block is shaped like a pony. (Please don’t let that happen.)

I’m sure I could figure it out 🙂 Thanks! I honestly never sought out the documentation. After re-reading your post, I can think of two other things that might be a better fit. I’ve been able to figure these out on my own, but not without a bit of pain and trial and error. 1. Creating custom Walker Classes. 2. Hooking into / re-purposing the media upload modal. IMHO, this stuff is rather voodoo-ish.

I had once tried to do interesting stuff with feed caching… Several attempts failed miserably. It’s not that SimplePie is complex, but as third party library it is very different from WP. And then WP interfaces with it by plugging in caching classes that change SimplePie’s file-based caching mechanisms into file-like abstraction based on WP’s transients… Ouch. Maybe not as complex, as fragile and hard to deal with.

And of course there is rewrite stuff. I cannot even formulate what exactly I had trouble understanding when I went in that corner so I will put it under “everything”.

PS both of these were while back when I wasn’t spending that much time deep inside core… might make sense to revisit feeds

1.) Caching – How does caching work and if you are writing plugins how best to use it?

2.) Admin Menus – There are some things that seem impossible to do, but Nacin said on Twitter there were possible (though he’s never followed up to explain.) See here http://core.trac.wordpress.org/ticket/16050 and/or email me if you’d like me to elaborate.

3.) Walkers – How to extend them without having to duplicate so much code that’s already in WordPress and/or how to best hook into them?