WordPress is open source CMS software used by many on the Indieweb as well as a blog hosting service.
There are two "flavors" of WordPress (.org and .com):
- WordPress.ORG hosts the open source software that one can self-host on their own (or a rented) server and freely configure to set up their website
Current estimates are that WordPress powers approximately 26.4% of sites for which the content management server is identifiable. Some of this is due to the fact that it is very backwards compatible.
In most of the documentation presented on the Indieweb wiki, it's presumed that users are using the self-hosted version from WordPress.org, but this doesn't mean that one can't utilize WordPress.com to build an IndieWeb site. Users should use care to distinguish which version they're using and which instructions they're following.
Because the wiki page for WordPress has become relatively large, for ease of use it has been broken up into several sub-pages which include specific information on the following topics
- 1 Getting Help
- 2 Getting Started
- 3 Plugins
- 4 Themes
- 5 Bookmarklets for Desktop
- 6 Mobile
- 7 Development
- 8 People using WordPress
- 9 POSSE to WordPress
- 10 Security and Spam Protection
- 11 Criticism
- 12 WordPress.com hosting service
- 13 See Also
If you're interested in jumping into the IndieWeb, and you've chosen WordPress as your tool of choice, great!
If you do not have a site... We'll assume you already have your own personal-domain. After that, you'll need web hosting. There are plenty of good options. WPEngine is one of the best for both beginners and advanced hackers. WordPress.com's hosting service is solid and easy to use, but limits you to pre-approved plugins and themes.
Once you've got a domain name, hosting, and installed WordPress head over to Getting Started on WordPress for a simple step-by-step summary on getting started with Indieweb on your WordPress site.
If you're a more advanced user/developer you might also take a look at Advanced WordPress Set Up or read several pages here to plan out what functionality you'd like to add and how best to add it.
Sometimes documenting and thinking through your itches can help to determine which pieces of functionality you'd like to add. There are a large number of functionalities one can add to a WordPress site and multiple ways of doing it depending on your level of comfort with code or your ability to add and configure plugins. Some plugins may also have dependencies. Because there's so much to absorb, we recommend people take the time to read through some documentation, the functionalities available, and determine what works best for them. One doesn't necessarily need to do everything or add everything in one day, so feel free to take your time and think through what you want/need--remember it's your personal site, so build it for what you need and what you'd like to accomplish on the web. Keep coming back and adding pieces incrementally based on your needs and level of ability, and remember there are lots of others doing the same thing who can provide help and encouragement if you need it.
Individual articles bloggers have written about setting up their sites with indieweb support:
- 2014-08-30 by User:Techlifeweb.com
- 2014-10-02 by David Shanske
- 2017-03-07 by Timo Reitnauer
- 2017-03-30 by Daniel Goldsmith
- 2017-06-17 : IndieWebifying my website: part 1, the why & how (archived)
- 2018-01-13 : A Self-Hosted WordPress Blog with Micro.Blog (archived) is specifically about linking WordPress to micro.blog.
- Chris Aldrich maintains a collection of IndieWeb related articles at http://boffosocko.com/research/indieweb/
- Add yourself here… (see this for more details)
Keep in mind that in late 2015/early 2016, the workflow for adding Indieweb plugins changed relatively drastically with the introduction of the Indieweb Plugin, so use care in following details written prior to that time. Novice users should be aware that one may also find Indieweb related plugins on github which can conflict with or duplicate functionality in the plugins included in the Indieweb Plugin.
Other articles can also be found scattered throughout the wiki on pages specific to smaller pieces of functionality.
There are many good WordPress plugins. The plugins link above outlines some recommended for Indieweb use and by Indieweb people.
The Indieweb Plugin is a plugin that helps you establish your IndieWeb identity and helps you install various Indieweb-themed plugins. It is designed for newcomers to quickly get up and running.
One of the benefits of WordPress is a huge variety of pre-made and customizable themes available as well as the ability to create your own from scratch. For security, it's recommended that one use the official Wordpress Theme Directory.
Presently, many IndieWeb technologies, functionalities, and other services rely on microformats 2 support, which not many themes currently have. There are many methods to get around this temporary problem. For ease-of-use out of the box, many sites use either the SemPress theme or the Independent Publisher theme.
For a more comprehensive discussion of WordPress themes for use in IndieWeb, please see WordPress/Themes.
Bookmarklets for Desktop
One big IndieWeb raison d’être is using your own web site to easily reply, like, repost, and RSVP to posts and events. You do this by annotating links on your site with simple microformats2 HTML. Having said that, most people don’t want to write HTML just to like or reply to something. To make some IndieWeb actions easier, one can try out any of the following Bookmarklets or bookmarklet-type schemes:
- Matthias Pfefferle & Ryan Barrett: IndieWeb Press This plugin based on this post
- Peter Molnar: Extending Press This in WordPress to support indieweb reply, like and repost
- David Shanske: indicates that those who use Post Kinds can create a pseudo bookmarklet with the URL scheme http://www.YOURSITE.com/wp-admin/post-new.php?kind=like&kindurl=@url or http://www.YOURSITE.com/wp-admin/post-new.php?kind=repost&kindurl=@url where the variable "@url" is the permalink of the post. The post kind is then set appropriately as well as the referenced URL which then does the embed
- Scott Kingery: Bookmarklets for #Indieweb Favorites and Retweets
For ideas on using WordPress for the IndieWeb on mobile see also Posting from mobile devices
Several projects are actively under development for use in WordPress. Plugins/themes considered complete enough for widespread use will appear on this page or on WordPress/Plugins.
For common conventions of data storage in WordPress to ensure interoperability, see WordPress Data.
For Core Development, brainstorming on development of Indieweb themes/plugins for WordPress and discussion of common conventions to ensure interoperability, see WordPress Development.
Most plugins are actively developed on github and welcome issues, comments, suggestions, and pull requests, so feel free to visit and participate there as well.
People using WordPress
People using WordPress on their primary or other sites as well as people who formerly used WordPress.
POSSE to WordPress
Once can actually POSSE entire posts from a self-hosted WordPress (.org) installation to a WordPress.com site using WordPress Crosspost.
POSSE reply to WordPress
It's possible to post a reply to a WordPress blog post on your own site, and then POSSE your reply to the WordPress blog post's comments section, as well as POSSE your reply with threading to anywhere that WordPress blog post itself was POSSEd to, e.g. Twitter. Be aware that POSSEing comments to another WordPress blog will often also trigger a pingback/trackback if the site supports it.
Indie Web Examples:
Tantek reply POSSE
Tantek Çelik has started experimenting with manually POSSEing reply posts to WordPress blogs to their comment sections. E.g.:
- original reply: http://tantek.com/2014/255/t2/well-deserved-talented-known-minor-correction
- manual POSSE comment: https://gigaom.com/2014/09/11/indieweb-advocates-launch-known-so-bloggers-can-be-social-and-still-control-their-content/#comment-1483187
- semi-automatic POSSE tweet @-reply: https://twitter.com/t/status/510633038062309376
Aaron Parecki occasionally manually POSSEs reply posts to the comments section of WordPress blogs. E.g.:
- original reply: http://aaronparecki.com/replies/2015/01/13/2/indie
- semi-automatic tweet reply: https://twitter.com/aaronpk/status/555106750433869824 (not fully automatic because required finding the @gigaom tweet permalink manually)
- manual POSSE comment: https://gigaom.com/2015/01/13/ind-ie-scales-back-focuses-on-heartbeat-social-networking-client/#comment-1513998
Security and Spam Protection
WordPress is often targeted for attacks and spam due to its popularity. It is important to keep your installation updated and take some basic steps to protect yourself.
Problems with and criticism of using WordPress software from an IndieWeb perspective.
ComplexityThe apparent complexity of using and maintaining WordPress has gotten bad enough (or people have gotten tired of it enough) to make people write plain HTML instead
@kevinmarks @t ive resorted to writing blog posts by hand (html and all!) because i hate wordpress. been looking into hakyll tho
Jetpack Requires Login
Jetpack is a popular plugin that incorporates a large number of features and services from WordPress.com into a self-hosted WordPress site.
The plugin requires a WordPress.com login. While the service provided, such as their stats service, would require a login, many of the plugin features, such as infinite scroll, contact form, etc do not. But to use any of the features, you must log in.
Jetpack is also an open source project. There have been attempts in the past to write a Jetpack plugin that does not require Wordpress.com but none are currently maintained.
Security and Maintenance Vulnerability
Like any system with widespread adoption, WordPress is a target. It is important to keep your site updated with the latest version of the software and any plugins. WordPress has a limited automatic update system.
Fatal Error memory exhausted
WordPress fails to catch and handle fatal errors like running out of memory, and this results in a poor UX on real world sites, that leak otherwise private server configuration information like WordPress install path, potentially account username etc. e.g.:
- http://yottabytes.info/?p=10497 (on 2014-06-08 15:28 EDT):
Fatal error: Allowed memory size of 41943040 bytes exhausted (tried to allocate 32 bytes) in /home/johnkrol/public_html/wp-includes/post.php on line 1961
- Christian Weiske: PHP: Allowed memory size exhausted ”… nonsense to list a server configuration … ”
- Tantek Çelik: This is not just a "server configuration" issue. This is a failure by WordPress to catch / handle the exception, although it is not unique to WordPress (see the below linked PHP issue), and a vulnerability that anyone considering WordPress should be aware of.
See: PHP: Fatal Error memory exhausted for more details.
Pages can not have numeric slugs
WordPress does not allow numeric page slugs, making it difficult to set up pages representing a year, such as
/event/2014/. This is frustrating if you need to set up a series of annually recurring pages (not blog posts) without using a plugin. 
WordPress.com hosting service
WordPress.com is a blog hosting service that runs the WordPress open source software.
- https://twitter.com/carlhancock/status/971182969514799105 thread
- "What WordPress needs is a good old old-fashioned tell-all exposé on all of the shady behavior & practices within the WordPress commercial ecosystem that goes on behind the scenes, has gone on in the past and continues to go on behind the scenes that isn’t public knowledge." @carlhancock March 6, 2018