WooThemes

The WooThemes Blog

All the latest news and announcements, straight from the WooThemes HQ!

Subscribe

As Things Shift…

29

by Adii Rockstar in Development

As I sat down at my desk this morning, I set about doing some catch-up on the conversations that happened via e-mail and on our Basecamp over the weekend, when I suddenly realized that something new & unexpected was brewing within our team & the business as a whole.

In the last couple of weeks, we’ve been spending a lot of time working on the new WooFramework and then shortly thereafter we followed that up with the introduction of the new WooThemes Custom Navigation functionality. Now it is especially the development of the Custom Navigation that has surprised me a bit.

See, we’ve always been WooThemes (with the emphasis firmly on “themes”) and with the Custom Navigation functionality, we’ve developed something this isn’t core to the themes anymore (in the sense, that you could previously achieve a similar effect with plugins). So this is a bit of a shift away from our themes-only focused production line, whilst still staying relevant to the core business focus.

When you’re busy, it is very easy to miss small shifts in thinking & practice like this, but when you stumble on something like this, it can be really profound and value-adding. I don’t think that we’re going to start developing plugins, building our own CMS or become the next Google / Microsoft / Yahoo, but it interesting to note that a business sometimes shifts itself based on user needs & wants.

So we’re extremely excited and passionate about this “new” door that has been opened to us. Hopefully we can continue building on the platform we’ve been given here now. Follow this space with curiosity & excitement.

FEEDBACK: As this is new territory for us, we’d love to hear your feedback with regards to the Custom Navigation functionality. Is this something that adds value to our themes? And is there anything similar that you would like to see us implement?

Tags: , ,

29 Responses to “As Things Shift…”

  1. Josh Yarber
    1 February 2010 at 7:48 am #

    Well said Adii. Expansion is inevitable in my mind for this niche. The needs of your users are ever increasing and by expanding in this way, the value of a subscription is expanding as well. I’m looking forward to new functionality in Woo Themes. I’m getting excited already.

  2. Michael Whalen
    1 February 2010 at 7:56 am #

    I think eventually with people who develop constantly on a platform, you will find ways to make it fundamentally better. In doing what you guys did with the new nav stuff, you’re adding a very important set of functionality to the WordPress core.

    WordPress is shifting more and more towards being a mainstream CMS, and things like this are going to help with that. Hopefully, some day (I pray every night) we’ll see a rewritten completely object oriented WordPress core, and a lot of the CMS functionality many of us developers are creating will find it’s way into that.

    WordPress is doing a jolly job working on building out a really slick user experience in the wp-admin, but the core code itself is dirty. I like the concept of hooks and filters, because that makes my life easier, but honestly someone needs to come in and rewrite the entire core. I guess that’s the unfortunate part of developing in PHP… PHP dev’s have a totally different mindset to development that isn’t exactly a model one.

    I personally look forward to a strong year of competition in with WordPress themes =)

  3. MJ Stapleford
    1 February 2010 at 8:00 am #

    It was a great idea to involve this and this all really adds to the themes themselves. I think this is one of the things which is keeping woothemes top of the themes providers in my book, that and the themes are really awesome.

    One thing I would like to see soon though as it has been a while is a blog post about new themes in development. Another we show you teasers would be great :)

    • Adii Rockstar
      1 February 2010 at 8:01 am #

      Teasers are coming soon-ish.

  4. Pedro
    1 February 2010 at 8:27 am #

    good new development for 2010 Adi.

    I think people as me would like to use some functionalities of a theme in annother theme as well staying with the same style (e.g. google maps, sliders, video player sidebar, changing backgrounds with grafics…)

    So this could be a way to be more flexible out of the box with woothemes.
    Anyway you are doing the best job in the web for wp-themework and now you are even going to solve some wp issues like custom navigation.

    great job – thanks

  5. Adam Kayce
    1 February 2010 at 8:32 am #

    I also think it’s pretty darn cool. And it makes perfect sense…

    Because there’s WordPress, and all that it does. And for a time, a theme was simply a set of clothes that made the thing prettier. But with the advent of premium themes, and the increasing functionality that they offer, themes are becoming much more than “designs.”

    They are the primary interface between your content and WordPress… and as such, improvements such as the WooFramework and now, WooNav :) , are making that interface more functional, allowing users to get more out of their WordPress experience in an easier, more integrated way.

    So rock on, WooTeam!

  6. Matthew
    1 February 2010 at 9:34 am #

    Thanks WooFolks for continuing to add value to your already valuable products! This new custom nav situation is really excellent and simply makes me feel even better about my investment to become a subscriber!

    Thank you!

  7. Carl Hancock
    1 February 2010 at 11:41 am #

    I think what you guys have done with the Woo Navigation is very cool.

    However, I would strongly suggest you approach functionality such as this as a plugin… and not built into a theme.

    Why? Because plugins are easier to upgrade and manage. The more features you have, the more opportunities you are going to have for bugs to pop up. Bugs in themes are more of a pain in the ass than bugs in plugins because plugins have automatic update capabilities.

    The more you try and introduce into a theme… the more of a maintenance hassle it becomes.

    I’m not a fan of themes trying to do too much. Themes should focus on design, leave the functionality to plugins which are designed to be more flexible and upgradeable.

    • Magnus
      1 February 2010 at 1:32 pm #

      Hey Carl!

      Although I agree that plugins are easier to upgrade because of autmatic upgrade functionality, I disagree that this is the correct way for us to do it. There are two main reasons for this:

      1. The framework is easy to update and will not disrupt your theme. We will be looking for an auto upgrade of the WF in the future version, so it essentially does the same as a plugin upgrade.

      2. Downloading and installing plugins is one more step in the installation, and it is much easier to have it already included.

      Why can’t our framework focus on functionality whilst our theme focuses on design :)

      • Carl Hancock
        1 February 2010 at 1:58 pm #

        I understand your point Magnus, I just feel that when themes start to overstep their boundaries… it’s not a good thing in the long run for the users nor is it a good thing for you guys from a maintenance standpoint.

        It is far easier to maintain functionality such as this from a plugin standpoint than a theme standpoint. When you make changes you now have to come up with a way to push them out to users. As of right now that means manually manipulating files, not very friendly. With plugins the auto upgrade capabilities are far more robust… they are built into how plugins work.

        When you make a change to the navigation functionality now you have to update all your theme packages to reflect that changes. If it was a plugin, you would just make a change to that plugin and be done with it.

        I think the functionality you have built with the navigation would be better suited as a standalone plugin that you make available to your users.

        Themes are trying to do too much these days and are blurring the line between theme and plugin by bundling plugin like functionality into the theme itself. This isn’t a good thing from a maintenance and upgrade standpoint.

        I know you guys are trying to push the boundaries and make your themes more attractive… but you can accomplish the same thing by offering certain functionality as an optional plugin and do so in a way that makes more sense from a WordPress architecture standpoint.

        • Magnus
          1 February 2010 at 2:25 pm #

          I hear you, but we have to update our WF from time to time anyways, and have built systems to update all our themes on both SVN, demo and zips in a matter of minutes.

          It’s the user that will have a bit harder time updating the WF for now, until we build in the auto update functionality similar to what plugins have.

          We had this discussion with ourselved in the beginning when we thought of pros and cons of having the WF as a plugin and decided it was best to go for the integrated approach.

          I don’t see why themes are trying to do to much is a bad thing if we bundle it into a package like our WF where everything works. As I said earlier, offering addon options as plugins will not be as user friendly as having it bundled with the theme.

          But anyways thanks for your opinion, and as I said, we have discussed this internally many times, but come to the conclusion that the bundled package is best for our users.

          • Carl Hancock
            1 February 2010 at 2:48 pm #

            I think What you guys have done with the Woo Navigation functionality is awesome.

            I think you are selling yourself short by not taking it and turning it into it’s own standalone plugin. It has tremendous use outside the scope of the WooFramework. It’s cool enough to be it’s own product.

            I think that is where the line is for me. If something makes sense as a standalone product, why not do so? It deserves more attention than just being one of many features.

            Even if you gave it away it would be a great marketing tool for WooThemes itself.

          • Adii Rockstar
            2 February 2010 at 3:25 am #

            Maybe in future… For the foreseeable future though, the WooNav functionality will stay exclusive to WooThemes & the WooFramework! :)

  8. Jesse Petersen
    1 February 2010 at 1:01 pm #

    I agree with Carl whole-heartedly: leave that sort of function to plugins. I saw this happen before my eyes one year ago… elsewhere (/grin) and soon discovered, after numerous customization requests took 2 to 5 times longer with themes that were made to be “stupid-easy” by building in too many functions, that those themes took the power out of the hands of customizers who fell between the knowledge pools of a newbie and a PHP developer.

    Tread too far into sinking functions into a theme and they quickly fall apart when dissecting them for a client.

    I love your work, your framework, and your designs and am delighted to see your open channels with customers who give you their pulse in return.

    • Magnus
      1 February 2010 at 1:36 pm #

      I’m not sure I agree… you are only seeing it from your side and not our side ;)

      The custom nav is off by default, and if you want to remove it for a client it’s simply removing one line from your functions.php which is theme specific, so next time you update your WooFramework functions folder, the removed Woo Nav will still be removed.

      Making it into a plugin means that our users have to first be aware of the plugin, and secondly download and install it. Having it built in is a much better option overall.

    • Jermaine Maree
      1 February 2010 at 6:40 pm #

      I am going to have to agree with Magnus on this one. As a theme developer myself while plugins are great, many times you can build in features easier, faster, and more efficiently (imo) if it is part of a framework.

      The idea is to build it in a way that the theme works with or without the framework’s functions.

      The downside of this approach is making sure your functions are updated when WordPress functions become deprecated. Also, if not careful you end up having to rebuild themes to support newer versions of the framework :D

      • Adii Rockstar
        2 February 2010 at 3:31 am #

        This approach is not without its challenges, but with the proper development philosophies and systems in place, you should be able to sustain it. So we will definitely stick to this approach for the foreseeable future, as it has worked until now and we’ve managed to scale it quite well (i.e. don’t fix something when it is not broken).

  9. Mohsen
    1 February 2010 at 1:46 pm #

    I love your framework, designs, and the amount of time you spend on your themes.

    the first time I saw “custom navigation” as a built-in feature for a wordpress theme was on one of themeforest themes and I should say it wan’t so exciting.

    I think it’s not a good habit getting into plugins area. You’re just changing the behind idea of WordPress themes which I think isn’t a positive movement.

    Anyway I appreciate your hard work

  10. downsouth
    1 February 2010 at 6:05 pm #

    I have built sites using other themes and a mixture of plugins and have had a truy horrible time trying to get various widgets to play together nicely. In some cases its meant that I’ve had to quickly build test sites and load them with various plugins before I make promises to clients. I’ve been caught before with incompatible widgets when I’ve already pitched a site to a client which uses those widgets…

    Everything that Woo creates works together. That means certainty. It’s the overall “Woo enviornment” that is important to me, not its individual bits or a particular theme. The “richer” that environment is, the more certainty I have, the more promises I can make to clients without having to test beforehand, and the more time I save.

    That’s why I love the new nav system ! When the rollout is complete I won’t have to study a theme and wonder about pages and categories, deleting the second nav bar, tweaking the code to add a category, renaming “blog” to something else.

    Many sites I build are also not substantially changed for at least a year after I make them. I use WordPress because it’s easy for clients to add content and maintain their own site. What clients don’t do is upgrade WordPress or the widgets. And I’m certainly not going to spend time updating those elements and take the risk that something breaks.

    On the other hand if I can deploy a new element with 100% certainty it will work, not break anything, can be rolled back if needed, and gives the client some wonderful new ability, then that’s fantastic! That makes me look good and makes the client happy.

    What that means in terms of theme code vs plugins, I’m not sure… But you guys have certainly got things spot on up to now with the evvironment, compatibility and easy updates :-)

    The whole is greater than the sum of its parts.

  11. Melissa Batalin
    1 February 2010 at 8:11 pm #

    I love the functionality being added, although I do have reservations about how it is being added. I agree that plug-ins might not make the most sense for you guys. It is more set-up work; it’s more to maintain; it might allow people to use the added functionality on themes that aren’t yours, so it would be a poor business decision in the end.

    As someone who often makes massive changes to the themes (beyond css) I am worried that I won’t be able to properly upgrade the theme – to gain awesome new backend features – with out loosing my added functionality, or hours of redoing / fixing what was lost.

    BUT I’m excited that Magnus mentioned being able to update the woo framework without updating the whole theme in the future. So I am hopeful… I think.

    • Adii Rockstar
      2 February 2010 at 1:14 am #

      You can already update the WooFramework without upgrading the whole theme, as the WooFramework is only housed in the functions.php file (rarely updated) and the /functions/ folder, which you shouldn’t need to ever touch.

      So whilst it is still a manual process at the moment, we will be building something to auto-update within the next couple of months. This will be a major new addition to the WooFramework, which is why we’ve delayed it until now: it needs to be perfect before we make this available to all of our users! :)

  12. Robert
    1 February 2010 at 10:20 pm #

    Hey, is there any way you can get the custom boxes from Delegate theme to Digital farm so like when you type the box will show up?

    • Magnus
      2 February 2010 at 1:10 am #

      I think it’s better if you ask for theme support in our forums :)

      • Robert
        2 February 2010 at 10:46 am #

        I didn’t buy it YET I like Digital Farm but also like the boxes from delegate, so is there a way? I need to know before I buy it. Thanks.

  13. Chris Lema
    2 February 2010 at 4:10 am #

    In the end, I think it’s really a question of your target market. Sure you sell one theme here and there to a developer, and those developers know about plugins, where and how to install them, update them, and all that. But the fantastic value comes when someone is in the club – which presumes they need more than one theme for potentially more than one client. If that’s your target, then anything you do to make things easier and integrated for that end user updating the site is huge!

    So I love the slight shift and suggest you keep going forward.

  14. Bradley Halpern
    2 February 2010 at 12:02 pm #

    I haven’t implemented the update yet, so I’m not sure how it functions… but the screenshots looked great. In general, I’ve had to hack a bunch of stuff together previously to make navigation work the way I wanted. If this does what I think its going to, all of my prior hacks can be removed.

    Custom navigation is very helpful! Excellent idea. Great work.

  15. shawn
    4 February 2010 at 9:35 pm #

    I think the concept of integrating it into the theme’s admin panel is absolutely the way to go.

    I host a number of sites on my wpmu install and it never ceases to amaze me how many questions I field on a daily basis. Like everyone else I used to rely upon a lot of plugins like the navigation you built. The problem was in trying to explain to the customer that they had to go into ‘another area’ to edit their navigation then simply having it in the theme admin panel.

    Once I started moving everything into a central location ‘theme’s functions file with nice ui’ the questions really slowed down.

    Not only is it more elegant, but it also means I do not have to add yet another link to the wp-admin bar for the person to remember. Doing it this way, the customer can control everything via the panel itself. Basically what I end up delivering to the customer feels more like a custom cms than wordpress when I do this.

    I do have a suggestion for a future addon:
    How about an array of image uploaders to be used throughout the theme?

    Every theme has images like backgrounds, logo’s etc, yet we still force the user to use ftp should they want to change an image. And they have to change the css or theme file itself.

    It seems to be a great idea to allow a user to either upload a new image or select an existing image in the theme’s image folder for use within the theme. I know that wp has the engine for a single image, but I have never seen an admin panel with an array of uploaders for multiple images. And those themes that do have image upload ability for backgrounds, do not allow the user to select an existing image for use, nor do they allow the user to crop the image to fit the given area.

    anyhow, that’s my idea for the day lol

    • Magnus
      5 February 2010 at 6:52 am #

      Hey thanks for the feedback!

      The image upload functionality is possible, but it’s a double edged sword for us… those that don’t know how to upload an image via ftp and change the css will most likely end up uploading wrong size images etc and create more support. I do think there is such a thing as TOO many options, although some themes might fit the bill better. Digital farm has the ability to upload your own header background, so we might incorportate similar options in new themes :)

      • shawn
        5 February 2010 at 12:54 pm #

        Your argument about users uploading the wrong size files actually helps to make my point. If they don’t resize the image prior to ftp then they have issues. By having the uploaders with the built in cropping dimensions set via the admin, then the user can’t mess it up.

        The ‘default’ wp theme does this already, but only gives a single option for an image upload vs. an array of uploaders which would give theme designers the ability to have multiple uploadable images in the theme admin for use. (background,logo,etc). Also the default uploader does not allow a user to select an existing image from the theme’s image folder.

        This really comes into play for those of us who use ‘mu’ to host multiple client sites as we never give ftp access anyhow. Uploaders would give the admin the ability to let users change images in the theme without having to email the master admin to ftp up an image and change the css.