Linkhttps://appexchange.salesforce.com/listingDetail?listingId=a0N300000059QxXEAU&tab=r
PricingFREE
5 Users / Year$0
DescriptionA template for setting up a Public Knowledge base using Salesforce Knowledge

See Also

My notes on Knowledge

See Documenting the PKB app

Details

Takes your knowledge base and makes a public site for it. Works really nicely - except if you want multiple brands, where it doesn't work at all. 

Setup

https://appexchange.salesforce.com/servlet/servlet.FileDownload?file=00P3000000HCTKdEAP

Gotchas

Issues

Good Things

Case Study

Branding Knowledge Base - separate knowledge base for each brand. 

Even though I did get this working, I don't think this is the best solution, and I probably would not want to use the PKB App again either. The PKB App allows you to create multiple sites, but then has no mechanism to actually display those multiple sites - I don't get it.

After doing all that I did to get this working, I think the PKB app is a bit convoluted for a simple site to display knowledge and create a support ticket. I would love to see a simplified version of this app, (maybe this one may be suitable) and one that allowed multiple sites. Or I would love an app developer to create an alternative to the free PKB app - I would be happy to get my clients to pay for it.

I will be getting a developer to write us a customised knowledge base solution with a solid code foundation, rather than this "hack" that I have done to get it up and running. I hate doing quick hacks in live orgs.

 

Clone all of the VF pages and append a new site name eg pkb_mobile_brandA:

One page you don't need to clone is PKB_Settings because that is the page to do the settings, and that page allows for having two different Sites anyway. 

Clone the Static Resources and create a new Static Resource with a new .zip or .png file and append a new site name eg pkb_mobile_brandA for the following Static Resources:

Clone the Javascript files and CSS files and rename them with the _brandA at the end (these are Components)

Clone the pkb_controller to pkb_controller_brandA and rename pbkCon to pbkConBA or similar. 

Also clone the pkb_test and rename pbkCon to pbkConBA or similar. 

As another Gotcha, ensure that both PKB sites are set up with Multi-Language Enabled, otherwise the links to articles don't work.  

 Thank you so much to Wendy Schuman who helped me get to this point - see https://appexchange.salesforce.com/listingDetail?listingId=a0N300000059QxXEAU

I'm not sure if I have explained ALL the changes well enough so please get in touch if you want to try to replicate this and you get stuck, but if you find a better way, please let us all know.