Description of the need
This is a follow-up to https://github.com/backdrop/backdrop-issues/issues/779#issuecomment-9139... that deserves to be a stand-alone issue.
Keep in mind that we also have the Layouts UI that can be used in place of "Manage display" long term if what we end up wanting is drag-and-drop that includes laying out content on the page. Field configuration (Manage fields) could become the same pattern as adding and configuring a block.
Proposed solution
- An addition to the core blocks API:
- allow some blocks to be marked as "Full-page only"
- An addition to the core layouts API:
- allow some layouts to be marked "Full-page only" to indicate that they include things like header, footer, messages, page title, tabs, etc.
- All other layouts ("Mini Layouts") will provide only regions for elements to be placed. (The default region is required)
- New Mini Layout renderers:
- for edit:
- do not automatically add blocks for messages, page title, tabs, etc
- a modified list of available blocks "Full-page only" blocks like messages, page title, etc, should be excluded
- other changes may also be necessary
- for view:
- does not render any blocks for messages, page title, tabs, etc
- other changes may also be necessary
- for configure template:
- does not use
<header>and<footer>elements or add header / footer regions - other changes may also be necessary
- does not use
- for edit:
- In the Field UI
- On the default UI:
- add a toggle between "Render fields by weight" vs "Render fields via mini layout" (language TBD)
- For the New UI:
- Replace the "Manage display" interface with the edit renderer for mini layouts
- All fields rows should be replaced by field blocks (sans block markup?)
- place these in the "default" region by default
- On the default UI:
Alternatives that have been considered
- Display Suite
Additional information
There are several other modules that could benefit from these "mini layouts", and having a universal way to share them across modules would be ideal. * Display Suite * Layout Paragraphs * Mini Layouts
Draft of feature description for Press Release (1 paragraph at most)
Backdrop now includes...
Recent comments
Thanks Alejandro. That was the clues I needed.
Ubercart - Programmatically add product to cart and straight to Checkout
Have you tried uc_cart_add_item()? You need to provide the nid of the product. Then you can use backdrop_goto('cart/checkout'); to send the user to the checkout screen. uc_cart_add_item...
Ubercart - Programmatically add product to cart and straight to Checkout
No problem, let's see how it evolves. I'd be happy to provide a suggested version if i could. I will keep that in mind and try learn this hook chain hopefully very soon. I will...
File hashing uploads made through TinyMCE