The heartbeat of the Orchard CMS community: blog posts from Orchard-related blogs, scraped automatically. Created by Lombiq.

Blog Posts

  • Generating a static version of my Orchard CMS blog - A Lazy Sunday Experiment

    1/8/2018 11:34:00 PM

    My blog, like most blogs, is pretty simple. There is only one interactive aspect, aside from the entire admin area, and that is comments. And let's be honest here, Orchard's comments are pretty lacklustre. Embeddable comment platforms like Disqus are hugely popular now and so that should solve the comments problem. I originally shied away from comments because I had lofty ideals about my blog being free from third party tracking and not contribute the gradual erosion of privacy across the internet. But I'm now skint so those have all gone out the window, I've added Google analytics, ads, AMP integration and Disqus comments are coming; full on pandering to my nosey overlords. I also cant justify the cost of a web server to host my blog when I could do it for nothing on a different platform.

  • If you've been using Orchardizer to create modules your builds are probably massive

    12/22/2017 12:10:31 PM

    Orchardizer, my extension for Orchard CMS, has an option to create a module for you. Unfortunately, it sets the CopyLocal value for Orchard.Framework to true, which means a huge number of redundant dlls will be added to the bin folder of your module when it is built. The fix is simple, just change the CopyLocal value of Orchard.Framework to false in all your modules. I'm looking into how to change Orchardizer to make that value false by default so hopefully I'll release a fix soon. Ish.

  • Adding custom dependencies into the App_Data/Dependencies folder in Orchard CMS

    12/21/2017 4:53:16 PM

    Because of Orchard's decoupled nature, the standard bin folders don't quite work for Orchard because no project has a reference to all the other projects included in the solution. What this means is that Orchard needs to copy all the dlls from the modules bin folders into another folder, the Dependencies folder in App_Data. This all just works out of the box generally, however if you have a weird dependency requirement this can all fall apart. Several times I have had a folder of dlls that I require in the bin folder that isn't being copied into the Dependencies folder, because it doesn't support this scenario. This means that things fall apart at runtime when I try to access code that requires this folder of dlls exist. I tried for several (stupidly wasted) hours to use an Orchard hook to add this folder. I know that I wanted to use the IExtensionLoader interface but I couldn't work out a way to inject my dependency. I think I know what I needed, which is to add the dependency manually into the Host.config file (this XML file contains autofac config stuff) and add a reference to my module in Orchard.Web. But this seemed a bit long. So I wrote a dirty hack.

  • Manage 301/302 redirects for Orchard content items

    12/15/2017 8:13:32 PM

    I had some problems earlier this year with Google complaining that there were a few links around the internet that pointed to non-existent URLs on my blog, blocking me from getting an AdSense account. So I threw together a tiny module that allows 301 and 302 redirects to be configured from a content items edit page.

  • Christmas-ifying Orchard - 2017 edition

    12/6/2017 11:03:46 PM

    Over four years ago I wrote a blog post about how you could make your blog snow. The code is still available on Codeplex. Yikes. I thought it was time to update it a little. The snow is now responsive and I improved the performance a little. The snow is automatically injected onto the page when you enable the module. As always when I make anything in Orchard, I ran into a few oddities. Firstly, I needed to display my shape at the beginning of the body tag. Shapes in Orchard can have a position, but if it is null, it defaults to before, so you cant put anything, well, before it. So to get a shape in front we need to insert the shape into the list manually.

  • Using AngleSharp to parse a stream

    11/23/2017 1:58:02 AM

    You can parse a Stream with AngleSharp by just passing it into the HTML parser. However, AngleSharp doesn't set the stream position to zero so you get an empty output if you've been writing to a stream and it took me way longer to clock onto that than it should really have done.

  • Dojo Course 2 has been released!

    11/22/2017 4:43:00 PM

    The first Dojo Course was recorded and released in 2013 (not long after Lombiq Technologies was founded) and now we are happy to announce the arrival of Dojo Course 2! The course material has the same foundation (the Orchard Training Demo Module, which has also been upgraded in the past years), but it's updated for the (then) latest Orchard version (1.10.1) and the production quality is also improved. Just like the first generation, these videos were also recorded as part of a university course, but this time host is the University of Szeged, Institute of Informatics. Thanks for having us!

  • Retrieving the full HTML from AngleSharp, including the Doctype

    11/20/2017 9:54:26 PM

    AngleSharp is a pretty sweet document parser for .NET. I was parsing some HTML and making some modifications. All good. Then retrieving the full, modified HTML at the end had me stuck. All the examples I could see said to do it like this: document.DocumentElement.OuterHtml. This worked, except it was missing the Doctype. The correct way to do it is to add a reference to AngleSharp.Extensions and then you get a nice extension .ToHtml(), which is perfect.

Send us new blog feeds

Noticed that a blog's feed is missing from the list? 

We would love to add that to the feed list, so please don't hesitate to inform us on the following e-mail adress: