{"id":457,"date":"2018-10-10T11:26:56","date_gmt":"2018-10-10T09:26:56","guid":{"rendered":"https:\/\/2018.johannesburg.wordcamp.org\/?post_type=wcb_session&#038;p=457"},"modified":"2018-10-10T11:26:56","modified_gmt":"2018-10-10T09:26:56","slug":"woop-oop-ifying-wordpress","status":"publish","type":"wcb_session","link":"https:\/\/johannesburg.wordcamp.org\/2018\/session\/woop-oop-ifying-wordpress\/","title":{"rendered":"WOOP: OOP-ifying WordPress"},"content":{"rendered":"<p>WordPress is a great CMS and platform and provides a lot of functionality to get a website up and running very quickly. However, as any plugin developer will know, you often have to write and repeat a lot of code when creating custom Post Types, Taxonomies and other WordPress entities. This talk will focus on how to build plugins in a way that uses the principles of Object Orientated Programming, like inheritance, aggregation and composition. The talk will be based around a library that we&#8217;re building at Flicker Leap that&#8217;s intended to be a collection of classes to speed up WordPress plugin development (and can be included in any plugin via Composer or manual download). I will also be going through the internal code of the library, the methodologies behind the implementation and how it can be used in practice. I will also talk about writing plugin code that is reusable and DRY (Don&#8217;t Repeat Yourself).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress is a great CMS and platform and provides a lot of functionality to get a website up and running very quickly. However, as any plugin developer will know, you often have to write and repeat a lot of code when creating custom Post Types, Taxonomies and other WordPress entities. This talk will focus on [&hellip;]<\/p>\n","protected":false},"author":15726525,"featured_media":0,"template":"","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1540458900,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[456],"footnotes":""},"session_track":[1264138],"session_category":[],"class_list":["post-457","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-space-engineers-i-make-things-for-wordpress"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9Nyrj-7n","session_date_time":{"date":"October 25, 2018","time":"11:15 am"},"session_speakers":[{"id":"456","slug":"matthew-datlon","name":"Matthew Datlon","link":"https:\/\/johannesburg.wordcamp.org\/2018\/speaker\/matthew-datlon\/"}],"session_cats_rendered":null,"_links":{"self":[{"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions\/457","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/types\/wcb_session"}],"version-history":[{"count":1,"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions\/457\/revisions"}],"predecessor-version":[{"id":630,"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions\/457\/revisions\/630"}],"speakers":[{"embeddable":true,"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/speakers\/456"}],"author":[{"embeddable":true,"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wporg\/v1\/users\/mattthestarfish"}],"wp:attachment":[{"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/media?parent=457"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/session_track?post=457"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/johannesburg.wordcamp.org\/2018\/wp-json\/wp\/v2\/session_category?post=457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}