{"id":6263,"date":"2009-07-28T05:35:55","date_gmt":"2009-07-28T05:35:55","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/hookpress\/"},"modified":"2015-01-31T15:44:51","modified_gmt":"2015-01-31T15:44:51","slug":"hookpress","status":"closed","type":"plugin","link":"https:\/\/es-co.wordpress.org\/plugins\/hookpress\/","author":284759,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.14","stable_tag":"1.14","tested":"4.1.42","requires":"3.6","requires_php":"","requires_plugins":"","header_name":"HookPress","header_author":"mitcho (Michael Yoshitaka Erlewine)","header_description":"","assets_banners_color":"d3e7f8","last_updated":"2015-01-31 15:44:51","external_support_url":"","external_repository_url":"","donate_link":"http:\/\/tinyurl.com\/donatetomitcho","header_plugin_uri":"http:\/\/mitcho.com\/code\/hookpress\/","header_author_uri":"http:\/\/mitcho.com\/","rating":3.9,"author_block_rating":0,"active_installs":400,"downloads":28031,"num_ratings":0,"support_threads":1,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":[],"ratings":{"1":"3","2":0,"3":0,"4":0,"5":"8"},"assets_icons":[],"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":"482008","resolution":"772x250","location":"assets"}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1","0.1.1","0.1.10","0.1.11","0.1.2","0.1.3","0.1.4","0.1.5","0.1.6","0.1.7","0.1.8","0.1.9","1.13","1.14"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2453,2236,2452,15439,34953],"plugin_category":[],"plugin_contributors":[77494,78301],"plugin_business_model":[],"class_list":["post-6263","plugin","type-plugin","status-closed","hentry","plugin_tags-action","plugin_tags-filter","plugin_tags-hook","plugin_tags-webhook","plugin_tags-webhooks","plugin_contributors-automattic","plugin_contributors-mitchoyoshitaka","plugin_committers-mitchoyoshitaka"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/hookpress_d3e7f8.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Webhooks are a simple paradigm for developing instant notifications and mashups based on simple HTTP requests. With HookPress you can set up webhooks so that a specified URL (a public service or something you set up) is requested when certain WordPress actions occur. Possible uses include generating push notifications or using non-PHP web technology to extend WordPress.<\/p>\n\n<p>[vimeo 5905102]\nA tutorial video is available <a href=\"http:\/\/wordpress.tv\/2009\/09\/13\/introduction-to-hookpress\/\">on WordPress.tv<\/a>.<\/p>\n\n<p><strong><a href=\"http:\/\/en.blog.wordpress.com\/2010\/04\/14\/hook-line-and-sinker\/\">As seen on WordPress.com!<\/a><\/strong><\/p>\n\n<p><strong>To learn about the various hooks WordPress provides<\/strong>, please consult the WordPress Plugin API's <a href=\"http:\/\/codex.wordpress.org\/Plugin_API\/Action_Reference\">Action Reference<\/a> and <a href=\"http:\/\/codex.wordpress.org\/Plugin_API\/Filter_Reference\">Filter Reference<\/a>. Not all hooks are supported yet, but more are in the works.<\/p>\n\n<p><strong>To learn more about webhooks<\/strong>, take a look at the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Webhook\">wikipedia page<\/a> and also <a href=\"http:\/\/dashes.com\/anil\/2009\/07\/the-pushbutton-web-realtime-becomes-real.html\">The Pushbutton Web<\/a> by Anil Dash. Webhooks champion Jeff Lindsay's <a href=\"http:\/\/www.slideshare.net\/progrium\/using-web-hooks\">excellent slides<\/a> are a particularly good place to start.<\/p>\n\n<p><strong>To write and host a target script<\/strong> The easiest option is to set up a script on your own server to catch POST requests and act on them. <a href=\"http:\/\/requestb.in\/\">Requestbin<\/a> is a nice, free service which will host an endpoint, collect all requests, and let you inspect them, which is a great way to test requests generated by your webhooks. There is also a PHP script which does a simple version of this, <code>test.php<\/code>, included with HookPress.<\/p>\n\n<!--section=installation-->\n<p>Upload the HookPress plugin to your blog's <code>wp-content\/plugins\/<\/code> directory and activate. In the admin section, go to Settings &gt; Webhooks to add new webhooks.<\/p>\n\n<!--section=faq-->\n<p>If you have a feature request or question, please use the <a href=\"http:\/\/wordpress.org\/tags\/hookpress\">HookPress support forum<\/a>.<\/p>\n<dl>\n<dt>How does HookPress affect performance?<\/dt>\n<dd><p>HookPress currently makes requests synchronously so can measurably affect performance. I highly recommend using a caching plugin such as <a href=\"http:\/\/ocaoimh.ie\/wp-super-cache\/\">WP-SuperCache<\/a> to stem the performance hit. If your filters' results are time-sensitive or dependent on external data sources as well, make sure to set an appropriate cache expiration time.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.14<\/h4>\n\n<ul>\n<li>Additional security hardening for <code>test.php<\/code>, now no longer bundled as a <code>.php<\/code><\/li>\n<\/ul>\n\n<h4>1.13<\/h4>\n\n<ul>\n<li>Important security fix to the test endpoint, <code>test.php<\/code>.<\/li>\n<li>Code cleanup, fix bugs introduced in previous version.<\/li>\n<\/ul>\n\n<h4>1.12<\/h4>\n\n<ul>\n<li>Upgraded to work properly with jQuery 1.9+. <a href=\"https:\/\/github.com\/mitcho\/hookpress\/commit\/0b21dfec8136d51971a21fb6cbdd4ff2b8d60753\">Props liquidgecha<\/a>.<\/li>\n<li>Dropped the initial 0. in the version number, as that was just ridiculous. :)<\/li>\n<\/ul>\n\n<h4>0.1.11<\/h4>\n\n<ul>\n<li>Fix to register the right number of incoming arguments for actions.<\/li>\n<\/ul>\n\n<h4>0.1.10<\/h4>\n\n<ul>\n<li>No longer depends on the Snoopy library; uses <code>wp_remote_post()<\/code> instead. Note that the HTTP referer may no longer be sent correctly.<\/li>\n<li>Added the <code>hookpress_request<\/code> filter.<\/li>\n<li>Code cleanup<\/li>\n<\/ul>\n\n<h4>0.1.9<\/h4>\n\n<ul>\n<li>New snazzy options screen, with <a href=\"http:\/\/en.blog.wordpress.com\/2010\/04\/14\/hook-line-and-sinker\/\">help from Automattic<\/a>\n\n<ul>\n<li>added webhook editing<\/li>\n<\/ul><\/li>\n<li>Various miscellaneous features: added nonces for security, modularized the code a bit, etc.<\/li>\n<\/ul>\n\n<h4>0.1.8<\/h4>\n\n<ul>\n<li>Added more filters?now covers basic + comment filters<\/li>\n<li>Marking as compatible through 2.9.9, because it should be.<\/li>\n<li>Added version checking and beta offers to the options screen.<\/li>\n<\/ul>\n\n<h4>0.1.7<\/h4>\n\n<ul>\n<li>Now supports basically all actions. (Still no actions with no arguments.)<\/li>\n<li>Added more filter options?now covers all basic database read filters.<\/li>\n<\/ul>\n\n<h4>0.1.6<\/h4>\n\n<ul>\n<li>Added another batch of actions. (Still no actions with no arguments, though... something to consider.)<\/li>\n<li>Fixed hooks which referred to the users and links tables.<\/li>\n<\/ul>\n\n<h4>0.1.5<\/h4>\n\n<ul>\n<li>Now enforces sending the first field in filters and highlights the first field.<\/li>\n<li>Added FAQ note on performance concerns and caching.<\/li>\n<\/ul>\n\n<h4>0.1.4<\/h4>\n\n<ul>\n<li>Bugfix: hooks with ID 0 can now be deleted<\/li>\n<li>Made HookPress fully localizable - please email before you start localizing to claim your language.<\/li>\n<\/ul>\n\n<h4>0.1.3<\/h4>\n\n<ul>\n<li>A small bugfix to the filters list for <code>save_pre<\/code><\/li>\n<li>Initial support for filters with an short list of supported filters<\/li>\n<li>Updated <code>test.php<\/code> to return first parameter (to trivially support filters)<\/li>\n<\/ul>\n\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>Added support for the <code>post_url<\/code> field<\/li>\n<li>Added support for <code>parent_*<\/code> post fields for <code>save_post<\/code> which are sent in case the post is a revision of a previous draft.<\/li>\n<li>Fixes a PHP error which displayed on install<\/li>\n<li>Disallowed redirects on the webhook - corrects duplicate records when used with PostBin<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Fixed namespace collision with <a href=\"http:\/\/mitcho.com\/code\/yarpp\/\">Yet Another Related Posts Plugin<\/a>.<\/li>\n<li>Minor documentation changes.<\/li>\n<\/ul>\n\n<h4>0.1<\/h4>\n\n<ul>\n<li>Initial release\n\n<ul>\n<li>supports webhooks based on WP actions<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Future plans<\/h4>\n\n<ul>\n<li>Editing webhooks (rather than deleting and adding)<\/li>\n<li>More custmization on a per-webhook basis<\/li>\n<\/ul>\n\n<p>If you have a feature request or question, please use the <a href='http:\/\/wordpress.org\/tags\/hookpress'>HookPress support forum<\/a>.<\/p>","raw_excerpt":"HookPress turns your WordPress-internal hooks into webhooks. Possible uses include generating push notifications or extending WordPress with non-PHP.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/6263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=6263"}],"author":[{"embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mitchoyoshitaka"}],"wp:attachment":[{"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=6263"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=6263"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=6263"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=6263"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=6263"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/es-co.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=6263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}