WebFinger
WebFinger
Description
Enables WebFinger (RFC 7033) support for WordPress.
About WebFinger:
WebFinger is used to discover information about people or other entities on the Internet that are identified by a URI using standard Hypertext Transfer Protocol (HTTP) methods over a secure transport. A WebFinger resource returns a JavaScript Object Notation (JSON) object describing the entity that is queried. The JSON object is referred to as the JSON Resource Descriptor (JRD).
(quote from the RFC)
Installation
Follow the normal instructions for installing WordPress plugins.
Automatic Plugin Installation
To add a WordPress Plugin using the built-in plugin installer:
- Go to Plugins > Add New.
- Type “
webfinger” into the Search Plugins box. - Find the WordPress Plugin you wish to install.
- Click Details for more information about the Plugin and instructions you may wish to print or save to help setup the Plugin.
- Click Install Now to install the WordPress Plugin.
- The resulting installation screen will list the installation as successful or note any problems during the install.
- If successful, click Activate Plugin to activate it, or Return to Plugin Installer for further actions.
Manual Plugin Installation
There are a few cases when manually installing a WordPress Plugin is appropriate.
- If you wish to control the placement and the process of installing a WordPress Plugin.
- If your server does not permit automatic installation of a WordPress Plugin.
- If you want to try the latest development version.
Installation of a WordPress Plugin manually requires FTP familiarity and the awareness that you may put your site at risk if you install a WordPress Plugin incompatible with the current version or from an unreliable source.
Backup your site completely before proceeding.
To install a WordPress Plugin manually:
- Download your WordPress Plugin to your desktop.
- Download from the WordPress directory
- Download from GitHub
- If downloaded as a zip archive, extract the Plugin folder to your desktop.
- With your FTP program, upload the Plugin folder to the
wp-content/pluginsfolder in your WordPress directory online. - Go to Plugins screen and find the newly uploaded Plugin in the list.
- Click Activate to activate it.
Faq
You can add your own links or properties like that:
function oexchange_target_link( $array ) {
$array["links"][] = array( 'rel' => 'http://oexchange.org/spec/0.8/rel/resident-target',
'href' => 'http://example.com',
'type' => 'application/xrd+xml' );
return $array;
}
add_filter( 'webfinger_data', 'oexchange_target_link' );
You can add your own links or properties like that:
function render_xrd($webfinger) {
// set custom header();
// JRD to XRD code
exit;
}
add_action( 'webfinger_render', 'render_xrd', 5 );
You can find a detailed example here https://github.com/pfefferle/wordpress-webfinger-legacy
WebFinger is specified as RFC 7033
Please visit http://webfinger.net
Reviews
Does as expected.
By Khürt Williams (khurtwilliams) on November 11, 2023
No config easy way to add webfinger for your existing users
By ffpf on January 20, 2023
Adding this plugin adds handling for the WebFinger protocol for your existing users.
For example, when someone searches for you on Mastodon, your server will be queried for accounts using an endpoint that looks like this:
GET ${MASTODON_DOMAIN}/.well-known/webfinger?resource=acct:${MASTODON_USER}@${MASTODON_DOMAIN}
So, if you have a WordPress blog with the URL blog.domain and that blog has a user (you can see users in the Users admin panel) named user1, then the webfinger URL for that user would be:
blog.domain/.well-known/webfinger?resource=acct:user1@blog.domain
This plugin implements handling for such requests for any user on the WordPress site without any additional configuration.
Didn't work.
By sunriselane on January 15, 2023
There's no admin panel and the documentation isn't clear about how to configure the plugin.
Changelog
Project maintained on github at pfefferle/wordpress-webfinger.
3.2.7
- Added: better output escaping
- Fixed: stricter queries
3.2.6
- remove E-Mail address
3.2.5
- fix typo
3.2.4
- update requirements
3.2.3
- fixed
acctscheme for discovery
3.2.2
- fixed typo (thanks @ivucica)
- use
acctas default scheme
3.2.1
- make
acctprotocol optional
3.2.0
- global refactoring
3.1.6
- added
user_nicenameas resource - fixed WordPress coding standard issues
3.1.5
- fixed PHP warning
3.1.4
- updated requirements
3.1.3
- add support for the ‘aim’, ‘ymsgr’ and ‘acct’ protocol
3.1.2
- fixed the legacy code
- added feeds
3.1.1
- fixed ‘get_user_by_various’ function
3.1.0
- Added WebFinger legacy plugin, because the legacy version is still very popular and used by for example OStatus (Mastodon, Status.NET and GNU Social)
- Added Webfinger for posts support
3.0.3
- composer support
- compatibility updates
3.0.2
get_avatar_urlinstead of custom code- some small code improvements
- nicer PHP-docs
3.0.1
- updated version informations
- support the WordPress Coding Standard
3.0.0
- added correct error-responses
- remove legacy support for XRD and host-meta (props to Will Norris)
2.0.1
- small bugfix
2.0.0
- complete refactoring
- removed simple-web-discovery
- more filters and actions
- works without /.well-known/ plugin
1.4.0
- small fixes
- added “webfinger” as well-known uri
1.3.1
- added “rel”-filter (work in progress)
- added more aliases
1.3
- added host-meta resource feature (see latest spec)
1.2
- added 404 http error if user doesn’t exist
- added jrd discovery for host-meta
1.1
- fixed an odd problem with lower WordPress versions
- added support for the https://wordpress.org/extend/plugins/extended-profile/ (thanks to Singpolyma)
1.0.1
- api improvements
1.0
- basic simple-seb-discovery
- json support
- some small improvements
0.9.1
- some changes to support http://unhosted.org
0.9
- OStatus improvements
- Better uri handling
- Identifier overview (more to come)
- Added filters
- Added functions to get a users webfingers
0.7
- Added do_action param (for future OStatus plugin)
- Author-Url as Webfinger-Identifier
0.5
- Initial release