{"id":655,"date":"2016-10-26T21:21:19","date_gmt":"2016-10-26T19:21:19","guid":{"rendered":"https:\/\/2016.geneva.wordcamp.org\/?post_type=wcb_session&#038;p=655"},"modified":"2016-10-31T17:43:49","modified_gmt":"2016-10-31T16:43:49","slug":"wordpress-actions-and-filters","status":"publish","type":"wcb_session","link":"https:\/\/geneva.wordcamp.org\/2016\/session\/wordpress-actions-and-filters\/","title":{"rendered":"WordPress Actions and Filters (conference)"},"content":{"rendered":"<p>I&#8217;d love to speak about a subject close to my heart &#8211; actions and filters. I&#8217;ve encountered many situations where when someone wanted to expand on or change WordPress&#8217;s functionality, they made changes to the core code. This is not just bad for future-proofing your website, it is also unnecessary. WordPress is rich in hooks laid throughout the code base for anyone to use. I&#8217;d be happy to speak about the purposes of actions and filters, and about the differences between them. I can also share my technique of using &#8216;grep&#8217; on plugins source code to quickly find their hooks and make their behavior suit my needs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;d love to speak about a subject close to my heart &#8211; actions and filters. I&#8217;ve encountered many situations where when someone wanted to expand on or change WordPress&#8217;s functionality, they made changes to the core code. This is not just bad for future-proofing your website, it is also unnecessary. WordPress is rich in hooks &hellip; <a href=\"https:\/\/geneva.wordcamp.org\/2016\/session\/wordpress-actions-and-filters\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">WordPress Actions and Filters (conference)<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":7317981,"featured_media":0,"template":"","meta":{"_crdt_document":"","_wcpt_session_time":1479479400,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[579],"footnotes":""},"session_track":[12343],"session_category":[],"class_list":["post-655","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-workshop"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pheRcQ-az","session_date_time":{"date":"18 November 2016","time":"15:30"},"session_speakers":[{"id":"579","slug":"ari-leviatan","name":"Ari Leviatan","link":"https:\/\/geneva.wordcamp.org\/2016\/speaker\/ari-leviatan\/"}],"session_cats_rendered":null,"_links":{"self":[{"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/sessions\/655","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/types\/wcb_session"}],"author":[{"embeddable":true,"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/users\/7317981"}],"version-history":[{"count":2,"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/sessions\/655\/revisions"}],"predecessor-version":[{"id":863,"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/sessions\/655\/revisions\/863"}],"speakers":[{"embeddable":true,"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/speakers\/579"}],"wp:attachment":[{"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/media?parent=655"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/session_track?post=655"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/geneva.wordcamp.org\/2016\/wp-json\/wp\/v2\/session_category?post=655"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}