Need to convert RSS feed dc:publisher to dc:creator

Topics: Business Logic Layer
Jul 14, 2014 at 5:22 PM
Our client is using an RSS merge with Mail Chimp to send out weekly emails to their subscribers. The issue we're running into is that Mail Chimp looks for the author's name for each post in the dc:creator tag however BE (we're using 2.9.1) writes out the author's name in the dc:publisher tag.

Does anyone know of a way, short of altering the BlogEngine Core source code and recompiling, to export dc:creator instead of dc:publisher?

Thanks for your help,

Jul 15, 2014 at 7:56 AM
Hi Scott,

Without touching BlogEngine Core, the only way to do this that I can think of is to create some sort of an extension or a code behind that pulls in the current RSS and just do a search and replace of dc:publisher with dc:creator then the output from that send off to Mail Chimp.

But, the easy quick route would be to just edit this one line at this file:


if (!String.IsNullOrEmpty(publishable.Author))
            writer.WriteElementString("dc", "publisher", "", publishable.Author);

All you do is replace publisher with creator and that is it!

Then you just recompile and then get the Dll that it generated BlogEngine.Core.DLL

Drop that into your server in the /bin folder and that is it.

I would do this locally first with the full source of your current website first.

If you have any custom code that was changed in the Core, for sure you will need the actual source of the core.

If not and you don't have the source and was only using the web version.

Go here:

Now go to your website and get the current version number you are using, if it is not in your theme go to your admin section it is there.

Now with that version number download the source that matches that source.

Then go to the file: BlogEngine/BlogEngine.Core/SyndicationGenerator.cs

Then just change:

if (!String.IsNullOrEmpty(publishable.Author))
            writer.WriteElementString("dc", "publisher", "", publishable.Author);

"publisher to:creator


Now Rebuild

Test it to make sure it all works locally.

If all is well and good to go.

go to BlogEngine.Net/Bin

Get the BlogEngine.Core.Dll

Upload that .dll to your server

That is it and should work.

Should only take about 5-10 mins :)

The other route would take much more time and extra effort on both ends yours and BE.
Jul 24, 2014 at 1:16 PM

This worked beautifully, thank you!

Jul 24, 2014 at 10:41 PM
Hi Scott,

smunnpts wrote:
This worked beautifully, thank you!
You are welcome and I am glad that it worked for you!

Have a great day!

Brian Davis