{"id":2136,"date":"2013-03-16T14:33:04","date_gmt":"2013-03-16T14:33:04","guid":{"rendered":"https:\/\/2013.atlanta.wordcamp.org\/?p=2136"},"modified":"2013-03-18T17:55:30","modified_gmt":"2013-03-18T17:55:30","slug":"live-blogging-testing-troubleshooting-wordpress-plugins-and-themes","status":"publish","type":"post","link":"https:\/\/atlanta.wordcamp.org\/2013\/live-blogging-testing-troubleshooting-wordpress-plugins-and-themes\/","title":{"rendered":"Testing &amp; Troubleshooting WordPress Plugins and Themes"},"content":{"rendered":"<p><strong>Speaker:<\/strong> Michael Novotny<br \/>\n<strong>Twitter:<\/strong> <a href=\"http:\/\/www.twitter.com\/mnovotny\" target=\"_blank\">@mnovotny<\/a><\/p>\n<p><strong>Safeguards<\/strong><\/p>\n<ul>\n<li>jQuery &amp; other default scripts that are included in wordpress<\/li>\n<li>Conditionals &#8211; limit your scripts to only load on pages that are shown at that time, you\u2019ll run into less script conflicts<\/li>\n<\/ul>\n<p><strong>Testing<\/strong><\/p>\n<ul>\n<li>Data &#8211; wptest.io importable library of tests for WordPress, imports a bunch of different content types into wordpress to test out multiple examples<\/li>\n<li>Setup &#8211; adjust wordpress settings to show every process that\u2019s running<\/li>\n<li>Plugins\n<ul>\n<li>Debug Bar (base plugin)<\/li>\n<li>Log deprecated Notices &#8211; log of what is now deprecated in different versions of wordpress<\/li>\n<li>Theme-Check &#8211; runs through your blog and gives you warnings and alerts for things you should fix\/change<\/li>\n<li>Theme Mentor &#8211; above and beyond the Theme Checker plugin and makes sure that your plugin is not trying to deregister jquery, etc.<\/li>\n<li>RTL Tester &#8211; puts your theme or plugin into the perspective of reading right to left (how the rest of the world works)<\/li>\n<li>Slim Jetpack &#8211; jetpack without having to connect to wordpress.com to start using it. Assumes everything off, so you only turn on what you actually need.<\/li>\n<li>Browser cache &#8211; when you\u2019re tired of bashing your head against the wall.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><strong>Troubleshooting<\/strong><\/p>\n<ul>\n<li>Plugin vs. Theme vs. Core vs. Server\/Configuration\/PHP issue<\/li>\n<li>Chrome Developer Tools\n<ul>\n<li>Launch Chrome Developer Tools<\/li>\n<li>Right Click &gt; Inspect Element<\/li>\n<li>Access to live editable CSS, Source code, Console<\/li>\n<\/ul>\n<\/li>\n<li>Cross browser &amp; device testing\n<ul>\n<li>Viewport Resizer &#8211; simulates actual sizes and devices.<\/li>\n<li>Browser Stack &#8211; service for testing different OS, Browsers and devices<\/li>\n<\/ul>\n<\/li>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Speaker: Michael Novotny Twitter: @mnovotny Safeguards jQuery &amp; other default scripts that are included in wordpress Conditionals &#8211; limit your scripts to only load on pages that are shown at that time, you\u2019ll run into less script conflicts Testing Data &#8211; wptest.io importable library of tests for WordPress, imports a bunch of different content types [&hellip;]<\/p>\n","protected":false},"author":8480538,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[126376],"tags":[],"class_list":["post-2136","post","type-post","status-publish","format-standard","hentry","category-live-blogging"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p2YmVp-ys","_links":{"self":[{"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/posts\/2136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/users\/8480538"}],"replies":[{"embeddable":true,"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/comments?post=2136"}],"version-history":[{"count":3,"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/posts\/2136\/revisions"}],"predecessor-version":[{"id":2196,"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/posts\/2136\/revisions\/2196"}],"wp:attachment":[{"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/media?parent=2136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/categories?post=2136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atlanta.wordcamp.org\/2013\/wp-json\/wp\/v2\/tags?post=2136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}