[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fHMPSOhKgNupgKxn_6VqhjKkkNoQw6IfZAj0fYkYaSXA":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":23,"download_link":24,"security_score":25,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":35,"analysis":141,"fingerprints":227},"micropub","Micropub","2.4.0","IndieWeb","https:\u002F\u002Fprofiles.wordpress.org\u002Findieweb\u002F","\u003Cp>Micropub is an open API standard that is used to create posts on your site using third-party clients. Web apps and native apps (e.g. iPhone, Android) can use Micropub to post short notes, photos, events or other posts to your own site, similar to a Twitter client posting to Twitter.com. Requires the IndieAuth plugin for authentication.\u003C\u002Fp>\n\u003Cp>Once you’ve installed and activated the plugin, try a client such as \u003Ca href=\"http:\u002F\u002Fquill.p3k.io\u002F\" rel=\"nofollow ugc\">Quill\u003C\u002Fa> to create a new post on your site. It walks you through the steps and helps you troubleshoot if you run into any problems. A list of known Micropub clients are available \u003Ca href=\"https:\u002F\u002Findieweb.org\u002FMicropub\u002FClients\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Supports the full \u003Ca href=\"https:\u002F\u002Fmicropub.spec.indieweb.org\u002F\" rel=\"nofollow ugc\">Micropub spec\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>As this allows the creation of posts without entering the WordPress admin, it is not subject to any Gutenberg compatibility concerns per se. Posts created will not have Gutenberg blocks as they were not created with Gutenberg, but otherwise there should be no issues at this time.\u003C\u002Fp>\n\u003Cp>Available in the WordPress plugin directory at \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmicropub\u002F\" rel=\"ugc\">wordpress.org\u002Fplugins\u002Fmicropub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This project is placed in the public domain. You may also use it under the \u003Ca href=\"http:\u002F\u002Fcreativecommons.org\u002Fpublicdomain\u002Fzero\u002F1.0\u002F\" rel=\"nofollow ugc\">CC0 license\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>WordPress details\u003C\u002Fh3>\n\u003Ch4>Filters and hooks\u003C\u002Fh4>\n\u003Cp>Adds ten filters:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>before_micropub( $input )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called before handling a Micropub request. Returns \u003Ccode>$input\u003C\u002Fcode>, possibly modified.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_post_content( $post_content, $input )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called during the handling of a Micropub request. The content generation function is attached to this filter by default. Returns \u003Ccode>$post_content\u003C\u002Fcode>, possibly modified.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_post_type( $post_type = 'post', $input )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called during the creation of a Micropub post. This defaults to post, but allows for setting Micropub posts to a custom post type.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_tax_input( $tax_input, $input )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called during the creation of a Micropub post. This defaults to nothing but allows for a Micropub post to set a custom taxonomy.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_syndicate-to( $synd_urls, $user_id, $input )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called to generate the list of \u003Ccode>syndicate-to\u003C\u002Fcode> targets to return in response to a query. Returns \u003Ccode>$synd_urls\u003C\u002Fcode>, an array, possibly modified. This filter is empty by default\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_query( $resp, $input )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Allows you to replace a query response with your own customized version to add additional information\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_suggest_title( $mf2 )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Allows a suggested title to be generated. This can be used either to generate the post slug or for individuals who want to use it to set a WordPress title\u003C\u002Fp>\n\u003Cpre>\u003Ccode>indieauth_scopes( $scopes )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This returns scopes from a plugin implementing IndieAuth. This filter is empty by default.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>indieauth_response( $response )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This returns the token auth response from a plugin implementing IndieAuth. This filter is empty by default.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>pre_insert_micropub_post( $args )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This filters the arguments sent to wp_insert_post just prior to its insertion. If the ID key is set, then this will short-circuit the insertion to allow for custom database coding.\u003C\u002Fp>\n\u003Cp>…and two hooks:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>after_micropub( $input, $wp_args = null)\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called after handling a Micropub request. Not called if the request fails (ie doesn’t return HTTP 2xx).\u003C\u002Fp>\n\u003Cpre>\u003Ccode>micropub_syndication( $ID, $syndicate_to )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Called only if there are syndication targets $syndicate_to for post $ID. $syndicate_to will be an array of UIDs that are verified as one or more of the UIDs added using the \u003Ccode>micropub_syndicate-to\u003C\u002Fcode> filter.\u003C\u002Fp>\n\u003Cp>Arguments:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>$input\u003C\u002Fcode>: associative array, the Micropub request in \u003Ca href=\"http:\u002F\u002Fmicropub.net\u002Fdraft\u002Findex.html#json-syntax\" rel=\"nofollow ugc\">JSON format\u003C\u002Fa>. If the request was form-encoded or a multipart file upload, it’s converted to JSON format.\u003C\u002Fli>\n\u003Cli>\u003Ccode>$wp_args\u003C\u002Fcode>: optional associative array. For creates and updates, this is the arguments passed to \u003Ccode>wp_insert_post\u003C\u002Fcode> or \u003Ccode>wp_update_post\u003C\u002Fcode>. For deletes and undeletes, \u003Ccode>args['ID']\u003C\u002Fcode> contains the post id to be (un)deleted. Null for queries.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Other\u003C\u002Fh4>\n\u003Cp>Stores \u003Ca href=\"http:\u002F\u002Fmicroformats.org\u002Fwiki\u002Fmicroformats2\" rel=\"nofollow ugc\">microformats2\u003C\u002Fa> properties in \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FFunction_Reference\u002Fpost_meta_Function_Examples\" rel=\"nofollow ugc\">post metadata\u003C\u002Fa> with keys prefixed by \u003Ccode>mf2_\u003C\u002Fcode>. \u003Ca href=\"https:\u002F\u002Findiewebcamp.com\u002FWordPress_Data#Microformats_data\" rel=\"nofollow ugc\">Details here.\u003C\u002Fa> All values are arrays; use \u003Ccode>unserialize()\u003C\u002Fcode> to deserialize them.\u003C\u002Fp>\n\u003Cp>Does \u003Cem>not\u003C\u002Fem> support multithreading. PHP doesn’t really either, so it generally won’t matter, but just for the record.\u003C\u002Fp>\n\u003Cp>Supports Stable Extensions to Micropub:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Findieweb.org\u002FMicropub-extensions#Post_Status\" rel=\"nofollow ugc\">Post Status\u003C\u002Fa> – Either \u003Ccode>published\u003C\u002Fcode> or \u003Ccode>draft\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Findieweb.org\u002FMicropub-extensions#Visibility\" rel=\"nofollow ugc\">Visibility\u003C\u002Fa> – Either \u003Ccode>public\u003C\u002Fcode> or \u003Ccode>private\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Findieweb.org\u002FMicropub-extensions#Query_for_Category.2FTag_List\" rel=\"nofollow ugc\">Query for Category\u002FTag List\u003C\u002Fa> – Supports querying for categories and tags.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Findieweb.org\u002FMicropub-extensions#Slug\" rel=\"nofollow ugc\">Slug\u003C\u002Fa> – Custom slug.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Findieweb.org\u002FMicropub-extensions#Query_for_Post_List\" rel=\"nofollow ugc\">Query for Post List\u003C\u002Fa> – Supports query for the last x number of posts.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Supports Proposed Extensions to Micropub:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F35\" rel=\"nofollow ugc\">Limit Parameter for Query\u003C\u002Fa> – Supports adding limit to any query designed to return a list of options to limit it to that number.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F36\" rel=\"nofollow ugc\">Offset Parameter for Query\u003C\u002Fa> – Supports adding offset to any query. Must be used with limit.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F34\" rel=\"nofollow ugc\">Filter Parameter for Query\u003C\u002Fa> – Supported for the Category\u002FTag List query.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F16\" rel=\"nofollow ugc\">Location Visiblity\u003C\u002Fa> – Either \u003Ccode>public\u003C\u002Fcode>, \u003Ccode>private\u003C\u002Fcode>, or \u003Ccode>protected\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F7\" rel=\"nofollow ugc\">Query for Supported Queries\u003C\u002Fa> – Returns a list of query parameters the endpoint supports\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F8\" rel=\"nofollow ugc\">Query for Supported Properties\u003C\u002Fa> – Returns a list of which supported experimental properties the endpoint supports so the client can choose to hide unsupported ones.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F15\" rel=\"nofollow ugc\">Discovery of Media Endpoint using Link Rel\u003C\u002Fa> – Adds a link header for the media endpoint\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F32\" rel=\"nofollow ugc\">Supports extended GEO URIs\u003C\u002Fa> – Supports adding arbitrary parameters to the GEO URI. Micropub converts this into an mf2 object. Supported as built into the Indigenous client.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F30\" rel=\"nofollow ugc\">Supports deleting uploaded media\u003C\u002Fa> – Supports action=delete&url=url on the media endpoint to delete files.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F14\" rel=\"nofollow ugc\">Supports querying for media on the media endpoint\u003C\u002Fa> and \u003Ca href=\"\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F37)\" rel=\"nofollow ugc\">optional URL parameter for same\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F45\" rel=\"nofollow ugc\">Supports filtering media queries by mime-type\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F8#issuecomment-536301952\" rel=\"nofollow ugc\">Return Visibility in q=config\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Deprecated Extensions still Supported:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F10\" rel=\"nofollow ugc\">Last Media Uploaded\u003C\u002Fa> – Supports querying for the last image uploaded …set to within the last hour. This was superseded by supporting \u003Ccode>q=source&limit=1\u003C\u002Fcode> on the media endpoint.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Extensions Supported by Other Plugins:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fmicropub-extensions\u002Fissues\u002F6\" rel=\"nofollow ugc\">Query for Location\u003C\u002Fa> – Suported by Simple Location if installed.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If an experimental property is not set to one of the noted options, the plugin will return HTTP 400 with body:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>{\n  \"error\": \"invalid_request\",\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>WordPress has a \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FUploading_Files#About_Uploading_Files_on_Dashboard\" rel=\"nofollow ugc\">whitelist of file extensions that it allows in uploads\u003C\u002Fa>. If you upload a file in a Micropub extension that doesn’t have an allowed extension, the plugin will return HTTP 400 with body:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>{\n  \"error\": \"invalid_request\",\n  \"error_description\": \"Sorry, this file is not permitted for security reasons.\"\n}\u003Ch3>Authentication and authorization\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For reasons of security it is recommended that you only use this plugin on sites that implement HTTPS. Authentication is not built into this plugin.\u003C\u002Fp>\n\u003Cp>In order to use this, the IndieAuth plugin is required. Other plugins may be written in future as alternatives and will be noted if they exist.\u003C\u002Fp>\n\u003Ch3>Configuration Options\u003C\u002Fh3>\n\u003Cp>These configuration options can be enabled by adding them to your wp-config.php\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>define('MICROPUB_NAMESPACE', 'micropub\u002F1.0' )\u003C\u002Fcode> – By default the namespace for micropub is micropub\u002F1.0. This would allow you to change this for your endpoint\u003C\u002Fli>\n\u003Cli>\u003Ccode>define('MICROPUB_DISABLE_NAG', 1 )\u003C\u002Fcode> – Disable notices for insecure sites\u003C\u002Fli>\n\u003Cli>\u003Ccode>define('MICROPUB_DRAFT_MODE', 1 )\u003C\u002Fcode> – Override default post status and set to draft for debugging purposes.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cp>The canonical repo is http:\u002F\u002Fgithub.com\u002Findieweb\u002Fwordpress-micropub . Feedback and pull requests are welcome!\u003C\u002Fp>\n\u003Cp>To add a new release to the WordPress plugin directory, tag it with the version number and push the tag. It will automatically deploy.\u003C\u002Fp>\n\u003Cp>To set up your local environment to run the unit tests and set up PHPCodesniffer to test adherence to \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fcore\u002Fhandbook\u002Fcoding-standards\u002Fphp\u002F\" rel=\"nofollow ugc\">WordPress Coding Standards\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwimg\u002FPHPCompatibility\" rel=\"nofollow ugc\">PHP Compatibility\u003C\u002Fa>:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Install \u003Ca href=\"https:\u002F\u002Fgetcomposer.org\" rel=\"nofollow ugc\">Composer\u003C\u002Fa>. Composer is only used for development and is not required to run the plugin.\u003C\u002Fli>\n\u003Cli>Run \u003Ccode>composer install\u003C\u002Fcode> which will install PHP Codesniffer, PHPUnit, the standards required, and all dependencies.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>To configure PHPUnit\u003C\u002Fp>\n\u003Col>\n\u003Cli>Install and start MySQL. (You may already have it.)\u003C\u002Fli>\n\u003Cli>Run \u003Ccode>.\u002Fbin\u002Finstall-wp-tests.sh wordpress_micropub_test root '' localhost\u003C\u002Fcode> to download WordPress and \u003Ca href=\"https:\u002F\u002Fdevelop.svn.wordpress.org\u002Ftrunk\u002Ftests\u002Fphpunit\u002F\" rel=\"nofollow ugc\">its unit test library\u003C\u002Fa>, into your systems tmp directory by default, and create a MySQL db to test against. \u003Ca href=\"http:\u002F\u002Fwp-cli.org\u002Fdocs\u002Fplugin-unit-tests\u002F\" rel=\"nofollow ugc\">Background here\u003C\u002Fa>. Feel free to use a MySQL user other than \u003Ccode>root\u003C\u002Fcode>. You can set the \u003Ccode>WP_CORE_DIR\u003C\u002Fcode> and \u003Ccode>WP_TESTS_DIR\u003C\u002Fcode> environment variables to change where WordPress and its test library are installed. For example, I put them both in the repo dir.\u003C\u002Fli>\n\u003Cli>Open \u003Ccode>wordpress-tests-lib\u002Fwp-tests-config.php\u003C\u002Fcode> and add a slash to the end of the ABSPATH value. No clue why it leaves off the slash; it doesn’t work without it.\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Run \u003Ccode>phpunit\u003C\u002Fcode> in the repo root dir. If you set \u003Ccode>WP_CORE_DIR\u003C\u002Fcode> and \u003Ccode>WP_TESTS_DIR\u003C\u002Fcode> above, you’ll need to set them for this too. You should see output like this:\u003C\u002Fp>\n\u003Cp>Installing…\u003Cbr \u002F>\n…\u003Cbr \u002F>\n1 \u002F 1 (100%)\u003Cbr \u002F>\nTime: 703 ms, Memory: 33.75Mb\u003Cbr \u002F>\nOK (1 test, 3 assertions)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>To set up PHPCodesniffer to test adherence to \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fcore\u002Fhandbook\u002Fcoding-standards\u002Fphp\u002F\" rel=\"nofollow ugc\">WordPress Coding Standards\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwimg\u002FPHPCompatibility\" rel=\"nofollow ugc\">PHP 5.6 Compatibility\u003C\u002Fa>:\u003C\u002Fp>\n\u003Col>\n\u003Cli>To list coding standard issues in a file, run \u003Ccode>composer phpcs\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>If you want to try to automatically fix issues, run `composer phpcbf“.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>To automatically convert the readme.txt file to readme.md, you may, if you have installed composer as noted in the previous section, enter \u003Ccode>composer update-readme\u003C\u002Fcode> to have the .txt file converted\u003Cbr \u002F>\ninto markdown and saved to readme.md.\u003C\u002Fp>\n","Allows you to publish to your site using Micropub clients.",200,18718,100,4,"2024-06-13T04:39:00.000Z","6.5.8","4.9.9","5.6",[20,21,4,22],"indieweb","microformats","publish","https:\u002F\u002Fgithub.com\u002Findieweb\u002Fwordpress-micropub","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmicropub.2.4.0.zip",92,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":20,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":25,"avg_patch_time_days":14,"trust_score":33,"computed_at":34},5,1420,94,"2026-04-04T08:09:43.967Z",[36,52,72,97,117],{"slug":37,"name":38,"version":39,"author":7,"author_profile":8,"description":40,"short_description":41,"active_installs":11,"downloaded":42,"rating":13,"num_ratings":43,"last_updated":44,"tested_up_to":45,"requires_at_least":46,"requires_php":47,"tags":48,"homepage":49,"download_link":50,"security_score":51,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"wp-uf2","Microformats 2","1.1.0","\u003Cp>It is only a very basic implementation, because not every element is accessible through actions or filters. It is better to use a theme that supports \u003Ca href=\"http:\u002F\u002Fmicroformats.org\u002Fwiki\u002Fmicroformats2\" rel=\"nofollow ugc\">Microformats 2\u003C\u002Fa> fully.\u003C\u002Fp>\n","Enhances your WordPress theme with Microformats 2 classes.",7365,2,"2018-02-18T21:54:00.000Z","4.9.29","4.7","",[20,21],"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fwordpress-uf2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-uf2.1.1.0.zip",85,{"slug":53,"name":54,"version":55,"author":56,"author_profile":57,"description":58,"short_description":59,"active_installs":60,"downloaded":61,"rating":26,"num_ratings":26,"last_updated":62,"tested_up_to":63,"requires_at_least":64,"requires_php":65,"tags":66,"homepage":70,"download_link":71,"security_score":13,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"mf2-feed","MF2 Feeds","3.1.1","Matthias Pfefferle","https:\u002F\u002Fprofiles.wordpress.org\u002Fpfefferle\u002F","\u003Cp>Provides a \u003Ca href=\"http:\u002F\u002Fmicroformats.org\u002Fwiki\u002Fmicroformats2-parsing\" rel=\"nofollow ugc\">Microformats2 JSON\u003C\u002Fa> “Feed” for every WordPress URL, and helps to allow other sites to get pre-parsed \u003Ca href=\"https:\u002F\u002Findieweb.org\u002Fjf2\" rel=\"nofollow ugc\">Microformats-JSON\u003C\u002Fa> even if the theme\u003Cbr \u002F>\ndoes not support Microformats2.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Findieweb.org\u002Fmicroformats\" rel=\"nofollow ugc\">Microformats2\u003C\u002Fa> are a key \u003Ca href=\"https:\u002F\u002Findieweb.org\u002FCategory:building-blocks\" rel=\"nofollow ugc\">building-block\u003C\u002Fa> of the IndieWeb, but it is very hard (if not impossible) to get Microformats2 as a core feature for all WordPress themes. There are several themes that are supporting Microformats2, but everyone should choose his prefered theme and should not be limited to use one of the \u003Ca href=\"https:\u002F\u002Findieweb.org\u002FWordPress\u002FThemes\" rel=\"nofollow ugc\">few community themes\u003C\u002Fa>. After \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Findieweb\u002Fwordpress-uf2\u002Fissues\u002F30\" rel=\"nofollow ugc\">a lot of discussions\u003C\u002Fa> and some different plugin approaches, we are trying to provide an alternate (\u003Ca href=\"https:\u002F\u002Findieweb.org\u002Frel-alternate\" rel=\"nofollow ugc\">\u003Ccode>rel=altenate\u003C\u002Fcode>\u003C\u002Fa>) representation of the microformatted HTML.\u003C\u002Fp>\n\u003Cp>The plugin is inspired by the URL design of \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Faaronpk\u002Fp3k\" rel=\"nofollow ugc\">p3k\u003C\u002Fa> of \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Faaronpk\" rel=\"nofollow ugc\">@aaronpk\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>p3k Example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Original: \u003Ca href=\"https:\u002F\u002Faaronparecki.com\u002F2018\u002F07\u002F30\u002F18\u002Fxray-updates\" rel=\"nofollow ugc\">https:\u002F\u002Faaronparecki.com\u002F2018\u002F07\u002F30\u002F18\u002Fxray-updates\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Microformats2 JSON: \u003Ca href=\"https:\u002F\u002Faaronparecki.com\u002F2018\u002F07\u002F30\u002F18\u002Fxray-updates.json\" rel=\"nofollow ugc\">https:\u002F\u002Faaronparecki.com\u002F2018\u002F07\u002F30\u002F18\u002Fxray-updates.json\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>JF2: \u003Ca href=\"https:\u002F\u002Faaronparecki.com\u002F2018\u002F07\u002F30\u002F18\u002Fxray-updates.jf2\" rel=\"nofollow ugc\">https:\u002F\u002Faaronparecki.com\u002F2018\u002F07\u002F30\u002F18\u002Fxray-updates.jf2\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>WordPress Example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Original: \u003Ca href=\"https:\u002F\u002Fnotiz.blog\u002F2013\u002F06\u002F18\u002Fthe-rise-of-the-indieweb\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Fnotiz.blog\u002F2013\u002F06\u002F18\u002Fthe-rise-of-the-indieweb\u002F\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Microformats2 JSON: \u003Ca href=\"https:\u002F\u002Fnotiz.blog\u002F2013\u002F06\u002F18\u002Fthe-rise-of-the-indieweb\u002Ffeed\u002Fmf2\" rel=\"nofollow ugc\">https:\u002F\u002Fnotiz.blog\u002F2013\u002F06\u002F18\u002Fthe-rise-of-the-indieweb\u002Ffeed\u002Fmf2\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>JF2: \u003Ca href=\"https:\u002F\u002Fnotiz.blog\u002F2013\u002F06\u002F18\u002Fthe-rise-of-the-indieweb\u002Ffeed\u002Fjf2\" rel=\"nofollow ugc\">https:\u002F\u002Fnotiz.blog\u002F2013\u002F06\u002F18\u002Fthe-rise-of-the-indieweb\u002Ffeed\u002Fjf2\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Add Microformats2 Feeds for WordPress",30,3498,"2025-12-07T19:09:00.000Z","6.9.4","5.2","7.2",[20,67,68,21,69],"jf2","mf2","rel-alternate","http:\u002F\u002Fgithub.com\u002Findieweb\u002Fwordpress-mf2-feed\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmf2-feed.3.1.1.zip",{"slug":73,"name":74,"version":75,"author":76,"author_profile":77,"description":78,"short_description":79,"active_installs":80,"downloaded":81,"rating":82,"num_ratings":83,"last_updated":84,"tested_up_to":63,"requires_at_least":85,"requires_php":86,"tags":87,"homepage":93,"download_link":94,"security_score":95,"vuln_count":31,"unpatched_count":26,"last_vuln_date":96,"fetched_at":28},"post-expirator","Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories","4.9.4","PublishPress","https:\u002F\u002Fprofiles.wordpress.org\u002Fpublishpress\u002F","\u003Cp>The PublishPress Future plugin allows you to schedule changes to posts, pages and other content types. With this plugin you can create automatic actions to unpublish, delete, trash, move a post to a new status and more. With the Pro version you can update your content using custom workflows with multiple steps and schedules.\u003C\u002Fp>\n\u003Cp>Here’s an overview of what you can do with PublishPress Future:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Select future action dates in the right sidebar when you are editing a post. This makes it very easy to schedule changes to your content.\u003C\u002Fli>\n\u003Cli>Receive email notifications when Future makes changes to your content.\u003C\u002Fli>\n\u003Cli>Build Action Workflows that allow you to update your content using custom workflows with multiple steps and schedules (available in the Pro version).\u003C\u002Fli>\n\u003Cli>Control post changes via integrations with Advanced Custom Fields and other plugins (available in the Pro version).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>PublishPress Future Pro\u003C\u002Fh3>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Upgrade to PublishPress Future Pro\u003C\u002Fstrong>\u003Cbr \u002F>\n  This plugin is the free version of the PublishPress Future plugin. The Pro version comes with all the features you need to schedule changes to your WordPress content. \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Ffuture\" title=\"PublishPress Future Pro\" rel=\"nofollow ugc\">Click here to purchase the best plugin for scheduling WordPress content updates!\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>Options for Future Actions on Posts\u003C\u002Fh3>\n\u003Cp>With PublishPress Future, you can configure actions that will happen automatically to your content. Here are the changes you can choose for your posts:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Change the status to “Draft”.\u003C\u002Fli>\n\u003Cli>Delete the post.\u003C\u002Fli>\n\u003Cli>Send the post to the Trash.\u003C\u002Fli>\n\u003Cli>Change the status to “Private”.\u003C\u002Fli>\n\u003Cli>Enable the “Stick to the top of the blog” option.\u003C\u002Fli>\n\u003Cli>Disable the “Stick to the top of the blog” option.\u003C\u002Fli>\n\u003Cli>Remove all existing categories, and add new categories.\u003C\u002Fli>\n\u003Cli>Keep all existing categories, and add new categories.\u003C\u002Fli>\n\u003Cli>Keep all existing categories, except for those specified in this change.\u003C\u002Fli>\n\u003Cli>Move the post to a custom status (available in the Pro version)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fways-to-expire-posts\u002F\" rel=\"nofollow ugc\">Click here for details on scheduling post changes\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Custom Workflows to Schedule Content Changes\u003C\u002Fh3>\n\u003Cp>With PublishPress Future Pro, you can build Action Workflows. These allow you to update your content using custom workflows with multiple steps and schedules. Here are some examples of what you can do with Action Workflows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Email the site admin when a post is updated.\u003C\u002Fli>\n\u003Cli>Change the post status to “Trash” a week after it was published.\u003C\u002Fli>\n\u003Cli>15 days after the post is published, move the post to the “Draft” status and add a new category.\u003C\u002Fli>\n\u003Cli>1 year after a post is published, send an email to the author asking them to check the content.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fworkflows\u002F\" rel=\"nofollow ugc\">Click here for details on workflows for changes\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Display the Action Date in Your Content\u003C\u002Fh3>\n\u003Cp>PublishPress Future allows you to place automatically show the expiry or action date inside your articles. The date will be added at the bottom of your post.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Ffooter-display\u002F\" rel=\"nofollow ugc\">Click here to see the Footer Display options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You can use shortcodes to show the expiration date inside your posts. You can customize the shortcode output with several formatting options.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fshortcodes-to-show-expiration-date\u002F\" rel=\"nofollow ugc\">Click here to see the shortcode options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Choose Actions Defaults for Post Types\u003C\u002Fh3>\n\u003Cp>PublishPress Future can support any post type in WordPress. Go to Settings > PublishPress Future > Defaults and you can choose default actions for each post type.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fdefaults-for-post-types\u002F\" rel=\"nofollow ugc\">Click here to see the default options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>PublishPress Future Email Notifications\u003C\u002Fh3>\n\u003Cp>The PublishPress Future plugin can send you email notifications when your content is changed. You can control the emails by going to Settings > PublishPress Future > General Settings.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Femail-notifications\u002F\" rel=\"nofollow ugc\">Click here to see the notification options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Integrations With Other Plugins\u003C\u002Fh3>\n\u003Cp>In PublishPress Future Pro it is possible to schedule changes to your posts based on metadata. This makes it possible to integrate PublishPress Future with other plugins.  For example, you can create a date field in the Advanced Custom Fields plugin and use that to control the date for Future Actions.\u003C\u002Fp>\n\u003Cp>When you are using an integration, there are five types of data that you can update in PublishPress Future:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Action Status: This field specifies if the action should be enabled.\u003C\u002Fli>\n\u003Cli>Action Date: This field stores the scheduled date for the action.\u003C\u002Fli>\n\u003Cli>Action Type: This field stores the type of action that will be executed.\u003C\u002Fli>\n\u003Cli>Taxonomy Name: The taxonomy name for being used when selecting terms.\u003C\u002Fli>\n\u003Cli>Taxonomy Terms: A list of term’s IDs for being used by the action.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fmetadata-scheduling\u002F\" rel=\"nofollow ugc\">Click here to see how to integrate Future with other plugins\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Import the Future Actions\u003C\u002Fh3>\n\u003Cp>PublishPress Future Pro supports imports from external data sources. You can import posts and automatically create Future Actions associated with those posts.\u003C\u002Fp>\n\u003Cp>The best approach is to use the Metadata Scheduling feature. If you’re using a plugin such as WP All Import, you can match up the import tables with the fields you have selected in the Metadata Scheduling feature.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fimports-and-metadata-scheduling\u002F\" rel=\"nofollow ugc\">Click here to see how to import data for Future Actions\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Details on How Post Changes Works\u003C\u002Fh3>\n\u003Cp>For each expiration event, a custom cron job is scheduled. This can help reduce server overhead for busy sites. This plugin REQUIRES that WP-CRON is setup and functional on your webhost.  Some hosts do not support this, so please check and confirm if you run into issues using the plugin.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fscheduling-cron-jobs\u002F\" rel=\"nofollow ugc\">Click here to see the technical details for this plugin\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Logs for All Your Post Changes\u003C\u002Fh3>\n\u003Cp>PublishPress Future Pro allows you to keep a detailed record of all the post updates. PublishPress Future records several key data points for all actions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The post that the action was performed on.\u003C\u002Fli>\n\u003Cli>Details of the post update.\u003C\u002Fli>\n\u003Cli>When the change was made to the post.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Faction-logs\u002F\" rel=\"nofollow ugc\">Click here to see more about the logs feature\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Join PublishPress and get the Pro plugins\u003C\u002Fh3>\n\u003Cp>The Pro versions of the PublishPress plugins are well worth your investment. The Pro versions have extra features and faster support. \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">Click here to join PublishPress\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Join PublishPress and you’ll get access to these nine Pro plugins:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fauthors\" rel=\"nofollow ugc\">PublishPress Authors Pro\u003C\u002Fa> allows you to add multiple authors and guest authors to WordPress posts.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fblocks\" rel=\"nofollow ugc\">PublishPress Blocks Pro\u003C\u002Fa> has everything you need to build professional websites with the WordPress block editor.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fcapabilities\" rel=\"nofollow ugc\">PublishPress Capabilities Pro\u003C\u002Fa> is the plugin to manage your WordPress user roles, permissions, and capabilities.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fchecklists\" rel=\"nofollow ugc\">PublishPress Checklists Pro\u003C\u002Fa> enables you to define tasks that must be completed before content is published.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Ffuture\" rel=\"nofollow ugc\">PublishPress Future Pro\u003C\u002Fa>  is the plugin for scheduling changes to your posts.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpermissions\" rel=\"nofollow ugc\">PublishPress Permissions Pro\u003C\u002Fa>  is the plugin for advanced WordPress permissions.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpublishpress\" rel=\"nofollow ugc\">PublishPress Planner Pro\u003C\u002Fa> is the plugin for managing and scheduling WordPress content.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Frevisions\" rel=\"nofollow ugc\">PublishPress Revisions Pro\u003C\u002Fa> allows you to update your published pages with teamwork and precision.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fseries\" rel=\"nofollow ugc\">PublishPress Series Pro\u003C\u002Fa> enables you to group content together into a series\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Together, these plugins are a suite of powerful publishing tools for WordPress. If you need to create a professional workflow in WordPress, with moderation, revisions, permissions and more… then you should try PublishPress.\u003C\u002Fp>\n\u003Ch4>Bug Reports\u003C\u002Fh4>\n\u003Cp>Bug reports for PublishPress Future are welcomed in our \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpublishpress\u002Fpublishpress-future\" rel=\"nofollow ugc\">repository on GitHub\u003C\u002Fa>. Please note that GitHub is not a support forum, and that issues that are not properly qualified as bugs will be closed.\u003C\u002Fp>\n","PublishPress Future can make scheduled changes to your content. You can unpublish posts, move posts to a new status, update the categories, and more.",100000,3997676,90,172,"2025-12-22T14:19:00.000Z","6.7","7.4",[88,89,90,91,92],"automatic-changes","schedule-changes","unpublish-posts","update-posts","workflows","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fpost-expirator\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-expirator.4.9.4.zip",95,"2026-01-11 00:00:00",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":80,"downloaded":105,"rating":13,"num_ratings":106,"last_updated":107,"tested_up_to":63,"requires_at_least":108,"requires_php":65,"tags":109,"homepage":113,"download_link":114,"security_score":13,"vuln_count":115,"unpatched_count":26,"last_vuln_date":116,"fetched_at":28},"pubsubhubbub","WebSub (FKA. PubSubHubbub)","4.0.0","joshfraz","https:\u002F\u002Fprofiles.wordpress.org\u002Fjoshfraz\u002F","\u003Cp>This plugin implements the \u003Ca href=\"https:\u002F\u002Fwww.w3.org\u002FTR\u002Fwebsub\u002F\" rel=\"nofollow ugc\">WebSub\u003C\u002Fa> protocol (formerly known as PubSubHubbub) for WordPress. It enables real-time notifications when your blog is updated and provides a subscriber API for other plugins to consume WebSub-enabled feeds.\u003C\u002Fp>\n\u003Ch3>Publisher Features\u003C\u002Fh3>\n\u003Cp>When you publish or update a post, this plugin automatically notifies WebSub hubs, which then distribute the update to all subscribers in real-time.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Sends realtime notifications when you update your blog\u003C\u002Fli>\n\u003Cli>Supports multi-user installations (WordPress MU)\u003C\u002Fli>\n\u003Cli>Supports multiple hubs\u003C\u002Fli>\n\u003Cli>Supports all feed formats used by WordPress (Atom, RSS2, RDF)\u003C\u002Fli>\n\u003Cli>Adds \u003Ccode>\u003Clink rel=\"hub\">\u003C\u002Fcode> and \u003Ccode>\u003Clink rel=\"self\">\u003C\u002Fcode> declarations to feeds and HTML\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Subscriber Features\u003C\u002Fh3>\n\u003Cp>The plugin provides a subscriber API that allows other plugins (like feed readers) to subscribe to WebSub-enabled feeds using WordPress hooks.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>REST API callback endpoint for subscription verification and content delivery\u003C\u002Fli>\n\u003Cli>Hub discovery from topic URLs (HTTP Link headers and feed content)\u003C\u002Fli>\n\u003Cli>HMAC signature verification (SHA1, SHA256, SHA384, SHA512)\u003C\u002Fli>\n\u003Cli>Full lifecycle hooks for integration with other plugins\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Supported Specifications\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.w3.org\u002FTR\u002Fwebsub\u002F\" rel=\"nofollow ugc\">WebSub W3C Recommendation\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpubsubhubbub.github.io\u002FPubSubHubbub\u002Fpubsubhubbub-core-0.4.html\" rel=\"nofollow ugc\">PubSubHubbub 0.4\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Default Hubs\u003C\u002Fh3>\n\u003Cp>By default this plugin will ping the following hubs:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpubsubhubbub.appspot.com\" rel=\"nofollow ugc\">Demo hub on Google App Engine\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpubsubhubbub.superfeedr.com\" rel=\"nofollow ugc\">SuperFeedr\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwebsubhub.com\" rel=\"nofollow ugc\">WebSubHub\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please contact us if you operate a hub that you would like to be included as a default option.\u003C\u002Fp>\n","A WebSub plugin for WordPress that enables real-time publishing and subscription capabilities.",2054851,6,"2026-01-22T11:03:00.000Z","4.5",[110,20,111,98,112],"feed","pubsub","websub","https:\u002F\u002Fgithub.com\u002Fpubsubhubbub\u002Fwordpress-pubsubhubbub\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpubsubhubbub.4.0.0.zip",1,"2024-01-24 00:00:00",{"slug":118,"name":119,"version":120,"author":121,"author_profile":122,"description":123,"short_description":124,"active_installs":125,"downloaded":126,"rating":25,"num_ratings":127,"last_updated":128,"tested_up_to":63,"requires_at_least":129,"requires_php":64,"tags":130,"homepage":136,"download_link":137,"security_score":138,"vuln_count":139,"unpatched_count":26,"last_vuln_date":140,"fetched_at":28},"powerpress","PowerPress Podcasting plugin by Blubrry","11.15.17","blubrry","https:\u002F\u002Fprofiles.wordpress.org\u002Fblubrry\u002F","\u003Cp>No. 1 Podcasting plugin for WordPress.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fxdoc0VaAZtU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>This is PowerPress, the ultimate podcasting plugin developed by Blubrry Podcasting. Designed by podcasters for podcasters, PowerPress enables you to publish and manage one or multiple podcasts directly from your WordPress website. Strengthen your brand and reach audiences across all major platforms, such as Apple Podcasts, Spotify, YouTube Music, Amazon Music, and more.\u003C\u002Fp>\n\u003Ch4>Key Features at a Glance:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Integrated Players:\u003C\u002Fstrong> Choose from audio and video players with embedded support for platforms like YouTube. The ‘Skip to Position in Player’ shortcode allows listeners to jump to specific episode timestamps, and the Playlist Player will enable you to show multiple episodes at a glance.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Effortless Podcast Import and Migration:\u003C\u002Fstrong> Seamlessly transition from hosts such as Spotify for Podcasters, SoundCloud, Libsyn, and more. Our Import Podcast and Migrate Media tools ensure a smooth transfer, especially to Blubrry Hosting, without losing content.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Subscribe Tools:\u003C\u002Fstrong> Boost your audience engagement with our subscribe page and sidebar widgets. Designed for responsive websites and high-resolution screens, these tools are optimized for standard and Apple Retina displays.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multiple Podcast Management:\u003C\u002Fstrong> Easily handle multiple podcasts on one website with our Category Podcasting and Podcast Channels features.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Global Language Support:\u003C\u002Fstrong> PowerPress speaks your language, with numerous translations available and emoji support for your podcast feed.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Podcasting 2.0:\u003C\u002Fstrong> As podcasting advances, Blubrry is at the forefront, implementing new Podcasting 2.0 features regularly, such as transcripts, funding, Value Time Split, chapters, live, and many more.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Get Started with Ease:\u003C\u002Fh4>\n\u003Cp>Dive into podcasting with our user-friendly onboarding. From essential settings to publishing your first episode, we guide you through each step. Plus, easily submit your podcast to major directories for maximum reach.\u003C\u002Fp>\n\u003Ch4>Integrated Media Players – Tailored for Your Content:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Audio Players:\u003C\u002Fstrong> Choose from Blubrry Player (exclusive for Blubrry Hosting customers) with close captions and chapter support, MediaElement.js, the native HTML5 audio player, or use another player of your choice.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Video Players:\u003C\u002Fstrong> Video podcasting support select from MediaElement.js, VideoJS, or the native HTML5 video player.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Customizable Positioning:\u003C\u002Fstrong> Place your player above or below content with easy-to-use player shortcodes.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Playlist Player Embed:\u003C\u002Fstrong> Showcase a playlist of your latest episodes effortlessly.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Diverse File Support:\u003C\u002Fstrong> PowerPress supports various audio and video formats, with a strong recommendation for MP3 for audio & MP4 for video.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Exclusive Integrated Subscribe Tools for Audience Growth:\u003C\u002Fh4>\n\u003Cp>Create a dedicated subscribe page and a mobile-optimized sidebar widget. Our tools are designed for clarity and ease, ensuring visitors become loyal followers\u002Fsubscribers.\u003C\u002Fp>\n\u003Ch4>Blubrry Podcast Hosting Customers – Enjoy Streamlined Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Publish media  directly from your site.\u003C\u002Fli>\n\u003Cli>View hosting usage and manage monthly quotas with ease.\u003C\u002Fli>\n\u003Cli>Conveniently migrate media files to your Blubrry account.\u003C\u002Fli>\n\u003Cli>Access IAB Certified Compliant statistics, with free and advanced options.\u003C\u002Fli>\n\u003Cli>Automated Transcripts (Optional)\u003C\u002Fli>\n\u003Cli>Media Mastering of Audio Files (Optional)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Migrating from Other Platforms?\u003C\u002Fh4>\n\u003Cp>PowerPress makes it easy. Whether you’re coming from another podcast plugin or a different service such as Libsyn or PodBean, our Import Podcast tool efficiently transfers your RSS feed and episodes.\u003C\u002Fp>\n\u003Ch4>PowerPress in Your Language:\u003C\u002Fh4>\n\u003Cp>Join our global community with PowerPress’ multilingual support. Interested in contributing translations? Contact us for an opportunity to get involved and gain recognition.\u003C\u002Fp>\n\u003Ch4>Ready to Transform Your Podcast?\u003C\u002Fh4>\n\u003Cp>Embrace the power of PowerPress for a seamless, feature-rich podcasting experience. Visit our website to learn more, download the plugin, and start your podcasting adventure today!\u003C\u002Fp>\n\u003Ch4>Need Help?\u003C\u002Fh4>\n\u003Cp>Contact the Blubrry Support team and look through the PowerPress \u003Ca href=\"https:\u002F\u002Fblubrry.com\u002Fsupport\u002Fpowerpress-documentation\u002Fpowerpress-documentation\u002F\" rel=\"nofollow ugc\">documentation\u003C\u002Fa> we’ve created.\u003C\u002Fp>\n\u003Ch4>Contributors\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Angelo Mandato, CIO \u003Ca href=\"http:\u002F\u002Fwww.blubrry.com\" rel=\"nofollow ugc\">Blubrry\u003C\u002Fa> – Plugin founder, architect and lead developer\u003C\u002Fli>\n\u003Cli>Pat McSweeny, PHP Developer – Developed initial version (v0.1.0) of plugin\u003C\u002Fli>\n\u003Cli>Jerry Stephens, \u003Ca href=\"http:\u002F\u002Fwayofthegeek.org\" rel=\"nofollow ugc\">Way of the Geek\u003C\u002Fa> – Contributed initial code fix for excerpt bug resolved in v0.6.1, wrote initial code for the 4 new flash players.\u003C\u002Fli>\n\u003Cli>Darcy Fiander, \u003Ca href=\"http:\u002F\u002Frootyradio.com\" rel=\"nofollow ugc\">Rooty Radio\u003C\u002Fa> – Fixed bug with category links to FeedValidator.org and category title warning when validating category feeds.\u003C\u002Fli>\n\u003Cli>Joel Haasnoot, \u003Ca href=\"http:\u002F\u002Fwaarisdetrein.nl\u002Fjoelhaasnoot\u002F\" rel=\"nofollow ugc\">Personal Blog\u003C\u002Fa> – Developed PodPress archive statistics.\u003C\u002Fli>\n\u003Cli>Nicolas Bouliane, \u003Ca href=\"http:\u002F\u002Fnicolasbouliane.com\u002F\" rel=\"nofollow ugc\">Personal Blog\u003C\u002Fa> – Contributed code for \u003Ccode>get_the_powerpress_all_players()\u003C\u002Fcode> function.\u003C\u002Fli>\n\u003Cli>Isiah Lloyd – Developed features in PowerPress 7.5, 7.6 and part of 8.0\u003C\u002Fli>\n\u003Cli>Ben Beecroft – Developed features in PowerPress 8.1+\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Translators\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Danish translation for v1.0.11+ by \u003Ca href=\"http:\u002F\u002Fwordpress.blogos.dk\u002Fs%C3%B8g-efter-downloads\u002F?did=280\" rel=\"nofollow ugc\">Team Blogos\u003C\u002Fa> – Latest translation available \u003Ca href=\"http:\u002F\u002Fwordpress.blogos.dk\u002Fs%C3%B8g-efter-downloads\u002F?did=280\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>French translation for v1.0.11+ by \u003Ca href=\"http:\u002F\u002Fwpchannel.com\u002F\" rel=\"nofollow ugc\">Aur�lien Denis\u003C\u002Fa> – Aur�lien is looking for assistance maintaining the French translation, email wpchannel [at] gmail.com if interested.\u003C\u002Fli>\n\u003Cli>Simplified Chinese for v1.0.12+ by \u003Ca href=\"http:\u002F\u002Fcodeex.cn\" rel=\"nofollow ugc\">webmote\u003C\u002Fa> – From webmote: Welcome to use the plugin. Very good! and then hope you to access my site.\u003C\u002Fli>\n\u003Cli>Italian translation for v2.0.4+ by \u003Ca href=\"http:\u002F\u002Fveneziadoc.net\u002F\" rel=\"nofollow ugc\">Umberto Sartori\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Romanian translation for v2.0.4+ by Alexander Ovsov (Web Geek Sciense: http:\u002F\u002Fwebhostinggeeks.com\u002Fscience\u002F)\u003C\u002Fli>\n\u003Cli>Russian translation for v4.0.5+ by  \u003Ca href=\"http:\u002F\u002Fwww.nightdiary.ru\u002F\" rel=\"nofollow ugc\">Igor Mercury\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Brazilian Portuguese translation for v6.0+ by \u003Ca href=\"http:\u002F\u002Fradiofobia.com.br\u002F\" rel=\"nofollow ugc\">Leo Lopes from Radiofobia\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Support\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fblubrry.com\u002Fsupport\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Fblubrry.com\u002Fsupport\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Blubrry Social\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fblubrry\" rel=\"nofollow ugc\">Twitter\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fblubrry\" rel=\"nofollow ugc\">Facebook\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwww.instagram.com\u002Fblubrry_podcasting\u002F\" rel=\"nofollow ugc\">Instagram\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUC9sE1Yz2deZiGAP67xYx9Xg\" rel=\"nofollow ugc\">YouTube\u003C\u002Fa>\u003C\u002Fp>\n","No. 1 Podcasting plugin for WordPress.",30000,6119819,231,"2026-03-05T15:03:00.000Z","3.6",[131,132,133,134,135],"apple-podcasts","podcast","podcast-publishing","podcast-rss-feed","spotify","https:\u002F\u002Fblubrry.com\u002Fservices\u002Fpowerpress-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpowerpress.11.15.17.zip",88,19,"2026-02-25 00:00:00",{"attackSurface":142,"codeSignals":203,"taintFlows":218,"riskAssessment":219,"analyzedAt":226},{"hooks":143,"ajaxHandlers":199,"restRoutes":200,"shortcodes":201,"cronEvents":202,"entryPointCount":26,"unprotectedCount":26},[144,150,155,158,163,166,170,175,177,179,181,183,184,186,191,196],{"type":145,"name":146,"callback":147,"file":148,"line":149},"action","plugins_loaded","init","includes\\class-micropub-endpoint.php",3,{"type":145,"name":151,"callback":152,"priority":153,"file":148,"line":154},"wp_head","html_header",99,29,{"type":145,"name":156,"callback":157,"file":148,"line":60},"send_headers","http_header",{"type":159,"name":160,"callback":161,"file":148,"line":162},"filter","host_meta","jrd_links",31,{"type":159,"name":164,"callback":161,"file":148,"line":165},"webfinger_user_data",32,{"type":145,"name":167,"callback":168,"file":148,"line":169},"rest_api_init","register_route",35,{"type":159,"name":171,"callback":172,"priority":173,"file":148,"line":174},"rest_request_after_callbacks","return_micropub_error",10,37,{"type":145,"name":146,"callback":147,"file":176,"line":149},"includes\\class-micropub-media.php",{"type":145,"name":167,"callback":168,"file":176,"line":178},14,{"type":145,"name":151,"callback":152,"priority":153,"file":176,"line":180},17,{"type":145,"name":156,"callback":157,"file":176,"line":182},18,{"type":159,"name":160,"callback":161,"file":176,"line":139},{"type":159,"name":164,"callback":161,"file":176,"line":185},20,{"type":159,"name":187,"callback":188,"priority":115,"file":189,"line":190},"the_content","render_content","includes\\class-micropub-render.php",8,{"type":145,"name":192,"callback":193,"file":194,"line":195},"admin_notices","micropub_indieauth_not_installed_notice","micropub.php",66,{"type":145,"name":192,"callback":197,"file":194,"line":198},"micropub_not_ssl_notice",78,[],[],[],[],{"dangerousFunctions":204,"sqlUsage":212,"outputEscaping":214,"fileOperations":26,"externalRequests":26,"nonceChecks":26,"capabilityChecks":31,"bundledLibraries":217},[205,209],{"fn":206,"file":148,"line":207,"context":208},"unserialize",1040,"$cur = $meta[ $key ][0] ? unserialize( $meta[ $key ][0] ) : array();",{"fn":206,"file":148,"line":210,"context":211},1054,"$existing = unserialize( $meta[ $key ][0] );",{"prepared":26,"raw":26,"locations":213},[],{"escaped":215,"rawEcho":26,"locations":216},15,[],[],[],{"summary":220,"deductions":221},"The micropub plugin v2.4.0 demonstrates a generally strong security posture, with no identified vulnerabilities in its history and excellent practices in its static analysis. The code correctly utilizes prepared statements for all SQL queries and ensures all output is properly escaped, mitigating common risks like SQL injection and cross-site scripting. The absence of file operations and external HTTP requests further reduces the attack surface. The plugin also correctly implements capability checks for its operations, though the lack of explicit nonce checks on its few entry points is a minor concern.  The presence of two `unserialize` calls, even without identified taint flows in this analysis, represents a potential risk if untrusted data were ever to be passed to them in future updates or different contexts. Overall, this version appears secure with very low immediate risk, but the `unserialize` calls warrant cautious monitoring.",[222,224],{"reason":223,"points":31},"Use of unserialize without input sanitization",{"reason":225,"points":31},"Missing nonce checks on entry points","2026-03-16T20:08:40.965Z",{"wat":228,"direct":233},{"assetPaths":229,"generatorPatterns":230,"scriptPaths":231,"versionParams":232},[],[],[],[],{"cssClasses":234,"htmlComments":235,"htmlAttributes":236,"restEndpoints":237,"jsGlobals":239,"shortcodeOutput":240},[],[],[],[238],"\u002Fmicropub\u002F1.0\u002Fendpoint",[],[]]