{"id":3728,"date":"2025-02-15T16:59:04","date_gmt":"2025-02-15T16:59:04","guid":{"rendered":"https:\/\/s-o-s.net\/webfinger\/"},"modified":"2025-02-15T16:59:04","modified_gmt":"2025-02-15T16:59:04","slug":"webfinger","status":"publish","type":"post","link":"https:\/\/s-o-s.net\/en_gb\/webfinger\/","title":{"rendered":"WebFinger"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<article id=\"post-8757\" class=\"alignwide post-8757 plugin type-plugin status-publish hentry plugin_tags-activitypub plugin_tags-discovery plugin_tags-jrd plugin_tags-ostatus plugin_tags-webfinger plugin_contributors-pfefferle plugin_contributors-willnorris plugin_business_model-community plugin_committers-pfefferle\">\n<div class=\"plugin-banner\" id=\"plugin-banner-webfinger\"><\/div>\n<header class=\"plugin-header\">\n<div class=\"entry-heading-container\">\n<div>\n<div class=\"entry-thumbnail\">\n\t\t\t\t\t<img decoding=\"async\" class=\"plugin-icon\" srcset=\"https:\/\/ps.w.org\/webfinger\/assets\/icon-128x128.png?rev=2815154, https:\/\/ps.w.org\/webfinger\/assets\/icon-256x256.png?rev=2815154 2x\" src=\"https:\/\/ps.w.org\/webfinger\/assets\/icon-256x256.png?rev=2815154\" alt=\"\">\t\t\t\t<\/div>\n<div>\n<h1 class=\"plugin-title\">WebFinger<\/h1>\n<p>\t\t\t\t\t<span class=\"byline\">By <span class=\"author vcard\"><a target=\"_blank\" class=\"url fn n\" href=\"https:\/\/profiles.wordpress.org\/pfefferle\/\" rel=\"noopener\">Matthias Pfefferle<\/a><\/span><\/span>\n\t\t\t\t<\/div>\n<\/p><\/div>\n<div class=\"plugin-actions\">\n<div class=\"wp-block-button is-small plugin-download download-button\"><a target=\"_blank\" class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/downloads.wordpress.org\/plugin\/webfinger.3.2.7.zip\" rel=\"noopener\">Download<\/a><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/header>\n<p><!-- .entry-header --><\/p>\n<p>\t<span id=\"description\"><\/span><br \/>\n\t<span id=\"reviews\"><\/span><br \/>\n\t<span id=\"installation\"><\/span><br \/>\n\t<span id=\"developers\"><\/span><br \/>\n\t<span id=\"advanced\" class=\"\"><\/span><br \/>\n\t<span id=\"section-links\"><\/p>\n<ul class=\"tabs clear\">\n<li id=\"tablink-description\"><a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/webfinger\/#description\" rel=\"noopener\">Details<\/a><\/li>\n<li id=\"tablink-reviews\"><a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/webfinger\/#reviews\" rel=\"noopener\">Reviews<\/a><\/li>\n<li id=\"tablink-installation\">\n\t\t\t\t<a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/webfinger\/#installation\" rel=\"noopener\">Installation<\/a>\n\t\t\t<\/li>\n<li id=\"tablink-developers\"><a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/webfinger\/#developers\" rel=\"noopener\">Development<\/a><\/li>\n<\/ul>\n<div id=\"link-support\">\n\t\t\t<a target=\"_blank\" href=\"https:\/\/wordpress.org\/support\/plugin\/webfinger\/\" rel=\"noopener\">Support<\/a>\n\t\t<\/div>\n<p>\t<\/span><br \/>\n\t<script type=\"text\/javascript\">if ( '#changelog' == window.location.hash ) { window.setTimeout( function() { window.location.hash=\"#developers\"; }, 10 ); }<\/script><\/p>\n<div class=\"entry-content\">\n<div id=\"tab-description\" class=\"plugin-description section\">\n<h2 id=\"description-header\">Description<\/h2>\n<p>Enables WebFinger (<a target=\"_blank\" href=\"http:\/\/tools.ietf.org\/html\/rfc7033\" rel=\"nofollow ugc noopener\">RFC 7033<\/a>) support for WordPress.<\/p>\n<p>About WebFinger:<\/p>\n<blockquote>\n<p>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).<\/p>\n<\/blockquote>\n<p>(quote from the <a target=\"_blank\" href=\"http:\/\/tools.ietf.org\/html\/rfc7033\" rel=\"nofollow ugc noopener\">RFC<\/a>)<\/p>\n<\/div>\n<div id=\"tab-installation\" class=\"plugin-installation section\">\n<h2 id=\"installation-header\">Installation<\/h2>\n<p>Follow the normal instructions for <a target=\"_blank\" href=\"https:\/\/codex.wordpress.org\/Managing_Plugins#Installing_Plugins\" rel=\"nofollow ugc noopener\">installing WordPress plugins<\/a>.<\/p>\n<h4>Automatic Plugin Installation<\/h4>\n<p>To add a WordPress Plugin using the <a target=\"_blank\" href=\"https:\/\/codex.wordpress.org\/Administration_Screens#Add_New_Plugins\" rel=\"nofollow ugc noopener\">built-in plugin installer<\/a>:<\/p>\n<ol>\n<li>Go to <a target=\"_blank\" href=\"https:\/\/codex.wordpress.org\/Administration_Screens#Plugins\" rel=\"nofollow ugc noopener\">Plugins<\/a> &gt; <a target=\"_blank\" href=\"https:\/\/codex.wordpress.org\/Plugins_Add_New_Screen\" rel=\"nofollow ugc noopener\">Add New<\/a>.<\/li>\n<li>Type \u201c<code>webfinger<\/code>\u201d into the <strong>Search Plugins<\/strong> box.<\/li>\n<li>Find the WordPress Plugin you wish to install.\n<ol>\n<li>Click <strong>Details<\/strong> for more information about the Plugin and instructions you may wish to print or save to help setup the Plugin.<\/li>\n<li>Click <strong>Install Now<\/strong> to install the WordPress Plugin.<\/li>\n<\/ol>\n<\/li>\n<li>The resulting installation screen will list the installation as successful or note any problems during the install.<\/li>\n<li>If successful, click <strong>Activate Plugin<\/strong> to activate it, or <strong>Return to Plugin Installer<\/strong> for further actions.<\/li>\n<\/ol>\n<h4>Manual Plugin Installation<\/h4>\n<p>There are a few cases when manually installing a WordPress Plugin is appropriate.<\/p>\n<ul>\n<li>If you wish to control the placement and the process of installing a WordPress Plugin.<\/li>\n<li>If your server does not permit automatic installation of a WordPress Plugin.<\/li>\n<li>If you want to try the <a target=\"_blank\" href=\"https:\/\/github.com\/pfefferle\/wordpress-webfinger\" rel=\"nofollow ugc noopener\">latest development version<\/a>.<\/li>\n<\/ul>\n<p>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.<\/p>\n<p>Backup your site completely before proceeding.<\/p>\n<p>To install a WordPress Plugin manually:<\/p>\n<ul>\n<li>Download your WordPress Plugin to your desktop.\n<ul>\n<li>Download from <a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/webfinger\/\" rel=\"ugc noopener\">the WordPress directory<\/a><\/li>\n<li>Download from <a target=\"_blank\" href=\"https:\/\/github.com\/pfefferle\/wordpress-webfinger\/releases\" rel=\"nofollow ugc noopener\">GitHub<\/a><\/li>\n<\/ul>\n<\/li>\n<li>If downloaded as a zip archive, extract the Plugin folder to your desktop.<\/li>\n<li>With your FTP program, upload the Plugin folder to the <code>wp-content\/plugins<\/code> folder in your WordPress directory online.<\/li>\n<li>Go to <a target=\"_blank\" href=\"https:\/\/codex.wordpress.org\/Administration_Screens#Plugins\" rel=\"nofollow ugc noopener\">Plugins screen<\/a> and find the newly uploaded Plugin in the list.<\/li>\n<li>Click <strong>Activate<\/strong> to activate it.<\/li>\n<\/ul>\n<\/div>\n<div id=\"faq\" class=\"plugin-faq section\">\n<h2 id=\"faq-header\">FAQ<\/h2>\n<dl>\n<dt id=\"how%20to%20extend%20the%20jrd%20file\">\n<h3>How to extend the JRD file<\/h3>\n<\/dt>\n<dd>\n<p>You can add your own links or properties like that:<\/p>\n<pre><code>function oexchange_target_link( $array ) {\n  $array[\"links\"][] = array( 'rel' =&gt; 'http:\/\/oexchange.org\/spec\/0.8\/rel\/resident-target',\n    'href' =&gt; 'http:\/\/example.com',\n    'type' =&gt; 'application\/xrd+xml' );\n  return $array;\n}\nadd_filter( 'webfinger_data', 'oexchange_target_link' );\n<\/code><\/pre>\n<\/dd>\n<dt id=\"add%20alternate%20file%2Foutput%20formats\">\n<h3>Add alternate file\/output formats<\/h3>\n<\/dt>\n<dd>\n<p>You can add your own links or properties like that:<\/p>\n<pre><code>function render_xrd($webfinger) {\n  \/\/ set custom header();\n\n  \/\/ JRD to XRD code\n\n  exit;\n}\nadd_action( 'webfinger_render', 'render_xrd', 5 );\n<\/code><\/pre>\n<p>You can find a detailed example here <a target=\"_blank\" href=\"https:\/\/github.com\/pfefferle\/wordpress-webfinger-legacy\" rel=\"nofollow ugc noopener\">https:\/\/github.com\/pfefferle\/wordpress-webfinger-legacy<\/a><\/p>\n<\/dd>\n<dt id=\"the%20spec\">\n<h3>The spec<\/h3>\n<\/dt>\n<dd>\n<p>WebFinger is specified as <a target=\"_blank\" href=\"http:\/\/tools.ietf.org\/html\/rfc7033\" rel=\"nofollow ugc noopener\">RFC 7033<\/a><\/p>\n<\/dd>\n<dt id=\"the%20webfinger%20community%20page\">\n<h3>The WebFinger community page<\/h3>\n<\/dt>\n<dd>\n<p>Please visit <a target=\"_blank\" href=\"http:\/\/webfinger.net\" rel=\"nofollow ugc noopener\">http:\/\/webfinger.net<\/a><\/p>\n<\/dd>\n<\/dl>\n<\/div>\n<div id=\"tab-reviews\" class=\"plugin-reviews section\">\n<h2 id=\"reviews-header\">Reviews<\/h2>\n<div class=\"plugin-reviews\">\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/2f88c80005db8d6bc27301a3023cc557e267ae64b6ccd8dd5773120511910312?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/2f88c80005db8d6bc27301a3023cc557e267ae64b6ccd8dd5773120511910312?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/does-as-expected-6\/\" rel=\"noopener\">Does as expected.<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/khurtwilliams\/\" title=\"Posts by Kh\u00fcrt Williams\" rel=\"author noopener\">Kh\u00fcrt Williams<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">November 11, 2023<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">I installed Webfinger and typed in the domain for my website into Mastodon instance photog.social. Mastodon immediately found ky ActivityPub endpoints.<\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/b52b9342fc917a4d5770bdd39e628f8b1f24dbef225b7803cda3c0ced245ffeb?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/b52b9342fc917a4d5770bdd39e628f8b1f24dbef225b7803cda3c0ced245ffeb?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/no-config-easy-way-to-add-webfinger-for-your-existing-users\/\" rel=\"noopener\">No config easy way to add webfinger for your existing users<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/ffpf\/\" title=\"Posts by ffpf\" rel=\"author noopener\">ffpf<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">January 20, 2023<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">Adding this plugin adds handling for the WebFinger protocol for your existing users.<\/p>\n<p>For example, when someone searches for you on Mastodon, your server will be queried for accounts using an endpoint that looks like this:<\/p>\n<p>GET ${MASTODON_DOMAIN}\/.well-known\/webfinger?resource=acct:${MASTODON_USER}@${MASTODON_DOMAIN}<\/p>\n<p>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:<\/p>\n<p>blog.domain\/.well-known\/webfinger?resource=acct:user1@blog.domain<\/p>\n<p>This plugin implements handling for such requests for any user on the WordPress site without any additional configuration.<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/f5a3d6d6ce8cc462ba390139eadfe6da39a8de6dc1db4bc074094027c591386a?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/f5a3d6d6ce8cc462ba390139eadfe6da39a8de6dc1db4bc074094027c591386a?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"1 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"1\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-empty\"><\/span><span class=\"dashicons dashicons-star-empty\"><\/span><span class=\"dashicons dashicons-star-empty\"><\/span><span class=\"dashicons dashicons-star-empty\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/didnt-work-370\/\" rel=\"noopener\">Didn\u2019t work.<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/sunriselane\/\" title=\"Posts by sunriselane\" rel=\"author noopener\">sunriselane<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">January 15, 2023<\/span><br \/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"review-replies\">1 reply<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">There\u2019s no admin panel and the documentation isn\u2019t clear about how to configure the plugin.<\/div>\n<\/p><\/div>\n<\/article><\/div>\n<p>\t\t<a target=\"_blank\" class=\"reviews-link\" href=\"https:\/\/wordpress.org\/support\/plugin\/webfinger\/reviews\/\" rel=\"noopener\"><br \/>\n\t\t\tRead all 3 reviews\t\t<\/a><\/div>\n<div id=\"tab-developers\" class=\"plugin-developers section\">\n<h2 id=\"developers-header\">Contributors &amp; Developers<\/h2>\n<div class=\"plugin-contributors\">\n<p>\u201cWebFinger\u201d is open source software. The following people have contributed to this plugin.<\/p>\n<p><span class=\"screen-reader-text\">Contributors<\/span><\/p>\n<ul id=\"contributors-list\" class=\"contributors-list\">\n<li>\n\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/55be13f44d2f6b002041de75a3981568cfc3842eaa7a07e6a42f980539c129f3?s=32&amp;d=mm&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/55be13f44d2f6b002041de75a3981568cfc3842eaa7a07e6a42f980539c129f3?s=64&amp;d=mm&amp;r=g 2x\" class=\"avatar avatar-32 photo\" height=\"32\" width=\"32\">\t\t\t\t<a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/pfefferle\/\" rel=\"noopener\"><br \/>\n\t\t\t\t\tMatthias Pfefferle\t\t\t\t<\/a>\n\t\t\t<\/li>\n<li>\n\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/f2f0944d8507601e15793d1032ff5f6ba1cd582bd0307cd86a9bf18956d658e5?s=32&amp;d=mm&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/f2f0944d8507601e15793d1032ff5f6ba1cd582bd0307cd86a9bf18956d658e5?s=64&amp;d=mm&amp;r=g 2x\" class=\"avatar avatar-32 photo\" height=\"32\" width=\"32\">\t\t\t\t<a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/willnorris\/\" rel=\"noopener\"><br \/>\n\t\t\t\t\tWill Norris\t\t\t\t<\/a>\n\t\t\t<\/li>\n<\/ul><\/div>\n<div class=\"plugin-development\">\n<p><a target=\"_blank\" href=\"https:\/\/translate.wordpress.org\/projects\/wp-plugins\/webfinger\" rel=\"noopener\">Translate \u201cWebFinger\u201d into your language.<\/a><\/p>\n<h3>Interested in development?<\/h3>\n<p><a target=\"_blank\" href=\"https:\/\/plugins.trac.wordpress.org\/browser\/webfinger\/\" rel=\"noopener\" class=\"broken_link\">Browse the code<\/a>, check out the <a target=\"_blank\" href=\"https:\/\/plugins.svn.wordpress.org\/webfinger\/\" rel=\"noopener\">SVN repository<\/a>, or subscribe to the <a target=\"_blank\" href=\"https:\/\/plugins.trac.wordpress.org\/log\/webfinger\/\" rel=\"noopener\" class=\"broken_link\">development log<\/a> by <a target=\"_blank\" href=\"https:\/\/plugins.trac.wordpress.org\/log\/webfinger\/?limit=100&amp;mode=stop_on_copy&amp;format=rss\" rel=\"noopener\" class=\"broken_link\">RSS<\/a>.<\/p>\n<\/div>\n<\/div>\n<div id=\"tab-changelog\" class=\"plugin-changelog section\">\n<h2 id=\"changelog-header\">Changelog<\/h2>\n<p>Project maintained on github at <a target=\"_blank\" href=\"https:\/\/github.com\/pfefferle\/wordpress-webfinger\" rel=\"nofollow ugc noopener\">pfefferle\/wordpress-webfinger<\/a>.<\/p>\n<h4>3.2.7<\/h4>\n<ul>\n<li>Added: better output escaping<\/li>\n<li>Fixed: stricter queries<\/li>\n<\/ul>\n<h4>3.2.6<\/h4>\n<ul>\n<li>remove E-Mail address<\/li>\n<\/ul>\n<h4>3.2.5<\/h4>\n<ul>\n<li>fix typo<\/li>\n<\/ul>\n<h4>3.2.4<\/h4>\n<ul>\n<li>update requirements<\/li>\n<\/ul>\n<h4>3.2.3<\/h4>\n<ul>\n<li>fixed <code>acct<\/code> scheme for discovery<\/li>\n<\/ul>\n<h4>3.2.2<\/h4>\n<ul>\n<li>fixed typo (thanks @ivucica)<\/li>\n<li>use <code>acct<\/code> as default scheme<\/li>\n<\/ul>\n<h4>3.2.1<\/h4>\n<ul>\n<li>make <code>acct<\/code> protocol optional<\/li>\n<\/ul>\n<h4>3.2.0<\/h4>\n<ul>\n<li>global refactoring<\/li>\n<\/ul>\n<h4>3.1.6<\/h4>\n<ul>\n<li>added <code>user_nicename<\/code> as resource<\/li>\n<li>fixed WordPress coding standard issues<\/li>\n<\/ul>\n<h4>3.1.5<\/h4>\n<ul>\n<li>fixed PHP warning<\/li>\n<\/ul>\n<h4>3.1.4<\/h4>\n<ul>\n<li>updated requirements<\/li>\n<\/ul>\n<h4>3.1.3<\/h4>\n<ul>\n<li>add support for the \u2018aim\u2019, \u2018ymsgr\u2019 and \u2018acct\u2019 protocol<\/li>\n<\/ul>\n<h4>3.1.2<\/h4>\n<ul>\n<li>fixed the legacy code<\/li>\n<li>added feeds<\/li>\n<\/ul>\n<h4>3.1.1<\/h4>\n<ul>\n<li>fixed \u2018get_user_by_various\u2019 function<\/li>\n<\/ul>\n<h4>3.1.0<\/h4>\n<ul>\n<li>Added WebFinger legacy plugin, because the legacy version is still very popular and used by for example OStatus (Mastodon, Status.NET and GNU Social)<\/li>\n<li>Added Webfinger for posts support<\/li>\n<\/ul>\n<h4>3.0.3<\/h4>\n<ul>\n<li>composer support<\/li>\n<li>compatibility updates<\/li>\n<\/ul>\n<h4>3.0.2<\/h4>\n<ul>\n<li><code>get_avatar_url<\/code> instead of custom code<\/li>\n<li>some small code improvements<\/li>\n<li>nicer PHP-docs<\/li>\n<\/ul>\n<h4>3.0.1<\/h4>\n<ul>\n<li>updated version informations<\/li>\n<li>support the WordPress Coding Standard<\/li>\n<\/ul>\n<h4>3.0.0<\/h4>\n<ul>\n<li>added correct error-responses<\/li>\n<li>remove legacy support for XRD and host-meta (props to Will Norris)<\/li>\n<\/ul>\n<h4>2.0.1<\/h4>\n<ul>\n<li>small bugfix<\/li>\n<\/ul>\n<h4>2.0.0<\/h4>\n<ul>\n<li>complete refactoring<\/li>\n<li>removed simple-web-discovery<\/li>\n<li>more filters and actions<\/li>\n<li>works without \/.well-known\/ plugin<\/li>\n<\/ul>\n<h4>1.4.0<\/h4>\n<ul>\n<li>small fixes<\/li>\n<li>added \u201cwebfinger\u201d as well-known uri<\/li>\n<\/ul>\n<h4>1.3.1<\/h4>\n<ul>\n<li>added \u201crel\u201d-filter (work in progress)<\/li>\n<li>added more aliases<\/li>\n<\/ul>\n<h4>1.3<\/h4>\n<ul>\n<li>added host-meta resource feature (see latest spec)<\/li>\n<\/ul>\n<h4>1.2<\/h4>\n<ul>\n<li>added 404 http error if user doesn\u2019t exist<\/li>\n<li>added jrd discovery for host-meta<\/li>\n<\/ul>\n<h4>1.1<\/h4>\n<ul>\n<li>fixed an odd problem with lower WordPress versions<\/li>\n<li>added support for the https:\/\/wordpress.org\/extend\/plugins\/extended-profile\/ (thanks to Singpolyma)<\/li>\n<\/ul>\n<h4>1.0.1<\/h4>\n<ul>\n<li>api improvements<\/li>\n<\/ul>\n<h4>1.0<\/h4>\n<ul>\n<li>basic simple-seb-discovery<\/li>\n<li>json support<\/li>\n<li>some small improvements<\/li>\n<\/ul>\n<h4>0.9.1<\/h4>\n<ul>\n<li>some changes to support http:\/\/unhosted.org<\/li>\n<\/ul>\n<h4>0.9<\/h4>\n<ul>\n<li>OStatus improvements<\/li>\n<li>Better uri handling<\/li>\n<li>Identifier overview (more to come)<\/li>\n<li>Added filters<\/li>\n<li>Added functions to get a users webfingers<\/li>\n<\/ul>\n<h4>0.7<\/h4>\n<ul>\n<li>Added do_action param (for future OStatus plugin)<\/li>\n<li>Author-Url as Webfinger-Identifier<\/li>\n<\/ul>\n<h4>0.5<\/h4>\n<ul>\n<li>Initial release<\/li>\n<\/ul>\n<\/div><\/div>\n<p><!-- .entry-content --><\/p>\n<p>\t<!-- .entry-meta --><br \/>\n<\/article>\n<p><br \/>\n<br \/><a href=\"https:\/\/wordpress.org\/plugins\/webfinger\/\" target=\"_blank\" rel=\"noopener\">Source link <\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>WebFinger By Matthias Pfefferle Download Details Reviews Installation Development Support 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 [&hellip;]<\/p>","protected":false},"author":168,"featured_media":3729,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"give_campaign_id":0,"footnotes":""},"categories":[1933,39,40],"tags":[2543],"class_list":["post-3728","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-community-plugin","category-lite-version","category-wp-plugin-solution","tag-webfinger"],"acf":[],"fifu_image_url":"https:\/\/ps.w.org\/webfinger\/assets\/banner-772x250.jpg?rev=2815154","_links":{"self":[{"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/posts\/3728","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/users\/168"}],"replies":[{"embeddable":true,"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/comments?post=3728"}],"version-history":[{"count":0,"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/posts\/3728\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/media\/3729"}],"wp:attachment":[{"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/media?parent=3728"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/categories?post=3728"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/tags?post=3728"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}