{"id":26635,"date":"2021-04-27T13:10:00","date_gmt":"2021-04-27T10:10:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26635"},"modified":"2021-10-18T04:21:18","modified_gmt":"2021-10-18T01:21:18","slug":"um-guia-sobre-como-melhorar-os-padroes-de-codificacao-do-wordpress","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/um-guia-sobre-como-melhorar-os-padroes-de-codificacao-do-wordpress\/","title":{"rendered":"Um guia sobre como melhorar os padr\u00f5es de codifica\u00e7\u00e3o do WordPress"},"content":{"rendered":"<p>Se voc\u00ea \u00e9 um desenvolvedor, ent\u00e3o definitivamente est\u00e1 procurando melhorar seus padr\u00f5es de codifica\u00e7\u00e3o. Cada linguagem de programa\u00e7\u00e3o e seus CMS \/ Frameworks definiram seus pr\u00f3prios padr\u00f5es de codifica\u00e7\u00e3o. Neste artigo, estudamos como melhorar os padr\u00f5es de codifica\u00e7\u00e3o do WordPress.<\/p>\n<p>Escrevemos um artigo sobre como <a href=\"https:\/\/themewp.inform.click\/pt-pt\/php_codesniffer-uma-biblioteca-para-melhorar-seus-padroes-de-codificacao-php\/\" title=\"melhorar os padr\u00f5es de codifica\u00e7\u00e3o do PHP\" >melhorar os padr\u00f5es de codifica\u00e7\u00e3o do PHP<\/a>. Voc\u00ea deve primeiro verificar este artigo antes de prosseguir para os padr\u00f5es de codifica\u00e7\u00e3o para o desenvolvimento do WordPress.<\/p>\n<h3>Erros que estamos cometendo durante a programa\u00e7\u00e3o do WordPress<\/h3>\n<p>Cada trabalho de desenvolvimento tem solu\u00e7\u00f5es diferentes. Provavelmente, cada desenvolvedor implementa uma forma \/ l\u00f3gica diferente para fornecer a mesma sa\u00edda. \u00c9 natural no mundo da programa\u00e7\u00e3o.<\/p>\n<p>Por exemplo, digamos que adicionamos nonce em nosso formul\u00e1rio de inscri\u00e7\u00e3o para evitar ataques CSRF.<\/p>\n<pre><code>&lt;form method=\"post\"&gt;\n&lt;?php wp_nonce_field( 'signup_nonce', 'signup_form_nonce' ); ?&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p>Ao enviar um formul\u00e1rio, temos que verificar se o nonce est\u00e1 correto ou n\u00e3o. Normalmente, um desenvolvedor que n\u00e3o conhece os padr\u00f5es de codifica\u00e7\u00e3o o faz da seguinte maneira.<\/p>\n<pre><code>&lt;?php\nif (! isset( $_POST['signup_form_nonce']) ||! wp_verify_nonce( $_POST['signup_form_nonce'], 'signup_nonce')) {\n\u00a0\n\u00a0\u00a0\u00a0print 'Sorry, your nonce did not verify.';\n\u00a0\u00a0\u00a0exit;\n\u00a0\n} else {\n\u00a0\n\u00a0\u00a0\u00a0\/\/ process form data\n}\n?&gt;<\/code><\/pre>\n<p>N\u00e3o h\u00e1 nada de errado no c\u00f3digo acima. Mas, n\u00e3o \u00e9 uma boa pr\u00e1tica. Ao recuperar os valores do campo de texto, devemos usar as fun\u00e7\u00f5es <code>sanitize_text_field()<\/code>e <code>wp_unslash()<\/code>nos valores do campo de entrada.<\/p>\n<p><a href=\"https:\/\/codex.wordpress.org\/Validating_Sanitizing_and_Escaping_User_Data\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">O<\/a> m\u00e9todo <a href=\"https:\/\/codex.wordpress.org\/Validating_Sanitizing_and_Escaping_User_Data\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">sanitize_text_field<\/a> executa o seguinte processo em segundo plano.<\/p>\n<ul>\n<li>Verifica se h\u00e1 UTF-8 inv\u00e1lido<\/li>\n<li>Converte &lt;caracteres \u00fanicos em entidade<\/li>\n<li>Remove todas as tags<\/li>\n<li>Remova quebras de linha, tabula\u00e7\u00f5es e espa\u00e7o em branco extra<\/li>\n<li>Tira octetos<\/li>\n<\/ul>\n<p><a href=\"https:\/\/codex.wordpress.org\/Function_Reference\/wp_unslash\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">O<\/a> m\u00e9todo <a href=\"https:\/\/codex.wordpress.org\/Function_Reference\/wp_unslash\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">wp_unsplash<\/a> remove barras de uma string ou matriz de strings.<\/p>\n<p>Dito isso, nosso c\u00f3digo anterior deve gostar abaixo.<\/p>\n<pre><code>&lt;?php\nif (! isset( $_POST['signup_form_nonce']) ||! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['signup_form_nonce']) ), 'signup_nonce')) {\n\u00a0\n\u00a0\u00a0\u00a0print 'Sorry, your nonce did not verify.';\n\u00a0\u00a0\u00a0exit;\n\u00a0\n} else {\n\u00a0\n\u00a0\u00a0\u00a0\/\/ process form data\n}\n?&gt;<\/code><\/pre>\n<p>Este \u00e9 um exemplo. Existem v\u00e1rios outros erros que estamos cometendo em nossa programa\u00e7\u00e3o WordPress.<\/p>\n<h3>Instale a biblioteca de padr\u00f5es de codifica\u00e7\u00e3o do WordPress<\/h3>\n<p><a href=\"https:\/\/github.com\/WordPress-Coding-Standards\/WordPress-Coding-Standards\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Esta biblioteca<\/a> nos ajudar\u00e1 a melhorar nossos padr\u00f5es de codifica\u00e7\u00e3o no desenvolvimento de WordPress e nos estabelecer como um desenvolvedor de WordPress melhor.<\/p>\n<p>Para instalar esta biblioteca, abra o prompt de comando no diret\u00f3rio raiz de um projeto e execute o comando abaixo.<\/p>\n<p><code>composer create-project wp-coding-standards\/wpcs --no-dev<\/code><\/p>\n<p><strong>Nota:<\/strong> Voc\u00ea deve ter o <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">composer<\/a> instalado em seu sistema para executar o comando acima.<\/p>\n<p>Depois de executar o comando, ele criar\u00e1 uma pasta chamada &#8216;wpcs&#8217; no diret\u00f3rio raiz de um projeto.<\/p>\n<p>Presumimos que voc\u00ea leu nosso artigo sobre <a href=\"https:\/\/themewp.inform.click\/pt-pt\/php_codesniffer-uma-biblioteca-para-melhorar-seus-padroes-de-codificacao-php\/\" title=\"melhoria dos padr\u00f5es de codifica\u00e7\u00e3o do PHP\">melhoria dos padr\u00f5es de codifica\u00e7\u00e3o do PHP<\/a> e instalou a biblioteca PHP_CodeSniffer dentro da pasta &#8216;php_codesniffer&#8217; no diret\u00f3rio raiz do projeto.<\/p>\n<p>Em seguida, precisamos registrar os padr\u00f5es do WordPress na configura\u00e7\u00e3o do PHP_CodeSniffer. Abra o prompt de comando em &#8216;php_codesniffer \/ vendor \/ bin&#8217; e execute o comando abaixo.<\/p>\n<p><code>phpcs --config-set installed_paths \/path\/to\/wpcs<\/code><\/p>\n<p>Substitua &#8216;\/ path \/ to \/ wpcs&#8217; pelo seu caminho. No nosso caso, na plataforma Windows, escrevemos o comando da seguinte maneira.<\/p>\n<p><code>phpcs --config-set installed_paths D:wampwwwwp1wpcs<\/code><\/p>\n<h3>Vamos descobrir nossos erros e melhorar os padr\u00f5es de codifica\u00e7\u00e3o do WordPress<\/h3>\n<p>Estabelecemos com nossa biblioteca. Agora, \u00e9 hora de encontrar nossos erros e evit\u00e1-los na pr\u00f3xima vez.<\/p>\n<p>Digamos que criamos um plugin &#8216;test-plugin&#8217; e temos que validar um arquivo chamado &#8216;core.php&#8217;.<\/p>\n<p>Abra o prompt de comando no diret\u00f3rio &#8216;wpcs \/ vendor \/ bin&#8217; e execute o comando abaixo.<\/p>\n<p><code>phpcs --standard=WordPress D:wampwwwwp1wp-contentpluginstest-plugincore.php<\/code><\/p>\n<p>Depois de executar o comando, voc\u00ea ir\u00e1 avisar com os erros e avisos. Todos esses erros e avisos aparecem porque n\u00e3o seguimos as pr\u00e1ticas de codifica\u00e7\u00e3o padr\u00e3o para o desenvolvimento do WordPress.<\/p>\n<p>Uma boa parte \u00e9 que obtemos o relat\u00f3rio detalhado sobre os n\u00fameros das linhas e como corrigir esse erro espec\u00edfico. Precisamos apenas examinar as diretrizes e corrigir os erros um por um.<\/p>\n<p><code>phpcbf<\/code> comando tamb\u00e9m pode corrigir alguns erros menores, como indenta\u00e7\u00e3o, espa\u00e7os etc.<\/p>\n<p><code>phpcbf --standard=WordPress D:wampwwwwp1wp-contentpluginstest-plugincore.php<\/code><\/p>\n<p>Esperamos que voc\u00ea entenda como usar a biblioteca de padr\u00f5es de codifica\u00e7\u00e3o do WordPress para melhorar os padr\u00f5es de codifica\u00e7\u00e3o do WordPress. Se voc\u00ea tiver alguma d\u00favida ou sugest\u00e3o, por favor, deixe um coment\u00e1rio abaixo.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quer melhorar seus padr\u00f5es de codifica\u00e7\u00e3o do WordPress? Neste artigo, mostramos como descobrir erros de padr\u00f5es de codifica\u00e7\u00e3o em nossa programa\u00e7\u00e3o WordPress e<\/p>\n","protected":false},"author":1,"featured_media":21633,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[417,613],"tags":[848],"class_list":["post-26635","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-diversos","category-uncategorized-9","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/26635","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=26635"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/26635\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/21633"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=26635"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=26635"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=26635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}