Advanced WordPress Set Up

From IndieWeb


Advanced WordPress Set up is a set of additional options and/or upgrades that extend the document Getting Started on WordPress.

As in most CMSes, there are many ways to do the same or similar things. While Getting Started on WordPress is meant for general beginners to take the quickest and easiest path to IndieWeb-ifying their personal site, there are additional and alternate options for many of the moving pieces. Many of these can be found below, roughly in the same order as on the getting started page.

Advanced users and developers are more than welcome to browse through these as well as the WordPress/Plugins page. Additional guidance for portions can potentially be found on individual wiki pages for particular pieces of functionality in the IndieWeb Examples sections for members who identify as WordPress/Examples.

Rel-Me

Main article: rel-me

One of the first things you will want to set up are rel-me links to your other profiles on the web. This will enable web-sign-in using RelMeAuth by using your domain as your identity. You can then sign into this wiki and begin wikifying.

Rel-me is usually added as an attribute within an <a> tag, but can also be done within a <link> tag, so either of the following will usually work, however the link version isn't human readable (it won't render on the web page) so you may forget it's there. If you do use link, it may be best done in the page header.

<head>
     <link href="https://example.com" rel="me" />
     ...
</head>

Or like this somewhere on your home page:

<a href="https://example.com" rel="me" />Micro.blog</a>


WordPress sites can add rel="me" classes on links in several locations including:

Indieweb Plugin

Recommended Method, see also details at Getting Started on WordPress

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 yoursite.example.com/wp-admin/profile.php. (Be sure to change this URL to include your particular domain.) Fill these in with the usernames for your identities on the various services you use (Telephone, Github 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 head 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. The rel-me and WordPress with Bridgy#Rel-me links pages can provide additional information if necessary.

If you view the source for your website afterwards, you'll see a number of links like <link rel="me" href="https://twitter.com/username" /> in the <head>. If you want the links to be visible on your site, you can use the rel-me widget, which will replace the hidden links with icons.

Directly in the header

Potentially by using a plugin:

Text widget or HTML widget

These can be added to a sidebar, footer, header or other location within a theme.

Social Links Menu

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.php to 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. (See details below.)

If you're on WordPress.com using their Business plan or higher, you can use the IndieWeb plugin mentioned above. If not, or if you're using a WordPress.org self-hosted version you'll need to use the WordPress menu and widget system.

  • In the admin, go to Appearance > Menus
  • Create a new menu
  • Click Screen Options at the top and check the box to display Link Relationships (XFN)
  • Click Custom Links and add the link to your profile, e.g https://twitter.com/username. Enter the link text and click Add to Menu. Repeat for as many profile links as you want to add.
  • Under Menu Structure click the arrow beside the newly-added link. In the Link Relationship (XFN) field enter me and click Save
  • Go to Appearance > Widgets
  • Drag a Custom Menu widget into the Sidebar
  • Click the arrow to expand the Custom Menu, select the menu you created, then click Save
  • Your profile links should now appear in your sidebar, or wherever your theme places the widget.


Reciprocal links

Now that your site has rel-me links pointing to your presences on 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 to your website in return. Having the ability to add rel-me links in your sites helps to indicate your ownership of them.

Some services like Twitter and Instagram, which only allow one URL in your profile, support putting a second URL into your bio field if you have second personal site. Examples: Kevin Marks and Chris Aldrich have indiewebified primary and secondary sites.

If your site has multiple Wordpress users, and you want to use it as an Indieweb site for one of the users, change the Indieweb identity settings in its "Options" pane:

  • click IndieWeb in the admin sidebar
  • click Options under the IndieWeb item in the admin sidebar
  • In the main window:
    • Check: Single Author Site [x]
    • Pick yourself in Default Author _____v drop down menu.
    • Save Changes

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" below.

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.

For many other options (like OwnYourGram, Dsgnwrks Instagram Importer, see also WordPress/Plugins

Publish to Your Site with alternative interfaces

Other functionalities

For more information, see WordPress Plugins

Themes

Main article: WordPress Themes

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.

Readers

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:

External reader services can be integrated into WordPress as well including via:



WordPress
Topics Getting Started on WordPress β€’ Advanced WordPress Set Up β€’ Plugins β€’ Themes β€’ Examples β€’ WordPress with Bridgy β€’ Development β€’ Data β€’ Security
Primary Plugins Indieweb Plugin β€’ Webmention β€’ Semantic Linkbacks β€’ Micropub β€’ IndieAuth β€’ Post Kinds β€’ Syndication Links β€’ WebSub plugins
POSSE Plugins Syndication Links β€’ Social Network Auto Poster β€’ JetPack Publicize β€’ WP Crosspost β€’ Tumblr Crosspostr β€’ Diasposter β€’ Mastodon Autopost β€’ Bridgy Publish plugin (deprecated) β€’ Medium (deprecated)
PESOS Plugins Keyring Social Importers β€’ DsgnWrks Twitter Importer β€’ DsgnWrks Instagram Importer
Other Plugins IndieBlocks β€’ Shortnotes β€’ ActivityPub Plugin β€’ Aperture β€’ Refback plugin β€’ IndieWeb Press This β€’ WordPress MF2 Feeds Plugin β€’ WordPress uf2 β€’ OpenID β€’ Simple Location β€’ Parse This β€’ Indieweb Actions β€’ PressForward β€’ Yarns Indie Reader β€’ WhisperFollow β€’ blogroll2email
Themes SemPress β€’ (SemPress Child Themes: SemPress Lite, SenPress, and Index) β€’ Autonomie β€’ Independent Publisher β€’ IndieWeb Publisher β€’ mf2_s β€’ Twenty Sixteen IndieWeb-friendly fork β€’ IndieWeb Twenty Fifteen Theme β€’ Doublescores
Assistance Join the #indieweb chat β€’ IRC and other chat options β€’ WordPress FAQ β€’ WordPress Outreach Club β€’ Troubleshooting Tips β€’ WordPress tools β€’ WordPress channel
See also WordPress related wiki pages β€’ Category:WordPress plugins β€’ Category:WordPress themes β€’ Category:WordPress sessions β€’ WordPress.com β€’ WordPress using IndieMark β€’ AWS Tutorial


See Also