TweakThis will be a collection of minor tweaks and settings I make to Vanilla, that aren't large enough to be considered for an extension in their own right. Each tweak can be set from the settings page.
Using a name like "Spode" plays badly for me with Adsense, as the word occurs on the page a lot and I end up with lots of Spode China advertisements. This tweak adds section targetting around each discussion title, and the contents of each comment, making sure that Google Ads are relevant. This has increased my click rate by 4x.
- Discussion Capitalisation
I was a little tired with people not capitalising the first letters of words in the title of discussion posts. In an attempt to maintain a professional image, this setting parses the discussion title through PHP's ucwords function, and then filters out a few words (a, the, for etc.) to bring back to lowercase. This only affects NEW discussions, so once submitted, you can edit the discussion and change the capitalisation, should it look wrong to you.
===================================
CHANGELOG
v1.01 - Added Adsense section targetting v1.00 - Initial Release, including discussion title capitalisation.
You can, there is a "TweakThis Settings" in the Settings panel. At least, there should be! I aim on grouping different tweaks into relevant sections.
I've made some Google Adsense tweaks to my setup that I'm wondering if I can add as extension. They currently edit the Theme files, but I *think* I can code it using delegates. If you've ever used Adsense, you can put tags around content so it knows that is what it should be looking at for Keywords. Section Targeting it's called. I had a problem that because the name "Spode" was coming up on screen all the time, it kept giving adverts for Spode China. Since I've section targetted, my click rates have gone up 4x :)
By all means. Drop me an e-mail. Maybe the easiest thing to do would be to have every extension as a PHP include, that way if any updates need to be made, it would be easier.
I really, really hate to be negative, but I don't see the use for this---I mean, the tweaks are great, but I don't see why you're bundling them together.
Doesn't the settings > enable extensions page already serve as an interface for enabling individual features? I'm sure you could code a more user-friendly interface, but it's still adding code for something Vanilla can already do.
A more significant issue is this---what if I only want one feature? Why do I have to download all of the tweaks? It seems more efficient to just install the features I want, rather than make Vanilla sift through a bunch of disabled features. In addition, Vanilla adds extensions via a straight list of include() functions (from inside conf/extensions.php). Thus enabling features via the traditional method is going to be more efficient than running Vanilla though a bunch of if-statements (before running the include() functions or raw code).
Again, the tweaks are great. But it seems to me, from a programming standpoint, the better option is still to package the tweaks separately.
Tim, I agree with your sentiment and what you say makes logical sense. In fact, I applaud you for looking for the negative, as this attitude is how things are improved.
But the whole point is these are minor tweaks that I just don't think need to be as an extension all by themselves, these are tweaks that require a number of lines of code, not huge theme files and entire classes.
From my stand point, I like the idea of just installing a single extension to a new forum and enabling all those little tweaks that I want. A bit like TweakUI is to Windows. Setting up a clean install, and then having to remember the extensions you needed to get it how you like it is a pain. At last count I think I have 36 extensions installed. I'd like to see this eventually becoming a "must have" extension.
I really can't imagine the performance hit of a conditional statement would affect a page load, especially as the array the conditional is referencing is already loaded in memory. However, doing an include on say 15 files, taking into account the seeking and separate file access - that's surely got to add latency? An average extension will have say 5 options in the settings panel. I'm intending on making these on/off extensions with as few options as possible.
By all means Tim, if you can show me some evidence of the performance impact this will have, I'll make these separate extensions. Perhaps Mark has an opinion on the matter?
Yeah, I agree with spode. I realise it seems like re-inventing the wheel but I think since these are minor tweaks, it is advantagous to have them bundled together as one rather than several tiny extensions. It helps remove clutter from the extension page and simplifies up the updating process as well as ensuring compatibility between all of the tweaks.