{"id":6908,"date":"2019-04-29T22:02:14","date_gmt":"2019-04-29T22:02:14","guid":{"rendered":"https:\/\/wpinitiate.com\/index.php\/2019\/04\/29\/how-to-get-your-wordpress-plugins-approved-on-codecanyon-also-for-wp-requirements-compliant-badge\/"},"modified":"2019-04-29T22:02:14","modified_gmt":"2019-04-29T22:02:14","slug":"how-to-get-your-wordpress-plugins-approved-on-codecanyon-also-for-wp-requirements-compliant-badge","status":"publish","type":"post","link":"https:\/\/wpinitiate.com\/index.php\/2019\/04\/29\/how-to-get-your-wordpress-plugins-approved-on-codecanyon-also-for-wp-requirements-compliant-badge\/","title":{"rendered":"How to get your WordPress plugins approved on CodeCanyon (also for WP Requirements Compliant badge)"},"content":{"rendered":"<p>This video will teach you on how to fix some common code issues in your plugins and get your code approved on CodeCanyon. I provide a list of common rejection reasons and fixes for them.<\/p>\n<p>Check also my blog post on this subject: <a href=\"https:\/\/coderevolution.ro\/2019\/04\/27\/common-rejection-reasons-in-plugin-review-on-codecanyon-and-their-fixes\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/coderevolution.ro\/2019\/04\/27\/common-rejection-reasons-in-plugin-review-on-codecanyon-and-their-fixes\/<\/a><\/p>\n<p>Also, it will help you get the &#8216;WP Requirements Compliant&#8217; badge &#8211; after you apply these fixes for all your plugins.<\/p>\n<p>Full list of plugin requirements: <a href=\"https:\/\/help.author.envato.com\/hc\/en-us\/articles\/360000510603-WordPress-Plugin-Requirements\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/help.author.envato.com\/hc\/en-us\/articles\/360000510603-WordPress-Plugin-Requirements<\/a><\/p>\n<p>List of issues found in my plugins:<br \/>\n1. Is this supposed to be a prefix? <a href=\"https:\/\/envato.d.pr\/OAd6mR\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/OAd6mR<\/a><br \/>\n2. Remove all unused code: <a href=\"https:\/\/envato.d.pr\/jpcLhW\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/jpcLhW<\/a><br \/>\n3. Enqueue all CSS &#038; JS correctly: <a href=\"https:\/\/envato.d.pr\/PDWiBi\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/PDWiBi<\/a><br \/>\n4. Use .on() rather than .click(), .bind(), .hover(), .submit() etc&#8230; <a href=\"https:\/\/envato.d.pr\/Ayp0y8\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/Ayp0y8<\/a><br \/>\n5. Use proper semantic HTML: <a href=\"https:\/\/envato.d.pr\/S9Qlea\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/S9Qlea<\/a><br \/>\n6. Escape everything: <a href=\"https:\/\/envato.d.pr\/EioK9l\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/EioK9l<\/a><br \/>\n7. All theme text strings are to be translatable and properly escaped: <a href=\"https:\/\/envato.d.pr\/TaYHTA\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/TaYHTA<\/a><br \/>\n8. Data Validation issues have been found in your theme. <a href=\"https:\/\/envato.d.pr\/AI0Fmt\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/AI0Fmt<\/a> All dynamic data must be correctly escaped for the context where it is rendered. Please make sure you read these articles: <a href=\"https:\/\/make.wordpress.org\/themes\/tags\/writing-secure-themes\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/make.wordpress.org\/themes\/tags\/writing-secure-themes\/<\/a> <a href=\"http:\/\/codex.wordpress.org\/Data_Validation\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/codex.wordpress.org\/Data_Validation<\/a> <a href=\"http:\/\/developer.wordpress.com\/themes\/escaping\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/developer.wordpress.com\/themes\/escaping\/<\/a> <a href=\"http:\/\/code.tutsplus.com\/articles\/data-sanitization-and-validation-with-wordpress--wp-25536\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.tutsplus.com\/articles\/data-sanitization-and-validation-with-wordpress&#8211;wp-25536<\/a> <a href=\"https:\/\/vip.wordpress.com\/documentation\/best-practices\/security\/validating-sanitizing-escaping\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/vip.wordpress.com\/documentation\/best-practices\/security\/validating-sanitizing-escaping\/<\/a><br \/>\n9. Don&#8217;t suppress errors: <a href=\"https:\/\/envato.d.pr\/hdcF1c\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/hdcF1c<\/a><br \/>\n10. Instead of using file_get_contents, fopen, fread, fwrite, fputs, chmod and such, could you please use the WordPress equivalents. You can access these through the WP Filesystem API. For more information: <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_filesystem\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/developer.wordpress.org\/reference\/functions\/wp_filesystem\/<\/a> <a href=\"https:\/\/developer.wordpress.org\/reference\/classes\/wp_filesystem_base\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/developer.wordpress.org\/reference\/classes\/wp_filesystem_base\/<\/a> <a href=\"https:\/\/developer.wordpress.org\/reference\/classes\/wp_filesystem_direct\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/developer.wordpress.org\/reference\/classes\/wp_filesystem_direct\/<\/a> <a href=\"https:\/\/envato.d.pr\/8OWR8x\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/8OWR8x<\/a><br \/>\n11. All JavaScript should be written with \u201cuse strict\u201d mode on. For example, you can do this with jQuery as follows: (function($) { &#8220;use strict&#8221;; \/\/ Author code here })(jQuery); <a href=\"https:\/\/envato.d.pr\/zGx3xH\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/zGx3xH<\/a><br \/>\n12. Use dashes instead of underscores for handles: <a href=\"https:\/\/envato.d.pr\/dyDa2c\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/dyDa2c<\/a><br \/>\n13. Use protocol relative URLs: <a href=\"https:\/\/envato.d.pr\/a9GyME\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/a9GyME<\/a><br \/>\n14. Use a proper textdomain: <a href=\"https:\/\/envato.d.pr\/thU02j\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/envato.d.pr\/thU02j<\/a><\/p>\n<p>\u25b6Portfolio &#8211; <a href=\"https:\/\/1.envato.market\/coderevolution\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/1.envato.market\/coderevolution<\/a><br \/>\n\u25b6DONT CLICK THIS &#8211; <a href=\"https:\/\/www.youtube.com\/channel\/UCVLIksvzyk-D_oEdHab2Lgg?sub_confirmation=1\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.youtube.com\/channel\/UCVLIksvzyk-D_oEdHab2Lgg?sub_confirmation=1<\/a><\/p>\n<div class=\"youtubomatic-video-container\"><iframe loading=\"lazy\" width=\"580\" height=\"380\" src=\"https:\/\/www.youtube.com\/embed\/Hl8Dk48r0x4?controls=1\" frameborder=\"0\" allowfullscreen><\/iframe><\/div>\n","protected":false},"excerpt":{"rendered":"<p>This video will teach you on how to fix some common code issues in your plugins and get your code approved on CodeCanyon. I provide a list of common rejection reasons and fixes for them. Check also my blog post on this subject: https:\/\/coderevolution.ro\/2019\/04\/27\/common-rejection-reasons-in-plugin-review-on-codecanyon-and-their-fixes\/ Also, it will help you get the &#8216;WP Requirements Compliant&#8217; badge&hellip;<\/p>\n","protected":false},"author":1,"featured_media":6909,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-6908","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wp"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/posts\/6908","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/comments?post=6908"}],"version-history":[{"count":0,"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/posts\/6908\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/media\/6909"}],"wp:attachment":[{"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/media?parent=6908"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/categories?post=6908"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpinitiate.com\/index.php\/wp-json\/wp\/v2\/tags?post=6908"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}