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
- WordPress.com is a for-profit company that provides a blog hosting (SaaS) service using the code available on WordPress.org. It's somewhat less flexible than self hosted, sometimes more expensive, but is very accessible and polished.
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.
Import / Export
WordPress has support for official export and import using WXR files
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:
- 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
- Chris Aldrich has written about some of the ways he uses bookmarklets with Post Kinds: https://boffosocko.com/2017/01/10/browser-bookmarklets-and-mobile-sharing-with-post-kinds-plugin-for-wordpress/
WordPress has an iOS app for posting that requires you to login or sign-up before you can use it:
Posts are initially created as local drafts. When you have network connectivity, you can upload them to your site as drafts stored online. You can then later choose to publish them, either privately or publicly visible. You can later switch them back to draft status (ie undo publishing aka unpublish) at any time, which makes them not visible to other users again.
WordPress sites and the app both also store all revisions of posts, offline and online, both before and after they were published. You can compare revisions and revert to any past revision.
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 (NOTE: comment now missing)
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.
Burnout from "dealing with" WordPress, likely referring to its admin tax:
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
WordPress uses a Benevolent Dictator for Life open source leadership model that puts the power in the hands of Automattic CEO Matt Mullenweg creating a situation where company goals may overshadow the open source project.
There’s been a lot more leaders, but I would actually argue the point that WordPress has always been sort of my vision being set, or even my direct leadership Matt Mullenweg poststatus podcast
Any mention of alternative governance models gets a post removed from WordPress.org discussion board and may lead to a user being banned.
Concerns have been raised about the posting of news about the WordPress Governance Project on make.wordpress.org and use of the #community-team Slack channel giving the impression the project is sanctioned as an official WordPress project. It has not received such sanctions from WordPress leadership.Francesca Marano WordPress Governance Project
- Any discussion of ClassicPress, a fork of the Open source project, on WordPress.org forums is flagged or deleted.
I had my account at Wordpress.org banned merely for mentioning Classicpress in a post. (Ok, maybe not banned, just “disabled”) Someone had posted they would be looking for another blog platform, and I merely suggested Classicpress (not even linking to it) and my post was deleted and account disabledClassicPress Forum
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.
- web hosting
- Category:WordPress plugins
- Category:WordPress themes
- WordPress Glossary- Definitions of words that you come in contact with when you use WordPress.
- 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
- Criticism: slow to load: https://twitter.com/sclawr/status/1101242326712795137
- "WP started to feel like overkill for something I wasnt updating frequently. Also it was slow to load, and i wanted it to be easier to edit the html/css. the theme i used was fully customizable, but not enough to do the overhaul i wanted to do" @sclawr February 28, 2019
The WordPress project uses Slack as its main real-time communication platform, replacing all previous communication platforms such as IRC and Skype.
- “W3C Is Prioritizing Accessibility Over Its Open Source Licensing Preferences”. Why is that a bad thing again?