We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 2396
    • 101 Posts
    Hi,

    I'm about to redevelop a website that will have a common structure (example at end) but what is, I think, a complex IA requirement. I would be grateful for any thoughts on what might be the best way to approach this using MODX.

    I'm sorry in advance if this isn't clear - it does my head in as well but any help would be appreciated. I'm open to using any of MIGX, Taxonomies, Collections, GetResources, SimpleSearch, url rewriting or other options, and I can pay someone to help me work on this if a suitable solution can be found.

    So... I would like to create what is essentially a regionalised site, but with the ability to aggregate content belonging to another region (or tag) into the currently viewed one, while keeping the current region in the url, and without having to duplicate content across regions.

    I built the current version of the site using MODX Revo and AdvSearch faceted search and/or GetResources to create filters that can aggregate and display content based on one or more tags (e.g. article name, region, market, year) and keywords. It works really well, but the site is currently a combined region, so the resources are all displayed under the one 'master' url anyway (e.g. mysite.com/news/article1). In the new version, I would like to be able to navigate within one region, e.g. mysite.com/canada/news/ or mysite.com/asia/news/ and see only that regions news, but then by using a filter, select 'All Regions', or 'Asia' or 'Canada', to have the resources that have been tagged as such aggregated into the current regions news page, and then the article displayed under the current regions url.

    The difficulty I see is in keeping users in the current region (whether regions are contexts or subfolders). Because although I know I can aggregate Asia news to display (summaries using TVs) within the Canada region, when a user clicks on that summary, they will be taken to that resource and the url will then change to reflect where that resource actually is in the tree - so if I'm in the Canada region but use the filter to view Asia news, then I'll jump from viewing summaries of Asia news at mysite.com/canada/news/ to mysite.com/asia/news/article5 (assuming the doc tree is set up as below) - but I would actually like to view the article at mysite.com/canada/news/article5.

    I hope i haven't lost you, and any feedback would be appreciated.

    The basic MODX resource tree would be:

    Home
    All Regions
    - Projects (all projects alphabetical)
    - News (all news chronological)
    Canada
    - Projects
    - - project1
    - - project2
    - News
    - - article1
    - - article2
    U.S.A
    - Projects
    - - project3
    - - project4
    - News
    - - article3
    - - article4
    Asia
    - Projects
    - - project5
    - - project6
    - News
    - - article5
    - - article6
      • 3749
      • 24,544 Posts
      The only thing that comes to mind is JavaScript that is activated by clicking on the button that selects another region's news. The JS would make an Ajax request to a processor that pulls the news content out of the other resource(s) and returns it to be displayed on the current page by the JS "success" code.

      One challenge I see is making sure the user knows where they are and how to navigate around the site, since pulling in the other area's news may give them the feeling of having "navigated" somewhere when they really haven't moved.
        Did I help you? Buy me a beer
        Get my Book: MODX:The Official Guide
        MODX info for everyone: http://bobsguides.com/modx.html
        My MODX Extras
        Bob's Guides is now hosted at A2 MODX Hosting
        • 4172
        • 5,888 Posts
        I wouldn't put the news and projects as resources into the resource-tree, but into custom-tables and have field 'region_id' with the resource-id of the region, the news or project belongs to. You could have a CMP to manage them and also a MIGXdb-TV to manage only region-specific articles.

        Then you can list filtered news or projects everywhere.
        Have only one news-Detail-Page and projects-Detail-Page within each region, where you ahow the requested article.

        you will need little custom-coding to generate the urls and a plugin, which redirects to the correct Detail-Pages.
          -------------------------------

          you can buy me a beer, if you like MIGX

          http://webcmsolutions.de/migx.html

          Thanks!
          • 2396
          • 101 Posts
          Quote from: BobRay at Jun 19, 2016, 11:29 PM
          The only thing that comes to mind is JavaScript that is activated by clicking on the button that selects another region's news. The JS would make an Ajax request to a processor that pulls the news content out of the other resource(s) and returns it to be displayed on the current page by the JS "success" code.

          One challenge I see is making sure the user knows where they are and how to navigate around the site, since pulling in the other area's news may give them the feeling of having "navigated" somewhere when they really haven't moved.

          Thanks for the suggestion, unfortunately I think this would be quite complicated because it's not just straight content from one, or a few, fields in a document - ideally each article or project would have 'related' content (e.g. related articles, related projects and people) displayed alongside it, so it would actually pull/aggregate content from several resources.

          And yes, you're spot on with the challenge of maintaining a usable navigation structure, this is something I am wrestling with to not only ensure that users know they're in the correct/current section, but whether it even makes sense to display content from other regions in the current one.
            • 2396
            • 101 Posts
            Quote from: Bruno17 at Jun 20, 2016, 01:11 AM
            I wouldn't put the news and projects as resources into the resource-tree, but into custom-tables and have field 'region_id' with the resource-id of the region, the news or project belongs to. You could have a CMP to manage them and also a MIGXdb-TV to manage only region-specific articles.

            Then you can list filtered news or projects everywhere.
            Have only one news-Detail-Page and projects-Detail-Page within each region, where you ahow the requested article.

            you will need little custom-coding to generate the urls and a plugin, which redirects to the correct Detail-Pages.

            Thanks Bruno, I get the basics of what you are saying and I would like to know more. I have sent you a PM if you some time to help.