The goal of R7.News project is to provide a streamlined news subsystem for DNN Platform, which would take advantage from tight CMS integration and combinatorial approach to news article content authoring.
The R7.News is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Main features outline:
- Mark news entry with tags and use them to provide granular thematic views.
- Cast any page into news article by placing R7.News.Agent module onto it.
- Streamline new articles creation by adding R7.News.Agent module into the page template.
- Allow users to discuss news on forum.
- DDRMenu integration (display news entries in the menu).
- Keep news article page settings in sync with corresponding news entry properties.
- Export news into RSS/Atoms feeds.
Future releases may also include:
- News sharing between portals inside the portal group.
- Content workflow (at least Draft/Publish).
- DNN Platform v8.0.4.
- Download and install dependencies first.
- Download latest install package from releases.
- Install it as usual from Host > Extensions.
In order to setup discussions for R7.News, you need do the following:
R7.News.ymlconfig file in portal root directory in text editor.
Set proper values for
paramsfor required provider in
discuss-providersection. E.g. if you have some DNN Forum module instance (moduleId=145) placed on page with tabId=40 and you want discussion posts to be created on specific forum (forumId=2), then your configuration should look like this:
discuss-providers: - type: R7.News.Providers.DiscussProviders.DnnForumDiscussProvider provider-key: DnnForum params: ['40', '145', '2'] # tabId, moduleId, forumId
Comment unused providers using
Restart application to apply changes.
To disable discussions, your
discuss-providers section in portal config file should look like this:
Note that you could develop and register your own discuss providers by implementing
IDiscussProvider public interface.
To allow R7.News to use custom discuss provider:
Place a DLL with custom discuss provider class into
binfolder of DNN install.
Register custom discuss provider using portal config file by adding assembly name:
discuss-providers: - type: YourCompany.DiscussProviders.YourCustomDiscussProvider, YourCompany.DiscussProviders provider-key: YourCustomProviderKey params: ['your', 'custom', 'provider', 'params', 'here']
Restart application to apply changes.
If all OK, you'll be able to create discussions for news entries using new provider. If not, see DNN event log for more info about what's wrong.
R7.News provides public node manipulator class for DDRMenu. In order to use it, you should do the following:
- Add Stream module instance to the page, configure it to display required news. Node manipulator will use this module instance settings to get required parameters (like taxonomy terms, "show all news" flag, etc.) The page size setting value will be used as max. number of menu entries for news to display.
- Set node manipulator options in the
node-manipulator: parent-node-tab-id: 77 # TabId of a parent menu node, to which news entries will be added as children stream-module-tab-id: 77 # TabId of a page with Stream module instance stream-module-id: 429 # ModuleId of Stream module instance
R7.News.Stream.Integrations.DDRMenu.StreamNodeManipulatortype name as NodeManipulator setting value in DDRMenu module settings or skinobject parameters.
Remember to check event log in case if something went wrong.
- Uninstall R7.News library package first, this will remove all database objects and data.
- Uninstall R7.News.Agent and R7.News.Stream module packages (in any order).
- Uninstall R7.ImageHandler and R7.DotNetNuke.Extensions library packages, if you don't need them anymore.