Re: Overwriting Template functions
Thanks for the input _ck_, as always
I’m not often trying to replace an entire function from template-functions.php, i just want to overwrite one function once. But i get now that it has to be in pluggable.php, which is cool.
I suppose my issue here is this: why are many functions that output hardcoded HTML hardcoded into templates-functions.php in the core and not in pluggable.php so that theme / plugin developers can’t overwrite them?
In my opinion (and it’s just my opinion) there are far too few hooks in BBpress and some of them are in the ‘wrong’ or difficult place for theme development or front-end plugin development. This may seem daft to alot of people and long time BBpress contributors, but with the likes of _ck_ writing so many great back end plugins, most of mine focus on making BBpress work in a slightly more modern way (ajax, nestings, wysiwyg, etc); and i keep hitting these ‘walls’ of where BBpress has hardcoded something.
Basically I struggle to see why BBpress doesn’t have a functions.php file in the theme directory. As it stands we’ve got to create a theme the way we want it, then integrate it into the WordPress theme, then remove the conflicts for the WP and BBpress theme as the standard BBpress theme came with a different div structure to the standard WP one (madness), then add the hooks for all the stuff thats not got a hook, then move hooks for the one in a ridiculous place, then write a plugin to load up all the functions that your theme will use as standard (cos god forbid we’d have a functions.php like wordpress).
It makes developing a theme that does anything more than background colour of posts and what happens around/outside the forum a real nightmare. And what’s worse, it means that any theme to stray away from the ‘default’ kakumei theme, needs to have a plugin installed as well.
While this may seem like no big deal to people (and it’s not a huge deal), given that we use a different structure for our folders to WP (again – crazily stoopid given the market BBpress’s aimed at even at this stage), we’re reliant on the user to install and activate everything properly.
Instructions with a theme if we had a functions.php and WP structure:
- Copy theme folder to your theme directory.
- Load up admin section, and select the new theme.
Instructions with a theme as is:
- Create a my-themes folder in your BBpress directory
- Copy the theme folder into that directory
- Create a my-plugins folder in the your BBpress directory
- Copy the plugin folder into that directory
- load up admin section, and select new theme
- activate new plugin to make theme reliant functions work
Now, obviously there is nothing too taxing on the second version, but it’s long been my experience that the less steps users have to undertake the less errors are made. Especially, and this is the bit I don’t get, when WordPress does things in a really simple manner (and has done so for ages).
I appreciate that forums of the nature we create are never going to be the most exciting or ground breaking in the world, but for those who think i’m wrong about more modern / different theme’s being available for bbpress let me ask this:
- If you look at the Top 20 forums in _ck_’s list (http://bbshowcase.org/forums/view/top100), can you tell it’s a BBpress forum before seeing the “powered by BBpress” at the bottom? If you’re bored do the same for the rest of the top100 and see how many you need to check are running BBpress.
- By comparison, when you go to a non-BBpress forum on the internet, can you automatically tell what forum software it is every time?
- But i bet you can tell it’s NOT BBpress straight away. Why do you think that is?
(infact the first one i’d to scroll to the bottom to check it was made my bbpress and it was – a number have switched away form bbpress – was http://soccerlens.com/forum/ which is using one of my template hacks from last year. the other worth mentioning is http://www.dragonballalcine.com/foro/ which is lovely and innovative – so that’s 2 out of the top100)