{"id":462,"date":"2017-07-05T23:31:38","date_gmt":"2017-07-06T03:31:38","guid":{"rendered":"https:\/\/2017.boston.wordcamp.org\/?post_type=wcb_session&#038;p=462"},"modified":"2017-07-12T21:59:03","modified_gmt":"2017-07-13T01:59:03","slug":"playing-ball-with-plugins","status":"publish","type":"wcb_session","link":"https:\/\/boston.wordcamp.org\/2017\/session\/playing-ball-with-plugins\/","title":{"rendered":"Playing ball with Plugins"},"content":{"rendered":"<p>Developers have spent countless hours working on a plugin that seems to be built just for you, just for this moment. If only it wouldn\u2019t\u2026 This is a problem nearly every developer faces at some point during a project. Knowing how to safely customize functionality is key to building products that will stand the test of time (or major updates.)<\/p>\n<p>This talk will cover the following topics:<\/p>\n<ul>\n<li>Tips for diving into a large codebase (like WooCommerce or Gravity Forms)<\/li>\n<li>Hooks<\/li>\n<li>Filters<\/li>\n<li>Overwriting functions<\/li>\n<li>Modifying returned content<\/li>\n<li>Requesting a change to a plugin<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Developers have spent countless hours working on a plugin that seems to be built just for you, just for this moment. If only it wouldn\u2019t\u2026 This is a problem nearly every developer faces at some point during a project. Knowing &hellip; <a href=\"https:\/\/boston.wordcamp.org\/2017\/session\/playing-ball-with-plugins\/\">Continue reading <span class=\"assistive-text\">Playing ball with Plugins<\/span>  <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":5999897,"featured_media":0,"template":"","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1500732600,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[459],"footnotes":""},"session_track":[1079845,1079837],"session_category":[],"class_list":["post-462","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-3-upper-room","wcb_track-intro-to-development"],"jetpack_shortlink":"https:\/\/wp.me\/p837Yb-7s","jetpack_sharing_enabled":true,"session_date_time":{"date":"July 22, 2017","time":"10:10 am"},"session_speakers":[{"id":"459","slug":"marc-gratch","name":"Marc Gratch","link":"https:\/\/boston.wordcamp.org\/2017\/speaker\/marc-gratch\/"}],"session_cats_rendered":null,"_links":{"self":[{"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/sessions\/462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/types\/wcb_session"}],"version-history":[{"count":3,"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/sessions\/462\/revisions"}],"predecessor-version":[{"id":1558,"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/sessions\/462\/revisions\/1558"}],"speakers":[{"embeddable":true,"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/speakers\/459"}],"author":[{"embeddable":true,"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wporg\/v1\/users\/brokenflipside"}],"wp:attachment":[{"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/media?parent=462"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/session_track?post=462"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/boston.wordcamp.org\/2017\/wp-json\/wp\/v2\/session_category?post=462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}