May 072012

Okay, so now I can finally check the HTML5 box off Suffusion’s checklist. Version 4.2.0 was approved earlier today and it has the following changes:

  1. New Features:
    1. HTML5 and Semantic markup

      I have converted Suffusion from being an XHTML transitional theme to an HTML5 theme. Often when theme developers say their theme is HTML5 compatible, they mean that their theme uses <!DOCTYPE html>. Suffusion does that of course, and also gives you nice semantic markup out of the box. If you are wondering what semantic markup means, I explained the term and the attendant changes in a post in March. If you go through that post, you can see the list of markup element changes as well.

      If you have Custom Styles, make sure you are using the new selectors for them, as per the linked post above.

    2. Extensive Support for Custom Post Types
      I have done two things on this front:
      1. Provided a new page template called “Custom Post Type Archive”: When you create a page, you can assign this template to the page and save this page as a draft. Upon saving you will see a new tab in the Additional Options for Suffusion titled Custom Post Type Archive. In this tab you can pick things such as which post type you want to show, what kind of layout you want for it (Full posts, Excerpts, Tiles, Mosaic or List), what taxonomies you want to show for it, where you want the bylines displayed, etc.
      2. Provided a new set of options under Suffusion Options → Custom Types → Layouts: This is for the single post displays for Custom Post Types.
    3. New Action Hooks
      The following new action hooks have been added:
      1. suffusion_before_post – Executed before every post. This takes 3 parameters: the post id, the layout (blog, tile or mosaic) and the current post index.
      2. suffusion_after_post – Executed after every post. This takes 3 parameters: the post id, the layout (blog, tile or mosaic) and the current post index.
  2. Changed Features
    1. I changed the tile layout / magazine layout / custom layout from a JavaScript-based layout to a CSS3-based layout. This should make sure that the tile spacing is more accurate. Of course, there is IE, which doesn’t support the requisite CSS attributes. For them the JS-based former approach should be used.
    2. I have upgraded the embedded JQuery Masonry script to the latest version.
    3. I have also optimized some of the JS and CSS within the theme appropriately.
  3. Bug Fixes
    Since I released a bunch of patches over the past few weeks, there is only one fix, which is for the bug with respect to duplicate content from the Featured Content section showing up in the posts below.

There are a couple of minor niggles, neither of which is a bug. These come down mostly to my extreme level of exhaustion last week:

  1. I forgot to update the version number that shows up in the back-end. It still shows up as “4.1.5.b4”, while it should be “4.2.0”. This doesn’t affect any behaviour, mind you. It is just something that I missed changing.
  2. I also forgot to update the PO file for translation. Again, the main impact is in the back-end translations and it will not affect your site’s visitors.

A big thank you to the beta testers for this version, Mark et al!

Apr 222012

Version 4.0.7 of Suffusion, released earlier today addresses a minor bug. If featured content was enabled on a tile layout view, and if duplicate display was disabled, the tile layout sometimes got hammered. This version should take care of that.

Do pitch in with your comments about 4.2.0. I am getting ready to push that into the approval queue.

Apr 132012

Version 4.0.6 of Suffusion got approved a little while back. This is mostly a small release with the following changes:

  1. I added the capability to store the generated CSS as a CSS file. If you go to Back-end → Site Optimization, you will see the option to store the CSS as a file, which is the new default.
  2. There was a minor issue with the “Additional Options for Suffusion”, where the contents of the box were overlapping with things like the Media Upload panel. This should be fine now.
  3. I put in a conditional check for loading the JQuery Cycle script, so that if Photonic exists, the script will not be double-loaded.

Enjoy this release and let me know of any additional issues that you find with the beta version.

Apr 092012

As I work away on the HTML5 version of Suffusion, I thought I should release some patches that I have completed in the meanwhile. The first set of patches, released as version 4.0.5 addresses the following:

  1. Menus in “Left Header Widgets” and “Right Header Widgets” weren’t showing as dropdowns. This has been fixed.
  2. The Query Posts widget was not resetting to the original query, resulting in erratic behaviour in some cases.
  3. There was a minor conflict with styles on the post edit screen, wherein some display elements not from Suffusion were getting affected. This should be fine now.

I might release another patch before pushing the HTML5 version into beta.

Mar 062012

Version 4.0.4 was released today. This is predominantly a maintenance release with very minor changes:

  1. New Features
    1. The following filters have been added
      1. suffusion_can_display_category_information
      2. suffusion_can_display_author_information
      3. suffusion_can_display_tag_information
      4. suffusion_can_display_search_information

      Using these filters you can optionally switch off the information displayed at the top for categories, authors etc.

    2. I have added the capability to control the excerpt length for the featured posts widget. Note that this only applies to automatically generated excerpts.
    3. I have added some code so that if you are viewing a page in an old browser (IE 6-8), that gives the root <html> element a corresponding id, like #ie6. Correspondingly I have replaced a lot of IE6 hacks with more elegant id-based choices.
    4. The <body> element gets some new classes, such as preset-1000 or preset-1200 or preset-600 if you are using a preset fixed width setting. This will help you control widths better.
  2. Bug Fixes
    1. Fixed an issue where a menu in the navigation bars was occasionally not rendering correctly because the enclosing <ul> tag was not getting removed.
    2. Fixed an issue that some users were facing for the authorship feature. For the affected users the social media links were not showing up on the author page.
    3. In some cases the options needed to be saved multiple times to be effective. I have fixed this.
    4. There was a small bug with the custom layout display, where if you had a widget area with 1 widget per row, resizing the browser window affected this widget. I have addressed this.
    5. There was an issue where some images would not be shown (e.g. featured content, magazine headlines etc.) unless settings were saved. I have resolved this.
  3. Changed Features
    1. I have cleaned up some auto-generated CSS.
    2. I have made some minor adjustments to the RTL behaviour. Now the header and navigation menu positions get appropriately reversed with respect to the native left-to-right layouts.
    3. In prior versions, disabling Suffusion’s audio shortcode used to prevent the SWF file from loading, but it still included the associated JavaScript albeit in a harmless manner. This has been modified so that no trace of the shortcode shows up if you disable it.
    4. I have changed the “header height” to be a “minimum header height”. This way you don’t have to worry about adjusting header heights if your images are larger etc.

The next somewhat big release will have HTML5 compatibility (and the big release after that will be responsive). I might do a brief beta for HTML5 and Responsive and I will keep you posted regarding the same.

Feb 222012

Thanks to a pretty good beta phase, very few issues were found in 4.0.0. Of course, some issues that are much older than 4.0.0 did come up and they have been fixed appropriately in 4.0.2, which was released today. But before I proceed with details of this release, I would like to point out things that are not bugs but came up in 4.0.0.


  1. If you had tweaked your menu’s CSS to change the height of the tabs or the widths of the drop-down lists, you will need to make a minor adjustment. Basically tabs with drop-downs now get an additional class, dd-tab. You have to add this class to your selector. E.g. if you had this:

     #nav ul ul { ... } 

    … it will become:

     #nav ul .dd-tab ul { ... } 
  2. Another common question on the support forum pertained to inappropriate use of menus. The ONLY right places to add menus for navigation are the navigation bars, not the widget areas in the navigation bars. The menus have to be added in the navigation bars themselves, either by assigning them appropriately through Appearance → Menus, or by adding pages / categories / links through Suffusion Options → Other Graphical Elements → Navigation Bar Above Header (or Navigation Bar Below Header). If you have added menus through widgets in Right Header Widgets or other widget areas in the navigation bars, they will not work.
  3. If you are using a caching plugin, make sure you rebuild your CSS files – I had quite a few queries telling me that the magazine layout was showing an incorrect number of columns per row.

Now for the enhancements in this release:

  1. New Features
    1. In keeping with custom templates, I added yet another powerful capability. For every page you can choose to hide the navigation bars, header and footer. When you use this capability with Custom Layouts, you can create splash pages as you please. Earlier you would require custom CSS for doing this, however that approach had a drawback: you were still executing server processes and fetching the content. Now when you hide the content, the server will not fetch it at all.
    2. I extended the “get image” capability of the theme to fetch YAPB images if available. Now if you have YAPB installed, its thumbnails should be fetched by Suffusion for excerpts, mosaic layouts etc.
    3. A little known but long-existent feature of the theme is the capability to add user contact methods, since version 3.6.6. If you are wondering what these are, go to Users → Your Profile. You will see things like “AIM” for you to add links. In addition to those that exist, Suffusion lets you add a lot more. Visit Back-end → User Profiles for a complete list. Whatever you select from this list will show up under Users → Your Profile. I added “Google” to this list for your Google Plus Profile link.
    4. The above addition is very significant in the context of another feature that I added – authorship. Now, if you have provided links for any of your additional profiles, they will automatically show up in the Author page. Check my page on this site to see what I mean. What this does is, when Google is generating snippets for your site via search, it can automatically pull information about you, such as your picture, based on your Google Plus Profile that you have linked. Note that Google doesn’t guarantee that it will show your picture.
    5. You can now style the title for your Custom Layouts template.
  2. Bug Fixes
    1. There were some small unreported bugs in the Custom Layout options, which I detected and fixed:
      1. It wasn’t respecting the “display title” selection for a particular page.
      2. The rightmost widget in a widget area in the Custom Layout was not being floated right if it wasn’t on the first row.
      3. IE9 had some issues with the display if a widget area spanned multiple rows.
    2. The new featured content settings had a couple of minor issues:
      1. The numbered index in the featured content wasn’t showing any numbers in a unique combination of options.
      2. If overlaid icons were used for Previous / Next, the icons in the static featured content showed a background colour upon hover instead of being transparent.
    3. IE had an issue with the navigation menus showing some unstyled content before popping into place. This has been addressed.
    4. There was a conflict between the 1 Left, 1 Right Sidebar layout and the 1 Right Sidebar Layout, where the maximum width settings were not taking effect.
    5. There was an incorrect label in the Featured Content widget, which I have fixed.
  3. Changed Behaviour
    1. The review team wanted me to include some additional translations for the backend, so I have put those in.
    2. I have moved the Google Analytics script to the <head> section instead of the end of the <body> section. Note, though, that you might be better off using a plugin for analytics, as I cannot guarantee that the analytics script will be the last piece of code before the ending </head>.
    3. I have modified some backend strings for better consistency.
    4. I had introduced a capability to blank out the Widget Area Below Header and Widget Area Above Footer if they had no widgets. It turns out that some plugins strip out all widget formatting, and in such cases the widget area was killing these entities as well. I have changed the behaviour so that the widget areas get removed only if empty.

I have been working with Miguel Koscianski Vidal to build a plugin or some theme capability to make the backend options panel translation capable. Hopefully we can come up with something.

Feb 162012

Finally, after about 3 weeks in beta and 1 more week in the approval process, Suffusion 4.0.0 is out. A lot of things have changed at various places in the theme, and some of these changes are groundbreaking:

  1. New Features
    1. Mega Menus
      This is the first big-ticket addition for this release. Suffusion is now officially the first free theme to include Mega Menu support. To get them working:
      1. Go to Appearance → Menus.
      2. For any top-level menu item in a menu, under “Pick a widget area for a Mega Menu” pick a widget area, and set up the number of columns in the widget area.
      3. Then go to Appearance → Widgets and add widgets to the Widget Area you just selected.

      There are 10 widget areas dedicated to mega menus, which can additionally be used in combination with Widget Logic to give you absolute control over your mega menus.

    2. Custom Layouts
      This is the second big-ticket addition, with benefits outreaching the mega menus. You can now assign a “Custom Layout” template to your pages. This template offers you 5 dedicated widget areas, each of which can be configured to have its own number of columns. You can then add widgets into the widget areas and use Widget Logic to mix and match the widgets. Here is how you make this work:
      1. Go to Templates → Custom Layout template.
      2. Assign the number of columns you require in each widget area, and set up other aspects as appropriate.
      3. Go to Pages → Add New, put in the title, assign it the template “Custom Layout” and then “Save Draft”. In the Additional Options for Suffusion below you will see a new tab called “Custom Layout”.
      4. You can go to Additional Options for Suffusion → Custom Layout and set a different number of columns if you wish for a particular widget area to override the defaults. If you don’t do anything, this will pick up the defaults from Templates → Custom Layout template.
      5. You can also go to Additional Options for Suffusion → Layout, and pick a different sidebar layout if you wish.
      6. Go to Appearance → Widgets, and add widgets to Custom Layout Widget Areas 1-5.
      7. Go back to edit the page you created and publish it.
      8. For additional pages, create a page in the same manner, but to display different widgets use something like the Widget Logic plugin.

      I am working on redesigning the theme page – once done, I will publish an article on how I did it.

    3. Layouts for Pages
      This is the third big feature, but not in the league of the first two. So far if you had to get a different sidebar layout for a page, you would select the appropriate template. E.g. If your blog had one right sidebar and you wanted a static page with no sidebars, you could do this using the “No Sidebars” template. While this will still work, it is being deprecated in favour of the more flexible page layouts. With effect from this version you can go to Additional Options for Suffusion → Layout, and pick an appropriate sidebar layout for pages.
      What is the advantage? It is quite simple: let’s say you want a login page without any sidebars, while your blog has sidebars. In the previous versions you could only select the Login template or the No Sidebars template, not both. But now you can assign the login template and pick the 0 sidebars layout and get your desired results.
    4. Additions to Featured Content
      A host of options were added to the Featured Content (both static and the widget). You can now position the numbered index and the Previous / Pause / Next controls in different places. You can also use icons instead of textual representations etc.
    5. Additions to Query Posts
      The Query Posts widget has some additions that might seem insignificant but are of paramount value. Firstly, you can now use them to display just the thumbnails, or the full contents. Secondly, you have the option to split the widget into its individual posts! Think about it – if you select the option to split, and you use this in a Custom Layout, you can essentially mimic the Magazine layout.
    6. Several Small Additions
      There are several small additions in the code:
      1. I have received some requests in the past to disable the “Additional Options for Suffusion” box in the post editor. I never had a good solution for this earlier, however now you can do it by adding this in your child theme’s setup function:
      2. You can now toggle the breadcrumb display for individual pages from the Additional Options for Suffusion section.
      3. You can force excerpts to always show a “Read More” link. See Layouts → Layout: Excerpt / List / Tile / Mosaic / Full for the new option.
      4. The <!--more--> tag now gets an “excerpt-more” class added to it for customization.
      5. There was earlier an issue with Widget Logic, which didn’t treat conditionally empty widget areas as empty (the ones below the header and above the footer). I have added some script to automatically remove such widget areas.
  2. Changed Capabilities
    1. Code Housekeeping
      Lots of tiny things have been changed to enhance code efficiency and flexibility:
      1. I made some fundamental changes with respect to code structuring, by separating admin functionality from front-end functionality and putting things in different files. This will further reduce page load times.
      2. I have optimized the custom-generated CSS for the widths of the widgets in the Widget Area Below Header and the Widget Area Above Footer.
      3. I have taken out the browser-specific CSS settings to a large extent (e.g. rounded corners and shadows). Further, navigation bar CSS has been trimmed down.
      4. The tile layout and the magazine template have been converted to use divs instead of tables. This now lets you position the “Full Story” button at the bottom of the containers.
      5. I have also fully dropped support for versions older than WP 3.1.
      6. The “Custom Types” functionality has been abstracted out to its own plugin.
      7. Earlier for the Magazine template you had to set the sidebar layout from Templates → Magazine. Now you have to do it from the Edit Page screen, in the Additional Options for Suffusion.
      8. I had to disable the help text display in versions 3.9.4-3.9.6 because WP had deprecated the APIs. I have added the capability back.
    2. Better Option Organization
      Some options have been moved around a bit in the back-end:
      1. New Layouts tab in Suffusion Options
        Settings for “No Sidebars”, “Single Left Sidebar”, “Single Right Sidebar” etc. have been moved to the new Layouts section from the Templates section. Also, other layout related settings such Sidebar 1 and Sidebar 2 positioning options have been moved to this section under “Default Sidebar Layout”, including “Sizes and Margins” from Other Graphical Elements. The last new section here is “Layout: Excerpt / List / Tile / Mosaic / Full”, which has been moved from Other Graphical Elements.
      2. New Typography tab in Suffusion Options
        Some people had reported issues saving options under Skinning → Typography. I have moved all the typography options to a new section to help resolve these issues.
      3. Rearranged Additional Options for Suffusion in the Edit screen
        What was one big section that used to show up under the editor as “Additional Options for Suffusion” has been split into tabs that show up as appropriate for posts and pages.
  3. Bug Fixes
    Version 3.9.6 was very stable and hardly had any bugs. The following minor niggles have been fixed:
    1. The “Continue Reading” string was not showing up for translation.
    2. The CSS class corresponding to the correct colour scheme was not being assigned to the body element.

Do bear in mind that this is a very big release. Suffusion’s beta testers have been thorough with what they have tested, however with great options come scary combinations and scarier layouts. It is possible that in spite of our combined efforts some issues have slipped through the cracks. If so, do let me know in the forum and I will work on resolving them immediately.

If you like this release, please take a moment to thank Mark van Jaarsveld, Miguel Koscianski Vidal, Colin Spencer and several other testers (Reza, Greg, Bob Schecter etc.) for their diligence and continued bug reporting. You folks rock!

Feb 122012
How To

As I write this, Suffusion 4.0.0 has been approved, but hasn’t yet gone live. In the meanwhile I decided to have some fun around this site. I put together a page that talks about the witty side of Suffusion, wherein I introduced a term “Suffu-scion”, for a child theme of Suffusion. I decided to go ahead and create a Suffu-scion and make it available for use.

I have embedded instructions in it and have created a dummy folder structure for your use. Feel free to use this as a starting point for your Suffusion customizations requiring the use of a child theme.

Also, if you have some more lingo to add to the witty side, do let me know.

Jan 032012

Version 3.9.6 of Suffusion got approved earlier today. I had submitted it early last week, however due to the holidays there was a delay in approvals. It fixes one key issue – users who were using custom fields for things like thumbnails or featured images were facing issues with the image not being picked. This should now be working.

An update on version 4.0.0 – I have finished most of the work on Mega Menus: just some stylesheet changes are pending. I have also finished making a lot of other changes. One key thing to note: the page templates “Single Left Sidebar”, “Single Right Sidebar” etc. are being deprecated in the next version in favour of layouts. This doesn’t impact you in any way, however it provides a new dimension of flexibility. E.g. Currently if you have a page where you want to use a custom template, you cannot assign your custom template plus a different sidebar configuration because a page can only get one template. With the change I am providing, you can assign the custom template and a page layout with a different sidebar configuration. There are lots of other nice changes coming by in 4.0.0.

Dec 192011

The patch I had submitted earlier in the week for 3.9.4 got approved today, hence version 3.9.5 is available. This release had the following changes:

  1. If you tried to save your settings having selected rotating images for your header, you would receive a “Fatal error”. You should be good to go now for this.
  2. In the Static Tabbed Sidebar, if you used a custom tab name, that name wouldn’t show. I have taken care of this as well.
  3. Another issue I fixed was one with tall site footers getting cropped.
  4. There is a cosmetic change in the back-end, where nested pages were not showing up in a nested manner.

Please note that I am busy with release 4.0.0 (the first release in a long time when I will be jumping versions). This release should be ready for the new year. If there are other minor issues discovered in the interim I will release patches leading to their resolution.