Tag Archives: wordpress

SharePoint Online Public WebSites – Replace with WordPress

Before, and Now

Earlier iterations of SharePoint Online / Office365 included a public site. This was a simplified version of a site collection, a simple content management solution that produced a ‘brochure-ware’ type site. Microsoft announced that these sites would be going away and in March ‘15 new public sites could no longer be created. Existing sites could continue for the time being.

The latest information on these changes can be found here:
https://support.microsoft.com/en-us/help/3027254/information-about-changes-to-the-sharepoint-online-public-website-feature-in-office-365 

Pay particular note of the important dates listed in this article. Public sites can be extended, but will eventually be deleted.

The original public SharePoint site was intended to be a ‘brochure-ware’ type solution: Still based in SharePoint and easy to update, but really just a few static pages. As with anything in SharePoint, users figured out how to hack and pick it apart into something more. IMO something beyond what Microsoft intended. For whatever reason, public sites were officially deprecated. So, time to find an alternative.

Moving forward

Microsoft does have info for migrating to partners and hosts:
https://support.office.com/en-us/article/Migrate-your-SharePoint-Online-Public-Website-to-a-partner-website-cd0b5af5-d23f-4195-801e-145ec62604b3?ui=en-US&rs=en-US&ad=US 

For my particular needs, I’m going to replace my SharePoint public website with WordPress. I’m already using it for my blog and you can easily create static pages. The management of pages is very easy. The platform is extensively used – both as a hosted option from WordPress itself, and through many hosting providers as a service. Once WordPress is set up it’s extremely easy to update. I can also use the blog capabilities later if needed. Because of the popularity of the platform, there are also a plethora of plugins that offer additional functionality – like embedding other blogs.

WordPress Basics

I don’t want to get into too much “how do you use WordPress” as there are plenty of great resources out there. For this use case I’m going to point out details that were useful to migrate from SharePoint public website to a WordPress solution.

Setup and hosting

First, you need to find a place to host your WordPress site. The easiest is probably WordPress.com, but there are plenty of third party web hosts that are set up specifically to host sites as well. https://wordpress.org/hosting/ You can also install WordPress yourself. Or, you can host WordPress on Azure.
https://channel9.msdn.com/blogs/Azure-in-Information-Systems/How-To-Create-A-WordPress-BlogSite-on-Microsoft-Azure 

If you’ve got an existing site, you’ll likely get your site set up on a temporary address – an Azure address, a WordPress address, or something specific from your host – before configuring your actual domain name to point to it. More on that later.

Plugins

Once you’ve got the main platform installed, you can take a look at plugins. I’ve got three main plugins activated on my site: Akismet, Jetpack, Hide Title, and WPtouch.

Akismet is primarily for spam protection. If you have comments enabled, you’ll want to use Akismet to keep spam comments in line. It’ll block many automatically and flag others for review. If you’re only using the brochure-ware features – static pages – of WordPress and not using the blog, I’d just turn comments off. This also makes Akismet not needed.

Jetpack is a plugin from WordPress.com that extends features usually only available on WordPress.com hosted sites. I like to use the site statistics, but Jetpack also brings a contact form as well.

Hide Title was used to clean up the static home page by hiding the default page title. As a blog it’s nice to have the page title displayed, but as a home page you want to see the name of the blog.

WPtouch Mobile enables a mobile-friendly version of your site without having to do anything else.

Migration of content

Next, you will be bringing your content over or creating new content. In my case it had been more than long enough to review and update my content at the same time. Regardless of the status of your existing content, it’s likely best to start by inventorying pages, content, and any functionality.

Create pages and navigation links in WordPress. (plenty of info on this out there…)

By default, a WordPress site is set up for blogging. You can easily switch the configuration to look more like a non-blog site with a static home page. Follow the directions here for creating a static homepage rather than the normal blog home page.
https://codex.wordpress.org/Creating_a_Static_Front_Page

If you were using a contact form as part of that SharePoint public website, you can easily replace it with a Jetpack contact form: Create a Contact Form
https://jetpack.com/support/contact-form/ 

Be cautious of cutting and pasting content as odd HTML can be brought across. I ended up switching back and forth between the Visual editor and ‘Text’ editor (where you can see HTML) to clean up the tagging. The main issues I saw were with <div> tags causing weird spacing. Once I cleared those out things went much easier.

Themes. Depending on the theme you choose, you might end up splitting content across a few more pages. I found that the theme I used took up more space – so looked at logical ways to split text up into additional pages. I’m using ‘Twenty Sixteen’ for the moment – mostly because that’s what I have for my blog. I may change it out to get a slightly different look.

Flipping the switch

Now that the site is up and configured and content has been migrated, updated, or created – it’s time to get the domain switched from O365 to the new site.

IMPORTANT – if you’re going to continue using O365 for everything else – including email – you are ONLY switching the domain configuration for the public website, not the entire domain. This requires a little more configuration.

Network configuration is NOT my forte… but the documentation is pretty good and the support folks I spoke with were very helpful. The players here include: O365 administration, your web host, and your DNS host. I found the following to be helpful.

https://support.office.com/en-us/article/Update-DNS-records-to-keep-your-website-with-your-current-hosting-provider-2c4cf347-b897-45c1-a71f-210bdc8f1061

https://support.office.com/en-us/article/Add-or-edit-custom-DNS-records-in-Office-365-af00a516-dd39-4eda-af3e-1eaf686c8dc9?ui=en-US&rs=en-US&ad=US#cantedit

https://support.office.com/en-us/article/Create-DNS-records-for-Office-365-at-any-DNS-hosting-provider-7B7B075D-79F9-4E37-8A9E-FB60C1D95166?ui=en-US&rs=en-US&ad=US#bkmk_add_cname

What I don’t like about these settings is needing to wait for them to propagate out through the web. Some settings will appear to be implemented immediately while others might take up to a day to kick in. Not fun for troubleshooting. Be sure to stay on top of the changes though as they can easily affect email as well.

What’s next?

Themes. There are TONS of these available. You can spend all kinds of time looking for and testing WordPress themes on your site.

With all the fun stuff coming from Microsoft along the lines of PowerApps and Flow, are there any cool scenarios that might work with the WordPress site? There IS a connector… Move content from your internal SharePoint site to WordPress? Automate emails from your contact form?

Things to look into. Smile 

Notes

Depending on the details of your public site, you might require more robust content management capabilities or custom functionality. WordPress is only one of many options available. A custom site may be a better fit as well. Having started playing with PHP, Bootstrap, and other standard web tools they could easily spin up a simple site that fits the needs of the site. ‘It depends’ extends beyond SharePoint. Winking smile 

References