Getting Started on WordPress
By using a WordPress blog on your own domain, you are already part of the IndieWeb. Below are some suggestions to help you get started with upgrading your WordPress site to support IndieWeb philosophies.
The instructions below follow the step by step, ground up approach of IndieMark.
As you complete each step, try plugging your site into indiewebify.me. It will give you instant feedback, confirming that it's working or helping you fix it if not.
IndieMark Level 1
The first thing you need to do to participate with the IndieWeb community is to setup rel-me on your WordPress site. This will allow you to sign into the wiki with IndieAuth. You can then begin wikifying yourself and the rest of the site here. The rel-me page can provide additional information on how to accomplish this.
WordPress sites can add rel="me" classes in several locations including:
- directly in the header (with a plugin perhaps)
- in a text widget,
- in the footer
- For sites that have a (usually secondary) social links menu, one can add the classes directly into the menu. On your site go to
/wp-admin/nav-menus.phpto create the menu; you may need to go to "Screen Options" pulldown in the top right corner and check the "Link Relationship (XFN)" option which will reveal a box into which one can simply type "me" to create the rel-me class on the URL.
- Indieweb Plugin (Recomended, see details below)
The Indieweb Plugin is a plugin with an installer interface that includes a bundle of several useful related standalone plugins that can help you quickly get set up to be a more active member of the Indieweb. Some of these plugins are available in the WordPress repository and some are available via external sources. Many of these plugins will be described below.
The easiest way to add rel="me" support to your site is to install the Indieweb Plugin. This will add several common social media site fields to your "Edit User" page in the admin panel at http://YOURSITE.COM/wp-admin/profile.php. (Be sure to change this URL to include your domain.) Fill these in with the usernames for your identities on the various services you use (Telephone, Github username, Google+ userID (not username), Twitter username (without @), Facebook ID, Last.fm username, Instagram username, Flickr username) and the plugin will create the proper (invisible) rel-me links in the header of your site. There is a field at the bottom of the "Edit User" page that one can list additional URLs for adding rel-me to as well.
Now that your site has rel-me links pointing at several services, log into those services and include the URL of your site in the appropriate website fields of your profile so that they point back at you in return. (Some services like Twitter and Instagram, which only allow one URL in your profile, support putting a second URL into your biography field if you need to have second personal site. Examples: Kevin Marks, Chris Aldrich have primary sites and also have indiewebified secondary sites.)
You can now test your rel=me setup with: IndieWebify.Me Web Sign In validator
Nota bene: In late July 2016, IndieWebify.Me was having problems which may cause it to return incorrect results. If you think this may be the case, you can do an additional test described in "Authentication" just below:
As an additional test you should now be able to use your domain name to log into this wiki using your domain name.
You can then begin wikifying yourself and the rest of the site here.
Included in the Indieweb Plugin or as a standalone plugin, you can now install the IndieAuth Plugin. It will allow you to use your own domain name to log into WordPress' admin panel in the future.
Send and receive responses with your site
Send and receive comments, likes, reposts, and other kinds of post responses using your own site! Core plugins make receiving Indieweb comments (better known as webmentions) work. Recommended plugins further improve the experience.
- Webmention Plugin - allows you to send and receive by adding webmention support to WordPress. Mentions show up as comments on your site.
- Semantic Linkbacks - makes indieweb comments look better on your site, recognizing them as being likes, replies, etc. and displaying appropriately.
- wp-webmention-again an async, WP Cron based webmention sender/receiver supporting reacji, but not doing any comment formatting
Once you have these activated, you can setup Bridgy to connect your site to allow it to receive responses (likes, comments, and other interactions) from silos such as Facebook, Twitter, Google+, and Instagram among others, allowing for a seamless experience.
Nota bene: On Brid.gy self-hosted WordPress(.org) users will activate the social silos they're interested in connecting. They should not click on the WordPress.COM Brid.gy button as that is meant for those using the hosted version of WordPress on WordPress.com.
- Post Kinds Plugin - adds support for responding to and interacting with other sites. It also handles some display and layout similar to WordPress Post Formats with options for article, note, photo, reply, repost, like, favorite, bookmark, listen, watch, wish, and others. It also adds the appropriate microformats classes to these types for better interacting with other sites.
- Webmention for (Threaded) Comments - Adds support for threaded comments for webmentions.
Syndicate your content to other sites
There are several ways to POSSE or syndicate your content to other social silos:
- JetPack's (plugin) Publicize functionality
- Social Media Auto-Poster (SNAP)
- Bridgy Publish - Supports syndication through Bridgy Publish. It pulls reactions (likes, comments etc.) to shared content from the silos back to the site with the original post, as a compatibility mechanism.
You'll likely also want to show your links to the syndicated versions of a post. Attaching the appropriate microformat to the URL allows for bridgy to be able to discover the post as well as for end users to comment on those sites as a way of replying. To accomplish this easily, use the following plugin:
- Syndication Links - Adds field to a post to allow manual or programmatic entry of URLs representing syndicated content to other sites and social silos. It provides support for auto-importing URLS for syndicated content using plugins like Social, partial support for SNAP, as well as Tumblr CrossPoster, WordPress CrossPoster, and Diaposter (for Diaspora). (Also supports rel-me links for IndieAuth, though this is in the process of being removed for inclusion in a separate plugin in the future.)
Pull your content from other sites
If POSSE is not an option or can't be done for various reasons (see Instagram for example), you probably still have the possibility of pulling content (PESOS), automatically creating a "backup" on your site.
Right now the most flexible way to do this on WordPress is the combination of Keyring, Keyring Social Importers, and Keyring Reactions Importer plugins. These are a little harder to configure plugins, mainly targeting semi-power-users, but they can import from an impressive amount of services out of the box and it's straightforward to extend their functionality.
Publish to Your Site with alternative interfaces
- Micropub for WordPress - add support for the Micropub protocol to WordPress. This will allow the use of tools like OwnYourGram, OwnYourCheckin, Quill, and potentially others in the future to post content to your WordPress site.
- Webactions - Adds webactions markup to WordPress elements
- Indieweb Press-This - Adds Indieweb markup to the WordPress Press-This Bookmarklets to allow you to respond on your site with one-click
- Hum URL Shortener - A personal URL shortener framework
- wp-shortslug - another URL shortener
- Indieauth - The plugin lets you login to the WordPress backend via IndieAuth. It uses the URL from the profile page to identify the blog user.
For more information, see WordPress Plugins
Some WordPress themes are compatible with microformats. The Indieweb uses microformats2, the latest version, to mark up sites so that they can be interpreted by other sites when retrieved. Most parsers will fall back onto the older format if available.
Formatting your site so other sites can consume the information allows for the communications Indieweb sites support. For example, a class of u-like-of added to a link to a site you liked to indicates that relationship.
There is only one theme in the WordPress repository that is fully microformats2 compliant. That is Sempress. Independent Publisher also now uses microformats2 in addition to having custom code for better displaying webmentions in the comments section.
For existing themes, you can try out wordpress-uf2, a plugin that tries to add microformats after the fact. Mileage may vary, as a plugin cannot do all that is required. Some themes that use microformats for styling instead of semantic markup may break or have spurious visual outputs when used with the uf2 plugin.
A reader (or indie reader) is the portion/feature integrated into an indieweb site that provides a way to read content from other indieweb sites, possibly including posts from the current site as well. There are a few for WordPress including:
- blogroll2email - oldschool feed to email reader using the blogroll feature of WordPress; supports RSS, Atom & microformats2 feeds
- Whisperfollow see Whisperfollow
- Why does the comment on my site not show the author's information?
- Why does the comment show a link to bridgy.appspot.com instead of the social network?
- Please ensure that you have both the Webmention plugin and the Semantic Linkbacks plugin installed.
- WordPress seems to be blocking Bridgy
- The WordPress service in Bridgy is only meant for people using WordPress.com who can't install the indieweb plugins from WordPress.org (or GitHub) themselves on their own server. If you're using WordPress.org self-hosted code, then you just need to connect Brid.gy to your social media sites (Twitter, Facebook, etc.)
- Where can I find help or assistance with adding Indieweb technology to my WordPress installation?
- Try the WordPress_Outreach_Club or ask your question in the IRC channel. If you think you've found a bug, feel free to file an issue in the github repository for the particular plugin you're having problems with.