WordPress as a CMS?

Wordpress as a CMS?It’s one of those things I always said that I’d never do: Learn to code WordPress themes.

I have always disliked WordPress as a CMS, simply because it isn’t one. It’s a blog platform, and I’ve always had the strong conviction that one should leave the “CMS’ing” to the tools meant to do the job, like Drupal or Umbraco. Lately though, I’ve become more and more convinced that there’s a CMS-future for WordPress in that the so called themes are becoming more and more advanced and complex, producing very well coded, easy-to-use and easy-to-manage web platforms.

There is however serious issues with putting functionality and presentation on the same layer.

Can’t change look-n-feel without breaking everything

As I just stated, themes are becoming more and more advanced and they not only provide an html base and some CSS – they contain functionality that enhances WordPress, sometimes even making it look and feel like a ‘real’ CMS. But there’s a problem with that; If you later on decide to change the presentation layer with a new theme that you’ve purchased or have had built, you’ll loose all of the kick-ass functionality you’ve grown accustomed to. Sometimes, even breaking the entire site as it is so dependant on those features.

In need of a proper framework

I know, there are some frameworks out there; but they all have a presentation layer associated with them, and I don’t want that – I want to make the entire front-end myself, damnit!
Perhaps I have missed something though – if there’s a framework with a page builder and shortcodes out there which does not have a presentation layer associated with it, give me a shout please.

Lack of user access control

This is kind of a biggie, because if it’s one thing you do not want to do, is give your client full editing capability from within WordPress. They would end up deleting the base style.css, erase the contents of functions.php or perhaps disable the child theme. No, you need to fine tune the controls for each user and user group. And yes, there are plugins for this, but that’s sort of my point too – it’s a plugin. Some stuff should just be built right in!

Other CMS systems just does it better

Like I said previously, WP is not a proper CMS system. It’s a blog platform. If you’re on the hunt for a proper CMS system and have no experience with anything, I’d go with Drupal (PHP) or Umbraco (.NET) – both are free of charge, have a vast network of developers attached to the project and plenty of documentation to go around. The learning curve however, is a lot steeper for both Drupal and Umbraco, than WordPress. The rewards though, in my opinion, far exceeds that initial learning curve.

All said and done…

WordPress, in spite of all it’s flaws – and there are many more than I’ve listed here – is a decent platform to build upon. And since so many of the new companies forming consist of people who have at some point seen WP, WP will continue to be a necessary tool for ‘creators of online’, like myself.

Operating System makers should not make web browsers. Period.

Internet Explorer is in decline, and rightfully so. Apple’s Safari is, well… really crappy. Me see pattern.

It’s no secret that Internet Explorer was the dominant web browser for a multitude of years, simply because it was included with Microsoft Windows. And it’s no secret that Microsoft started losing users of their really bad browser, as soon as the courts told them to give users a choice. Now, I think it’s quite ridiculous that people don’t know of their choices unless a court of law tells someone else, to tell them that they do. But that’s beside the point.

Apple’s Safari doesn’t have that kind of grasp on the browser market, luckily. Sure it has some nice features – sync bookmarks with iCloud and have them on your iPhone for example. It’s neat, but… no cigar. It just lacks the magnitude of features and smoothness that you get from Google’s Chrome, Firefox or – dare I say it – Internet Explorer 10. Safari is a barebones browser, at best. And it lacks support for plugins. Not that I’m a big fan of plugins, but I sure do appreciate the option.

I think makers of Operating Systems should stay the hell away from making web browsers – it’s clear that they simply can’t do it properly. I suggest that they just put links to real browsers in their standard OS install instead. Or better yet; include a barebones version of Chrome or Firefox, and have those applications auto-download the full thing upon completion. I bet my children’s left lung that both Google and the Mozilla foundation would jump at that opportunity.

And, it’d make my life as an online marketer a whole lot easier as I could stop caring about Internet Explorer’s complete lack of respect for it’s users. Or standards.

On a sidenote: Since Opera decided to switch to the Webkit rendering engine, it now has the real ability to become a truly good browser.

Getting support for LESS in Espresso

Espresso is really a great web editor. No matter what language is your favorite, it’ll be a nice addition to your development workflow. Except, if you use pre-processors for CSS like LESS, SASS/SCSS or Stylus, of course…

But, there’s a fix for that! It’s called “Sugars”.

Sugars are great. They add support for things that is not supported out of the box in Espresso. There are a few sugars for Espresso to add support for LESS – my favorite CSS pre-processor. Sadly, none of them do the job in any decent way, imho.

Cellfusion’s LESS sugar comes close, but no cigar.

So, I have opted to simply append the normal CSS.sugar in the Espresso.app, to also take .less files. Since LESS is a superset of CSS, it out to work just fine. It’s not LESS support per se, but it does beat the attempts by Sugar-coders out there.

If you want to do the same, here’s my short-and-to-the-point guide on how to get support for LESS in Espresso.

  1. Open up ~/Library/Application Support/Espresso/Sugars (In Lion and above the ‘Library’ folder is hidden by default, so you’ll have to go to the ‘Go’ menu in the Finder, hold down ALT and click Library.
  2. Open up a new Finder window and go to Applications.
  3. Right-click the Espresso.app folder and choose ‘Show Package Contents’. Navigate to Contents/SharedSupport/Sugars.
  4. Copy the CSS.sugar over to the Sugars folder within your Library. Close the window displaying the contents of Espresso.app

You will now need to edit two files in order to make LESS files work like CSS files.

  1. First off, open up Languages.xml in Textedit or something – Do not use Espresso duh.
  2. Find the line that says
    <extension>css</extension>

    and make a copy. Then replace ‘css’ with ‘less’. It should now read:

    <extension>css</extension>
    <extension>less</extension>
  3. Close the file
  4. Now go into the ‘Contents’ folder and open up info.plist with Textedit.
  5. Find the line that says
    <key>CFBundleVersion
  6. Just below this line, is a version number. Make sure you increase this, ever so slightly. This is so that your edited Sugar will override the default one. Mine said ’2.0′, so I set it to ’2.1′.

And that’s it. The difference is quite clear…

Before edited CSS Sugar for Espresso
Before
After I edited the CSS Sugar for Espresso
With the new Sugar

Update: This approach is apparently not a good idea. See the comment from Ian at Macrabbit.

Taking the ‘Human Centric’ approach to SEO

If I had a dollar for every time a customer told me that they “want to rank in top 3 on Google”, I’d have about… 100 bucks. Ok so it might not be a tremendous figure, but it’s still annoying because it’s so inaccurately phrased. That isn’t the way to think about Search Engine Marketing or a successful Online Marketing Strategy. It used to be about focusing on keywords and certain phrases that you (thought) potential customers would search for.

Needless to say – or is it? – it’s a bit more complicated these days.

I don’t think anyone, least of all ‘SEO experts’ and Search Engine Marketers, really understand how search works these days. It used to be that search results came about from a few major variables: Keywords present on target page, number of inbound links to the page, the quality of those links (i.e. PageRank,) and so on. This is overly simplified of course, but you get the gist of it.

Today you have so many more variables to consider. Just off the top of my head:

  • Keyword(s) present on target page, with supporting keywords. “Encryption” should be enforced by “security”, for example.
  • Supporting keywords on surrounding pages, with links to the target page.
  • Inbound links to domain, and the quality of them.
  • Inbound links to the target page, and the quality of them.
  • Users likes’ on Facebook
  • Users friends’ ‘likes’, and whether the User has liked what their friends like. And whether they have commented on those ‘likes’.
  • Users previous searches (i.e. search pattern)
  • Users physical location
  • Users place of employment (industry, number of employees etc etc)

This is just a tiny part of all of the stuff that (I’m pretty sure…) Google and others take into account when presenting the user with search results. Mapping all of this out and then creating content based on your findings, is of course impossible. And even if it weren’t, you wouldn’t get a very good return on your investment. We’re talking millions of dollars for a single target audience.

So what I propose Search Engine Marketers start doing instead, is take the ‘Human Centric approach’, and simply focus on the people they are trying to reach. Screw algorithms and search patterns. Ignore industry trends and marketing speak. That all becomes obsolete eventually, but humans – they remain. They change, but they never go away.

Instead of asking the question “What search term will my customer most likely search for?”, ask “What would my customers like to read about, and what opinion do they expect of me on the subject?”. And if your actual opinion does not match that of your target audience(s), find something else. Or lie, I guess… :-)

Bloggers have understood this – years ago. Bloggers change their way of writing and the subject line as they need to. Search Engine Marketers, not so much – funny enough. Those very people who should be ‘in the know’, are far from it. Unfortunately, the customers even more so.┬áLong gone are the days where a keyword density of 12.4% and inbound links from 10 different PR 6 pages did the trick.

It simply does not work that way anymore.