[SOLVED] Composer - no content entry form?3 users found helpful
I've upgraded to 5.4.2 and am trying out the Composer for a client's site, to be used for adding news articles. The feature looks great :)
Only trouble is, I can't see anything below the 'Attributes & Content' heading on the write page, so all I can do is specify the page's title and its description. This is obviously broken.
If it matters, I've changed the name of the page in the Sitemap from 'Composer Beta' to 'News' (to make it easier for the client to understand). Other than that, it's vanilla (as far as I know). The page type that I have assigned Composer settings to has a 'Main' area - it's basically a slightly tweaked version of my normal page type which works fine.
Attached is a screenshot of what I see in the Write screen.
Firebug shows up a load of repeating errors, which keep being thrown - here's a selection:
... [jquery.form] isXml=false [jquery.form] Server abort: TypeError: getDoc(io) is undefined (TypeError) [jquery.form] state = uninitialized [jquery.form] state = uninitialized [jquery.form] state = uninitialized [jquery.form] isXml=false [jquery.form] Server abort: TypeError: getDoc(io) is undefined (TypeError) ...
Any help would be much appreciated!
Hope that helps.
Setting attributes isn't my problem - I can't add any content of any kind. My understanding is that the Composer has, by default, a content editing area (regardless of which other attributes are enabled). Mine isn't showing either the attributes (which doesn't matter) or the content entry area (which obviously does).
EDIT: having just looked at another 5.4.2, it looks like Composer doesn't have a standard content editing form for adding page text. Is this right? I thought the idea was to have a Wordpress-like editing interface in the Dashboard?
Found the answer from Tony over here:http://www.concrete5.org/community/forums/chat/composer-in-5-4-2/#1...
For anyone else wondering: the method is to add blocks to the Page Type's defaults, then click them and choose Composer Settings from the menu. In there you can enable them as Composer blocks, and they'll then show up in the Write page of Composer and can be edited.
Works just as it should!
Here is my explanation on how it works:
Composer lets you add pages in draft mode without adding them to the site structure. Perfect for blogging drafts. When you create a page it has to be one of the page type templates in your site. Sadly, you will soon find you won't be able to actually edit any content to a new composer generated page, you can only enter in some meta data. What the !? - this had me scratching my head.
What you need to do is to edit the relevant "page type" template so that it comes with a content block or two. But as we know, by default templates have no content and you manually add content blocks yourself using the concrete5 gui. Thus composer is 'broken' and confusing by default.
To get composer to be usable, you need to add some juicy main content blocks to your default page templates, and tag them as visible in composer. Follow these steps:
To edit a page template
- go to the "Page Type" menu item
- select the 'default' button for the page template you want
- edit the page and add a content block e.g. in the main area
- on the content block, click and select from the popup menu 'composer settings'
- turn the checkbox on and give the content block/field a name
- save, then save the template page
Now when you create new composer pages (of the template type you just messed with), your new content block will show up in the Write page of Composer and can be edited. Yey.
The bad part of this design/system is that by default composer doesn't let you add content unless you jump through the above hoops. The good thing is that once you understand all this, you can specify several content blocks in a template as being available in composer, and those people creating composer content need only see and fill in this subset of blocks.
Hope the above explanation helps someone.
I think a "content" block by default would be a good idea to have on composer. If you don't want it you probably already know what you are doing tinkering with the system.