View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
3657 | Composr | core | public | 2018-08-04 22:16 | 2021-03-15 17:23 |
Reporter | Chris Graham | Assigned To | Guest | ||
Priority | normal | Severity | feature | ||
Status | new | Resolution | open | ||
Summary | 3657: Breadcrumb takeover | ||||
Description | Composr is a module-orientated CMS, meaning each module (galleries, news, etc) is a world of its own, with its own breadcrumb hierarchy. We want webmasters to be able to more easily override the native module-based breadcrumbs. Currently you need to use breadcrumbs.xml individually for any screen you're changing the breadcrumbs, which is not realistic for scenarios involving large numbers of CMS-generated screens (entries, categories). Have a new directive that can specify that a page-link is 'taking over parenthood' of certain other page-links. For example: {+START,BREADCRUMB_TAKEOVER,site:catalogues:entry:3} site:galleries:image:5 site:galleries:image:6 site:galleries:image:7 {+END} The data would be stored into a new database table, breadcrumb_takeover: *ID_TEXT pagelink_parent *ID_TEXT pagelink_child LONG_TEXT breadcrumbs The table would only be maintained if the URL of the screen being viewed matched the page-link given as the first directive to the parameter. This is so we know the active breadcrumbs are going to be what we need to save into the table. This table would be queried on any screen view. If there's a match, the natural breadcrumbs for that screen would be replaced with those defined in the new table. Through this directive we make changing of breadcrumbs between screens a templating issues. In the given example as soon as a catalogue entry responsible for certain gallery images is viewed, when those gallery images are viewed (however they're reached - which is critical - because it could be via the XML Sitemap), the breadcrumbs will show under that catalogue entry. In the real world we're unlikely to hard-code in the templates exactly what page-links are associating. Instead we'd use Tempcode to work them out based on some kind of metadata coded into the content model. This new feature would be optional. You'd have to enable it in the configuration, as there is a performance hit. Document it where we document breadcrumbs and about Composr being a 'module based CMS'. | ||||
Tags | No tags attached. | ||||
Attach Tags | |||||
Time estimation (hours) | 4 | ||||
Sponsorship open | 0 | ||||
|
Perhaps also have a symbol which can get a list of all content with a certain tag and of a certain content type. E.g. {$FIND_CONTENT_BY_TAG,news,pentatonix} That way we can automatically takeover breadcrumbs just by linking stuff using tags. |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-08-04 22:16 | Chris Graham | New Issue | |
2018-08-05 14:18 | Chris Graham | Relationship added | related to 3662 |
2018-08-05 14:19 | Chris Graham | Note Added: 0005786 | |
2021-03-15 17:23 | Chris Graham | Relationship added | related to 1162 |