Since Dries mentioned it in his post, I figured it was OK to open an issue for this.

The Panopoly distribution is the best example of WYSIWYG content layout that I've seen so far in the Drupalshere. Not only is it already impressive (and getting better quickly), my impression is that the architecture provides most of the elements for taking it to the next level. There's a lot of stuff to like in Panopoly, as well as some remaining shortcomings.

While I was happy with the recent revisions to the Panels "edit-in-place" interface, the feature that made me say "Wow" in Panopoly was the previews it provides for content *as it is being added* to the panes... nice.

I only recently discovered Panelizer, but I love it! It allows you to enable 1->n layouts/templates on a per bundle basis and allows these to be overridden on a per-node basis. Moreover, you can lock regions and get pretty darned granular in the control over who can change or add what. Again, it allows you to pick from existing styles or define new, reusable ones, then provides the drag-n-drop and edit-in-place, etc.

I was also surprised and impressed that it incorporates Display Suite as well, but have to admit that I'm still keeping that at arms length for the moment.

The "Stylizer" functionality in Panels is very limited and unsatisfying at the moment, but to me it shows a lot of promise for providing workflows that balance creativity and structure, i.e. where you could have WYSIWYG-style-editing, but on a per-component basis (field, pane, region, page), again by creating/re-using styles... all the while respecting access control, etc.

Simply augmenting the Stylizer to allow the addition of background images and other CSS elements, putting the "*preview* in place" with the Stylizer options in a pop-up and you're already reproducing the pattern of most graphic design software.

Unfortunately, the suite still falls a little short in terms of cohesiveness (so far). I mean, "panels everywhere" is available to help you take control of the whole page, the Panelizer piece gets you control over the main content area, the mini-panels are for complex layouts of sub-elements and the Display Suite integration to act at the field level. They all provide drag-n-drop, but they are not compatible. So you have multiple (overlapping/redundant?) places to enable/manage the use of Panels (e.g. Panelizer page, the Page Manager, the Panels Overview page and Mini-Panels settings pages) and you generally can't drag from one into another (e.g. a pane from a "mini-panel" into a "page"). But even if you could, you'd need some fancy and yet simple means to confirm/modify the contexts, arguments and such along the way.

So, again, the Panopoly distro is the best I've seen so far, but still have a ways to go.

Comments

webchick’s picture

Thanks a lot for the thorough write-up! I've been playing around with Panopoly the past week or so and definitely agree it does a great job taking several existing layout solutions for Drupal and packaging them into something really usable out of the box. I'm hoping that Panopoly and Spark can to a large extent "divide, conquer, and liberally steal from one another" to try and tackle improving Drupal UX. This work is highly relevant to the Blocks and Layouts initiative in Drupal 8, as well.

webchick’s picture

Priority: Normal » Critical

Also, bumping to critical, since this is something the Spark team plans on tackling.

omar’s picture

Also, given that "mobile" is central to the community's strategy, I'd note that drag-n-drop doesn't really work there... at least I haven't experienced dragging and dropping via mobile web-browser yet (but maybe I'm just missing the boat).

One could imagine some alternate workflows, but they are all fairly radical departures from the usual patterns. For example, for moving blocks from region to region one could tap to select object, then tap to select the target location, then tap "move it"; and/or to get pixel level positioning one might tap to select object, play with up/down/left/right buttons, then tap "place here" button. Anyway, just throwing some ideas out there.

Anyway, the main point was to highlight the apparent conflict between mobile and any drag-n-drop functionality.

RobW’s picture

When it comes to core, will functionality like drag and drop content editing be optional? It's definitely a powerful tool and will be a great addition to some workflows, but for some of us who are interested in mobile content addition, a content/structure first approach, and streamlining and directing our clients' editing experience, edit in place and build layout with a WYSIWYG is what we're trying to move away from.

Not trying to start a holy war, just asking if this will take over the Drupal editing experience, or if it will be a group of core modules that we'll be able to turn on and off depending on the needs of our client's sites.

webchick’s picture

Yes, like D7UX, all of these will be optional modules. The Default profile will likely enable them out of the box, but the Minimal profile would not.

RobW’s picture

Sweet, thanks for the clarification.

escoles’s picture

I agree, but/and with the disclaimer that I haven't used it yet, I had been under the impression that Panoply was geard at mobile-first development. Is that mistaken?

Your comment illustrates a need to extend "responsiveness" into new dimensions: we need to be able to make the editing environment responsive as well (in-place editing could be a disaster on a phone, e.g., and conventional drop-down menus are pretty poor on most touch screen devices).

Wim Leers’s picture

Merged #1600924: Form UI with Theme Layout into this issue.

Wim Leers’s picture

Issue summary: View changes

Linked mentioned projects. -- m.m

webchick’s picture

Version: » 7.x-1.x-dev
Component: User interface » Code
Issue summary: View changes
Status: Active » Postponed

This is still on our roadmap to include in Spark, but marking postponed to reflect that we won't be getting to it for quite some time. Priority's on getting D8.0 out the door.

webchick’s picture

webchick’s picture

Diane Bryan’s picture

I just have to add a couple of bits here. Trying out both Panopoly and Spark's layout tool for creating a custom layout for a landing page...

Spark's is easier, more intuitive, less buggy, just all-around superior, hands-down.

In my opinion, this layout tool is the way it should be.