Orchard module for aggregating pages from external sources.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
Controllers Adapting to Helpful Libraries namespace changes Jun 22, 2013
Docs Adding documentation pages Nov 27, 2015
Drivers Adding import/export logic to driver Jan 16, 2015
Handlers Shifting content parts Jan 27, 2014
Migrations Removing unique constraint on RepoPath because it causes problems whe… May 21, 2015
Models Changing settings editor to make use of the technique where update on… Feb 27, 2014
Properties Code renames to External Pages Nov 4, 2012
Recipes Adding dependency installer recipe Nov 22, 2012
ResourceManifests Adding edit link to BB pages now that Bitbucket has online editing May 15, 2013
Routes Removing unused route name, see: https://orchard.codeplex.com/workite… May 15, 2013
Services Optimizing markdown page fetching queries May 21, 2015
Styles Adding LESS source maps Aug 4, 2014
Views Changing settings editor to make use of the technique where update on… Feb 27, 2014
.gitattributes Adding gitattributes, gitignore and updating Licence Nov 23, 2015
.gitignore Adding gitattributes, gitignore and updating Licence Nov 23, 2015
.hgignore Module skeleton Oct 30, 2012
.hgtags Added tag 0.9 for changeset 575722bb774f Nov 22, 2012
Licence.md Adding gitattributes, gitignore and updating Licence Nov 23, 2015
Module.txt Pointing Module.txt to GitHub repo Dec 6, 2015
OrchardHUN.ExternalPages.csproj Updating the project ToolsVersion from 4 to 12 May 20, 2015
Placement.info Metadata summary is also hidden for markdown pages May 22, 2013
Readme.md Pointing Module.txt to GitHub repo Dec 6, 2015
RestClientExtensions.cs Usings clean-up Nov 25, 2012
StringExtensions.cs .md files with any casing are valid Jan 21, 2015
Web.config Updating Web.Config BTLR-48 May 20, 2015
WellKnownConstants.cs Adding the ability to set the content type of the generated pages Feb 26, 2014


Orchard External Pages Readme

Project Description

Orchard module for aggregating pages from external sources


  • Can aggregate Markdown pages and corresponding files from a Bitbucket repository
  • Options to set up mappings between local urls and repository paths as well as specifying the maximal size of files to be mirrored (if mirroring at all)


The module depends on Helpful Libraries (at least 1.8) . Please install it prior to installing the module!

This module's aim is to provide a tool for aggregating contents from external sources. The module currently can fetch Markdown (.md) files from a Bitbucket repository and save their content as content items.

The initial version of External Pages was demoed on the Orchard Community Meeting.


After installation you'll see a new "External Pages" menu item under Settings. Configure repository access there. For public repos you can leave the username/password blank.

After setting up a repository access you have to click the "Repopulate" button before the content will be auto-updated (this is so you can defer the initial population). After clicking the button the repository's content will be pulled in from the current state.

After the initial population a background task will check for new changesets every configurable amount of minutes (only from the default branch so you can use branches to distinguish between what should appear on the site) and process changesets in order, one per minute. The processing is differential, meaning that modified markdown pages will be changed, added ones created and removed ones also removed from Orchard. The same stands for mirrored files.

When you click "Repopulate" any time the current state of the repository will be pulled in, overtaking changeset processing. This means that if there are changesets in the queue and you repopulate content from the repository those changeset jobs will never be processed. Instead, the current state of the repository will be mirrored, in an incremental way. E.g. if there was a file deleted in a changeset and you repopulate before that changeset can be processed the file won't be removed locally.

Markdown (.md) files are converted to content items.

  • Index.md files are treated as directory indices just as it's standard with webservers. If you open a directory that has an index file the pattern "directory/" (note the trailing slash!) will work.
  • Other files are put under urls the same as their file name and can be access with the "filename" or if they're in a directory then "directory/filename" pattern (note that for files there's no trailing slash!).

E.g. if there's an Index.md and Other.md in the folder Directory, that "Directory/" path will lead to Index.md and "Directory/Other" to Other.md.

See the Version history.

External Pages drives the Orchard Dojo Library and the DotNest Knowledge Base.

You can install External Pages from the Orchard Gallery.

The module's source is available in two public source repositories, automatically mirrored in both directions with Git-hg Mirror:

Bug reports, feature requests and comments are warmly welcome, please do so via GitHub. Feel free to send pull requests too, no matter which source repository you choose for this purpose.

This project is developed by Lombiq Technologies Ltd. Commercial-grade support is available through Lombiq.