HTML Logo by World Wide Web Consortium ( Click to learn more about our commitment to accessibility and standards.

Moving forward with Composr

ocPortal has been relaunched as Composr CMS. ocPortal 9 is superseded by Composr 10.

Head over to for our new site, and to our migration roadmap. Existing ocPortal member accounts have been mirrored.

Drag and drop block layout in CMSs

Drag and drop block layout in CMSs A few CMSs have some really nice block layout tools. I'm thinking Contegro, Percussion, and Wordpress (the former two are very expensive commercial ones, but we track everything).

Because we're on a bit of a usability crusade, I'd really like to implement it for ocPortal. However, when I actually think about it, it is not a model that actually works for anything but trivial cases. Whilst we're trying to make ocPortal user friendly, we're not trying to dumb it down – flexibility is still a very important goal.

A few examples of why it would not work:
  • These tools let you set up a grid and drag stuff into it. What if your blocks don't fit in a grid? There are lots of ways to lay out a page, and a strict grid is not what you want in most cases. There's nothing to say the blocks are all going to have the same width and height.
  • What about fluid layouts?
  • How will it degrade to look on a mobile phone?
  • The layout tools often render the block, with a toolbar attached. Simple templating/CSS could easily completely corrupt how the toolbar renders.
  • What if some blocks only show for some users? There's no way to put more advanced contextual coding on, such as permissions.
  • The tools will often have a little edit button that flips them over in a fancy way, to represent an edit form. However, ocPortal blocks can be quite advanced, with more options than could fit on the size of the block.
  • What if you want more than one instance of the same block. These tools usually work on the basis of you dragging them into the page from a pool, then they disappear from the pool.
  • The demos for these systems usually have great looking pages, where the blocks all flow into each other in a really pretty way. If you just drag blocks around, starting from a clean slate, there's no way it would look so good in reality. It's always going to require careful design of how things come together from components into a whole.
  • What about authoring accessibility? A pure drag and drop system is not accessible to quite a few users.

So, with a heavy heart, it's not something I think we can practically do. Some of these issues can be worked around, but the end result would be useful to nobody. It's a shame, because these systems look so cool!

View all


There have been no trackbacks yet