We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 33988
    • 110 Posts
    This system would work with MODX Revolution to make it easy to run a large (>5K pages) news/blog site in MODX Revolution.
    Feature list:

    • Stores articles in a custom table.
    • Custom MODX manager page to post/manage news articles
    • -By author, date/issue, category
    • -Searchable
    • Custom snippet to display groups of articles with customizable templates. (i.e. all current Sports).
    • Frontend news submission system.
    • Article search snippet from frontend and backend.
    • Allows custom display tpls via chunks, for article display.
    • Uses permissions system to restrict manager users to specific tasks.
    • -Allows moderation of submissions before they are published.
    • Automatic news archival based on user defined settings.
    • -Customizable archive view. Will probably employ some fancy way to display each issue.
    • Automatic publishing/unpublishing.
    • Calendar page showing pub/unpub dates.
    • MetaX integration.
    • RSS/XML Feeds.
    • Social media integration.

    This add-on would be made available free of use for personal/non-profit use, any site wishing to use this commercially would need to purchase as license and gets the benefit of additional support.

    The commercial licenses would help to fund future development in addition to covering support with setup, usage, and such. This licence includes priority support.

    Note: If you contribute more than $50, I will grant you a commercial one-site licence once the project has completed. If you wish to contribute $500 or more, you will be granted a multi-site commercial licence, which allows you to use this add-on on 20 commercial websites.

    If you would like to contribute to the development of this add-on please visit http://salscode.chipin.com/news-system-for-modx-revo-cmp.

    And probably more than this, but this is what I could come up with at the moment. If you have any additions, feel free to post more here. Based on community response, I will work to get a wireframe mock up in a week or two.
      Sal Sodano
      President & Co-Founder of SkyToaster
      My Website Salscode.
      • 33988
      • 110 Posts
      Thank you to Matthias Conin of http://conin.de/ for your contribution.
        Sal Sodano
        President & Co-Founder of SkyToaster
        My Website Salscode.
        • 29076
        • 615 Posts
        Ah, finally! Thank you. smiley
          I think, thererfor I am! But what I am, and why...?
          • 17249 ☆ A M B ☆
          • 165 Posts
          First of all i want to say i respect a lot the work of others. Kudos for the community and MODx team for making contributing in such an awesome CMF.

          I’m not sure about that as i’m just a newcomer, but i think keeping news content as resources is important for good integration with other Extras like getResources, ultimateParent, Wayfinder, TVs, site wide search, etc. What i’m really looking for right now its an easy way to work with resources in a list view as Batcher does. Let say you have an option for containers to display resources as lists instead of tree view. That would be very helpful with pagination, custom sorting, bulk actions and a search box to find content easily in the manager. If you click on the resource tree on a container flagged as ’listView’ for example instead of editing this resource the default behavior can be to show childs in a paginated list in the right pane instead to expand the tree. (features like custom sort, search box comes in handy in this window)

          Another type or resource i don’t see the point to create custom tables for them are Events. A snippet should handle the presentation, but event data should come from a resource container childs, making good use of TVs for categorizing them and adding extra functionality if needed like to show a gallery (created with Gallery Extra) related to it via a ’galleryalbumlist’ TV once that event has passed and has a gellery album linked to it.

          The same for Polls, Surveys and things like that. I think to create group of TVs to expand the functionality thus converting resources to Events, News, Survey questions, or any other type of content is good for integration with all other Extras out there instead of relaying on a custom table making a bit difficult to work with using standard snippets aimed for resources like getResources.

          Please correct me if i’m missing something that makes this comment a bit silly and innocent as i’ve just started using Revo.
          What you think?



          Pablo.
          PD: Please refer me to another post if something like this has already been answered.
          Just made some phrases in bold to make it easier to read for people only scanning this.
            • 1343 ☆ A M B ☆
            • 2,213 Posts
            The main problem with using documents is actually when it comes to management. The tree works great for managing things, but what happens when you have say 1k documents under blog? You get a long scrolling list that is difficult to manage.

            We have a few large 3k+ revo sites will all the posts living under one container. It’s an absolute mess when it comes to managing these, so we really want to push them to a custom table where they can be better managed (with a custom cmp).

            This does make using resources such as getPages, getResources, SimpleSearch, UltimateParent, etc difficult. As we are only externalizing the content (news, features, posts, etc) you can still use these for the remainder of the site where you are unlikely to be managing thousands of resources.

            I hope that helps clear up the confusion smiley
              Patrick | Server Wrangler
              About Me: Website | Tweets |  MODX Hosting
              • 17249 ☆ A M B ☆
              • 165 Posts
              I’ve addressed your concerns in the first paragraph i think.
              Don’t you think it’s a good solution?
              What else do you think can be better to handle thousands of files in your current environment?

              I think precisely news and posts are the best subjects to use getResources, SimpleSearch against, don’t want to leave them out as this can be easily more than 80% of your content.

              Thanks for helping me understand.
                • 1343 ☆ A M B ☆
                • 2,213 Posts
                Hello,

                The resources will always remain in the document tree, and in the cache unless they are stored in a custom table. The reason for the custom table is to allow for better scalability. How you manage that table is entirely up to you. I suspect news mananger will provide a custom CMP to manage current articles, categories, searching articles for editing, etc. You can use addons such as rowboat, simplesearch, and getpages to interact with custom tables, so nothing says the methods provided would be required.

                The best way I can think of to manage a growing library of resources is to store them in a custom table, granted I am always open to better ideas.
                  Patrick | Server Wrangler
                  About Me: Website | Tweets |  MODX Hosting
                  • 18373 ☆ A M B ☆
                  • 3,141 Posts
                  The general idea behind using custom tables for your non-page content (events, polls, blog data) is that resources aren’t optimized for that kind of data. Sure - you can do it, and make use of general addons available as well as heavy use of TVs, and that’s all great. But when you start hitting the thousands and beyond, you will start noticing there’s some overhead in there that you could save by using a data structure optimized for the specific goal.

                  And if you decide half-way through you want to view your items in a different way, you can do that without having to import all your items into a new system.


                  The MODX API is quite straightforward: here’s a snippet (untested) that would search your blog content for a certain searchterm..

                  $searchterm = 'blog';
                  $query = $modx->newQuery('modBlog');
                  $query->where(array(
                    'blogentry:LIKE' => "%$searchterm%"));
                  
                  $numofresults = $modx->getCount('modBlog',$query);
                  
                  $query->limit($maxresults,$offset);
                  
                  $results = $modx->getCollection('modBlog',$query);
                   
                  $output = '';
                  foreach ($results as $r) {
                    $output .= 'Result found: '.$r->get('blogtitle').PHP_EOL;
                  }
                  
                  return $output;


                  That’s it, and it could be made as flexible as you want in a short amount of time with a bit of php knowledge.



                  You can definitely use resources, and some addons like AutoFolders make it a heck of a lot easier to manage it (you should have a look at that Patrick for that site!), but nothing can beat a custom tailored solution when done right. wink
                    Mark Hamstra • Developer spending his days working on Premium Extras and a MODX Site Dashboard with the ability to remotely upgrade MODX and extras to make the MODX world a little better.

                    Tweet me @mark_hamstra, check my infrequent blog at markhamstra.com, my slightly more frequent ramblings at MODX.today or see code at Github.
                    • 17249 ☆ A M B ☆
                    • 165 Posts
                    Thanks for taking your time to elaborate on this.
                    I take your points.
                      • 6437
                      • 157 Posts
                      Quote from: Mark at May 25, 2011, 01:34 PM

                      The general idea behind using custom tables for your non-page content (events, polls, blog data) is that resources aren’t optimized for that kind of data.

                      I’d argue that are a resource is anything that lives at the end of it’s own URI? Completely agree with regard to polls, events etc. but blog / news items are resources imo - that doesn’t meant that they can’t be handled from a seperate table, but the URI table should remain constant.

                      DM