WooThemes

The WooThemes Blog

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

Subscribe

Canvas as a Framework

43

by Adii Rockstar in Interactive

One of the ideas that has been getting a lot attention of late (after our Open Forum two weeks ago), is turning Canvas into more of a theme development framework, which would empower our developers even further in terms of building 99% of their WordPress-powered websites with Canvas.

Our opinion is that Canvas is a semi-framework (for lack of a better description) already and it should thus not be that hard to include a few additional features & functions according to your needs. Judging by the amazing Canvas modifications you are putting out there, we also don’t believe that it’ll take a lot of work to turn Canvas into a truly amazing, fully-fledged framework.

So this is what we need… We need you (especially the more advanced developers amongst you lot) to tell you us what are the additional features & functions that you think we should include with Canvas.

What would make your job easier? What would make your modifications even more awesome? And what would make you use Canvas for all your WP-powered websites?

We’re looking forward to your suggestions in the comments and we hope to generate a bit of a discussion around all of the suggestions & ideas. :)


Tags: , ,

43 Responses to “Canvas as a Framework”

  1. Scott
    31 August 2010 at 4:42 pm #

    Back end options to easily enable/disable the ability to auto add “like”/”tweet” button to every post. Would be cool if styled to fit theme & give some flavor.

    Add video integration so Canvas is more multimedia friendly.

    VIDEO SITEMAP. I would like to see this framework wide but will take what I can get. Vid is hot & SERPS luv vid maps.

  2. Scott
    31 August 2010 at 4:49 pm #

    I would also like the option for all widget front page. 2 or 3 column option w/3 column being all equal or one smaller widget area preferred. Would be cool if the slider could be used with the setup like that too.

    Integrate social services into comment system so we don’t need third party apps.

  3. Jamie
    31 August 2010 at 5:31 pm #

    A great thing would be to have a tab for each page template within the theme settings page, and within that be able to turn on and off different elements that could be within a page. e.g., turning off the footer widgets on the home page, turn on custom image/video embed section (a la wootube), remove author on posts, etc. per template. It’s those little things that mean I need to either set up child themes or edit the theme code now, making upgrading a hassle.

    Also, maybe being able set up multiple sidebars, for different templates (like we can have multiple custom menus, thanks!), so the blog section could have a different sidebar to normal pages, etc.

  4. Chris
    31 August 2010 at 5:32 pm #

    Just look at Thesis. Not trying to be funny here.

    I have a Thesis licence (don’t use it anymore) but what Chris did with that was really insane in terms of the thing being flexible. His backend was also nicely arranged into 2 pages. The concept behind Thesis was really good and some of what Chris did was excellent – he just went about it the wrong way.

    If you wan’t I can send you a copy for you to get some ideas etc. No jokes. Feel free to not publish this / moderate this if you want.

    Tx

  5. Jamey Warren
    31 August 2010 at 5:34 pm #

    shopping cart integration. ;-)

  6. John Gardner
    31 August 2010 at 5:42 pm #

    I like the idea of pluggable-style components. Being able to override your loop and replace it with my own (via get_template_part() which debuted in WP3.0). Filters or additional options for overriding the display of different components of the theme (woo_post_meta() for example).

    The other missing component is customization documentation. The Knowledgebase and Getting started documentation are great for their purposes, but they don’t show a lot of customizations. Some how-to articles on styling different sections or using filters or actions to completely change some aspect of the theme would really create some inspiration and may take some of the support load off. I’m sure you guys see many of the same “How do I style X?” questions. If there are a many of the same style requests, perhaps a public tutorial would be beneficial to everyone. Even if Woo didn’t do all of the articles themselves but maybe allowed Woo Customers to submit articles of customizations they’ve done, that might be pretty cool as well.

    Those I think are the only things missing from the current Canvas vs a fully-fledged framework. Other things like social network integration and backend control could be taken care of via widgets or via your already included hooks, so I question the usefulness of spending time on that.

    Just my 2 cents

  7. JohnnyPea
    31 August 2010 at 5:43 pm #

    Is it going to be the “framework” or “the parent theme”? :P http://justintadlock.com/archives/2010/08/16/frameworks-parent-child-and-grandchild-themes

    Keep it mind it should be clean, fast, easily extendable = lot of useful action and filter hooks ;)
    Good luck anyways.

  8. Devin Price
    31 August 2010 at 5:57 pm #

    I don’t know that Canvas needs the complexity of something like Thematic. There’s a steep learning curve to find all the hooks and filters in many of the frameworks- and if you can keep Canvas light while still being fairly flexible I think that’s great.

    A few things:

    We need the option to be able to unhook all the stylesheets, including effects.css and ie.css, and be able to add a new one (in case you want different IE7 stylesheet in your childtheme). In the past I’ve just put header.php in my child theme, and that also works- but it seems that would be fairly easy to do.

    I believe we can already override the options panel, but it would be nice if we could just unhook or override certain panels of it rather than creating a completely new one.

    We should be able to easily filter the metabox array.

    Something I work with a lot in Thematic is sidebars. I know we can register additional sidebars through a child theme, but we should also be able to set their order and be able conditionally load them on pages (so for the home page, I can load my home page sidebar, but all other sidebars are normal). That is not a simple to do right now in a child theme.

    I don’t if other frameworks do this, but we probably need to option to remove page templates. For instance, there’s no sense in giving the user an option to use a Magazine template if those options have been stripped from the options panel and there’s no styles for it.

    I’m sure I have more, but I’ll leave it at that for now.

  9. MJ Stapleford
    31 August 2010 at 6:09 pm #

    I think if you had layout options that could quickly make a website that looked less ‘bloggish’ for example having the appearance of Optimize and Inspire would take a fair amount of work to make something as stylish and functional from a business perspective with the Canvas theme / framework.

    I really like the idea of Canvas especially the idea of expanding it further but I use other themes over Canvas like Optimize and Coffee Break as it would take me too long to develop the current version of Canvas into something as attractive and suitable for a business purpose as the alternative themes.

    I think this design / website purpose rather than blog purpose side of the development for Canvas would really make Canvas a must for most projects. The ability to do so much with the Canvas theme already is great so adding this additional development would really be perfect.

  10. Gavin
    31 August 2010 at 6:28 pm #

    Comment all the code, this is a great help when customising the themes. some have great comments, but not on the actual code, like what the loop does what the woo parts are etc..

    for beginners anyway

  11. Rob
    31 August 2010 at 6:32 pm #

    CUSTOM POST TYPES / TAXONOMIES
    —————————-
    Some built-in functionality for creating custom post types / taxonomies and managing how they are displayed in the dashboard admin would speed-up development time (as opposed to relying on plugins or diving into functions.php).

    EASIER WAYS FOR CLIENTS TO EDIT SPECIALIZED PAGE CONTENT
    ————————————————-
    Another challenge I face is how to give clients a useful and relatively safe way of editing page content that’s been styled to display in a grid-based layout with multiple columns… without exposing them to shortcodes or presentation-based html.

    What I’d like to accomplish is some kind of “custom PAGE type” / “custom PAGE taxonomies” where my client would edit content in fields corresponding to “layout blocks” on the page’s layout grid – leaving all the styling and positioning to the CSS and the template. It’s not a perfect solution (the client could still try to cram too much stuff into a column and break the layout), but at least they wouldn’t be editing confusing shortcodes or html related to layout.

    Maybe other developers have solved this issue already? If so, I’d love to learn how you’ve approached the solution – I’m pretty much in the dark here and eager to learn.

    • Kirby
      31 August 2010 at 9:12 pm #

      +100

  12. Jamie
    31 August 2010 at 6:50 pm #

    YES! That. Exactly what Rob said. The main problem I’ve had is trying to set up a customised layout for clients but being left with a load of HTML that they don’t understand in the editor and the risk (and reality) of them breaking the layout.

  13. robert phillips
    31 August 2010 at 8:47 pm #

    Not wanting to contradict Devin, but….

    A modest number of hooks which users can use without having to write functions, like the”Easy Hooks” or “Open Hooks” of some other themes.

    Wouldn’t add much overhead, and would make lives much simpler.

    But I agree…not a gadzillion hooks and filters.

    %%robert

    • Devin
      4 September 2010 at 7:06 pm #

      No, I think we’re on the same page. Some frameworks have options to filter each individual item in the post meta header (for instance), and I think it would be fine to just have that be an easy hook. There’s no need to have a super granular level of contol if it adds a ton of abstraction to the code.

  14. Joel
    31 August 2010 at 9:53 pm #

    1. Support for more types of slide transitions for the featured thingy, combined with it (the slider) having Custom Posts abilities instead of tags, like you have done with a couple other themes lately.

    For inspiration: http://aspire.makedesignnotwar.com/themes/wp/mu/wpmu/

    2. Built-in Facebook “Like” button, Tweet button, FB page button, Digg button, Twitter button, LinkedIn and RSS button. Give us the ability to toggle which places they are shown. A couple of built-in places could be begging of/end of post, in sidebars, on Frontpage, on pages etc.

    3. Improve the slider so that it can also show embedded video (from ex Youtube and Vimeo).

    4. Ability to choose the with of the slider, either fullpage or custom.

    5. Typekit support!

    6. Automatically combine, cache and compress CSS/JS/Image. GZIP datastream compression support. Combine images into CSS Sprites. Data URI support.

    More inspiration at: http://yootheme.com/blog/item/root/new-warp-55-framework

    7. Ability to force how many lines of text is displayed for post teasers (ex on the frontpage). Currently, posts on the Magazine frontpage of the Canvas demo isnt aligned with each other, making the layout a bit messy. :)

    8. Ability to toggle “Show Comments” on frontpage “on/off”.

    9. Breadcrumb support.

    Just my 2 cents.

    Regards
    Joel

  15. Blake Imeson
    31 August 2010 at 10:05 pm #

    If you want to do any serious changing of the menu appearance you have to turn to adding custom css. It would be nice if there were some quick styles to change the appearance of the menu in the backend.

  16. Jon
    31 August 2010 at 10:13 pm #

    I still think it needs to provide seamless support for TypeKit or some other Web type solution. Adding the available type options to all the dropdowns. Also, hooks and a friendly way to interact with them a la Genesis and Hybrid would be lovely.

  17. Mattias
    31 August 2010 at 10:25 pm #

    I would like an function to disable the nav-bar. If disabled it should remove the links but keep the lines.

    Also an option to remove the arrows in the business theme slider function.

    Maybe have the slider function on a 3-col template: http://www.kapstadenresor.se/

  18. Alexandru Vornicescu
    31 August 2010 at 10:59 pm #

    I like how your site WooThemes work, would like to see such theme in the list, that have custom widgets, post temaplates, bbpress and amember theme.

  19. Don Platon
    1 September 2010 at 12:55 am #

    Take a look at Impact Page Builder, http://impactpagebuilder.com/. Right now Impact sits outside of a theme so all of the pages need to be styled to match the rest of the theme. Integrating this within Canvas would be a great way to go. I was considering buying Genesis but it appears I am going to have a long relationship with Woo. Still checking the news everyday to see who makes the first deal to add Carrington Build functionality. I have a couple of sites that I would move right away.

  20. nahum
    1 September 2010 at 1:03 am #

    I don’t usually comment but I saw this as an opportunity to ask for theme-options for layout customization of the wp-admin backend(a canvas-admin theme) I’ve switched from using freshnews to canvas now, fairly easily so I’m learning with canvas and loving it. but one of the things I see around is the need for “front-end” options and I’ve always wondered why themes couldn’t come with “themes” for the backend, giving us that “frontend” feel in wp-admin and still be able to keep all the wp features. love to see an options panel similar to the one existing on canvas, but for customizing the backend skin to look like the frontend site. If not another panel, an option to use the customizations on the backend too. I always thought Canvas would be perfect for something like this. cheers.

  21. svenaldo
    1 September 2010 at 3:08 am #

    more than 2 columns in the blog area (current magazine style). By this I mean like a grid layout (gallery style) but not just as a gallery.

    I think many people (me included) would like to display all blog archives like the gallery set-up already included in canvas with some added decription/date/catergory/comments below the thumbnail image (like groovy videos archives if you like).

    I’ve managed to do it myself but who knows if ive made any errors with any of the code!

    This Enabling easy viewing of many posts in a small space and also adds a non-blog feel to the website.

    Hope I explained that clearly!

    Sven

  22. Wes
    1 September 2010 at 4:57 am #

    Support for Buddypress.

  23. Matthew Anderson
    1 September 2010 at 6:17 am #

    I use Canvas for every one of my sites in a multi-site setup of WP. It would be unbelievably great if there’s was some sort of built in feature to share content, mainly posts with the media in the posts across all of the sites in the network. So for example, all of the shared sites that a person has user access to, show up in the post editor and the author can choose to broadcast that post to other sites on the multi-site network!

    Would like to see some multi-site things like that in the themes and in particular, Canvas!

    Thanks!
    Matt

  24. Josh Long
    1 September 2010 at 12:23 pm #

    I would like to see a strictly business canvas theme. (not just the static business page) It would help more of your designer clients make more money creating sites for businesses. I also like the all-widget option mentioned above, sites like Alltop & Tutsplus come to mind. Thanks guys, keep up the Woo goodness. You’re work is really defining an industry!

  25. Adrien Crivellaro
    1 September 2010 at 1:26 pm #

    BuddyPress integration will be realy cool !

    • Donald Thomson
      2 September 2010 at 4:50 pm #

      I second the Buddypress idea.

  26. Matt Gibbons
    1 September 2010 at 4:00 pm #

    I think that full, all-out commenting of the code would work wonders – the style.css is wonderfully commented, but the other templates and stuff are not –

    And maybe some sexy documentation, and visual .css guides (similar to gravity forms css guide) would be a great help in helping people customise.

  27. Gita
    2 September 2010 at 3:31 am #

    I would like more customization for sidebar widget on each page.

    what I mean is if there are two or more widgets that can be used for specific pages on the sidebar it will change the layout of every single page At present canvas business has a sidebar for home & another for the rest.
    Also the home page below the sliders could be widgets – boxes
    that can be shifted or added as per need – more flexibility in layout
    buddy- press integration will be great.
    This is my most used theme – as I can customize it to my hearts content.

  28. Mansoor
    2 September 2010 at 12:44 pm #

    I would definitely second the having a customization of sidebar widget, with specific widgets for specific pages.. That will be fantastic…

  29. James Lee
    2 September 2010 at 4:30 pm #

    I don’t qualify as an expert – but I come up with ideas that would take an expert to implement all the time, so here goes on my wish list:

    1) Social integration (FB like / Twitter / etc.).
    2) Built in footer hacks for 2 or 3 columns instead of just the default 4.
    3) Image thumbnails… need to totally revamp this. If you have someone who is doing a throw-away image because they heard it helps to have pictures and text, the current solution is fine. For people who want to truly design their output, the current solution is inelegant, messy, and completely misses the boat. I recognize this is only important to a subset of the users, but it’s so important to those of us who need it.
    4) Loop customizations. I’ve managed to hack a modified mullet-loop for my home page, but it’s not where it needs to be yet.
    5) Easily customize or eliminate “Read the full story” and “Comments” – with the ability to mod them on full content v. excerpt and depending on the type of page which serves them (home page, category, archive, etc.).
    6) Just a little more SEO control for category pages (I know – I’m the only one who ever asks for this): custom text, ability to add images, and custom meta.
    7) Documentation: I would totally get involved in a Canvas wiki. Some of what I’ve learned has been hard to learn, and as you grow, there will be other people who can use it. I’m sure there are other users who fill the same. A wiki might make a lot of sense here…
    8) I think hooks and filters are important. I come down on the side of having a LOT of options – the more the merrier. Especially if we have a support wiki we can maintain and update. :)

    • Don Platon
      2 September 2010 at 7:38 pm #

      I wonder if a wiki would be easier to use than the support forums. Saving up for a Camtasia licence. It might be a good idea to give back a few tutorials to the community.

      • Vickie
        5 September 2010 at 12:13 am #

        Agree with James & Don about a Wiki / documentation. I’m a beginner and not looking for serious customisation. People have done and asked what I want already but it’s difficult to find the answers from searching the forum …so I end up raising new posts. Would be helpful if the basic theme doc’s were a bit more detailed and included more video.

        The support/responses here are great but it would be easier for Woo and us basic users if we could just follow the documentation as unless there’s a bug it’s usually been done before.

  30. Schaeffer Somers
    2 September 2010 at 4:42 pm #

    I’ve been tempted to switch from the Woo ecosystem to CarringtonTheme.com for the Build functionality. Perhaps you could license Carrington Build.

    • Robert Patterson
      3 September 2010 at 5:52 pm #

      I haven’t been tempted to switch to Carrington theme, but I lust after the Carrington Build as it might dovetail with Canvas. I’ll second the suggestion of melding the two.

      • Schaeffer Somers
        3 September 2010 at 7:40 pm #

        Carrington Business with integrated Build is appealing. Build can be integrated into non-Carrington themes. I would pay more than typical woo fee for the added customization capability.

  31. Frank McClung
    9 September 2010 at 5:53 pm #

    I second the thought of a layout module builder like Carrington Build integrated into Canvas. I think this would give designers who are not developers a powerful visual tool to work with Canvas.

    • Matthew Guay
      9 October 2010 at 5:50 am #

      If something like that was added to Canvas and it kept the same price, that would be absolutely awesome.

  32. Anthony Lepki
    27 October 2010 at 8:53 pm #

    Yes. Converting from Thesis, I have found Canvas to be a treat to work with.
    Sidebar widget customization would be great. I’m currently using the functionality on another theme with great results. Being able to chose which widget or a page/post basis.

Trackbacks/Pingbacks