{"id":2833,"date":"2024-10-16T15:09:23","date_gmt":"2024-10-16T07:09:23","guid":{"rendered":"https:\/\/www.openbyt.com\/?p=2833"},"modified":"2024-10-17T19:40:50","modified_gmt":"2024-10-17T11:40:50","slug":"streamlining-wordpress-development-build-your-own-code-snippet-repository","status":"publish","type":"post","link":"https:\/\/www.openbyt.com\/pt\/simplificar-o-desenvolvimento-do-wordpress-criar-o-seu-proprio-repositorio-de-fragmentos-de-codigo","title":{"rendered":"Simplificando o desenvolvimento do WordPress: Crie o seu pr\u00f3prio reposit\u00f3rio de snippets de c\u00f3digo"},"content":{"rendered":"<p>Como programador do WordPress, \u00e9 prov\u00e1vel que j\u00e1 tenha resolvido os mesmos problemas repetidamente - adicionando tipos de posts personalizados, ajustando fun\u00e7\u00f5es de temas ou ajustando o comportamento de plug-ins. Imagine este cen\u00e1rio: est\u00e1 a trabalhar num projeto de um cliente e tem de adicionar uma fun\u00e7\u00e3o espec\u00edfica que personaliza a p\u00e1gina de in\u00edcio de sess\u00e3o. Lembra-se de ter feito algo semelhante anteriormente, mas n\u00e3o se lembra onde guardou esse snippet. Passa um tempo valioso a procurar em projectos antigos ou a pesquisar recursos online, apenas para os reescrever de raiz. Este tipo de trabalho repetitivo \u00e9 frustrante e ineficaz. A solu\u00e7\u00e3o? Construa o seu reposit\u00f3rio de fragmentos de c\u00f3digo. Criar uma biblioteca pessoal de fragmentos de c\u00f3digo reutiliz\u00e1veis pode poupar-lhe tempo valioso, reduzir a redund\u00e2ncia e tornar o seu processo de desenvolvimento mais eficiente e organizado. Um reposit\u00f3rio bem mantido pode ser um salva-vidas, tornando o c\u00f3digo utilizado com frequ\u00eancia facilmente acess\u00edvel e reduzindo o tempo de desenvolvimento.<\/p><figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str.webp\" alt=\"\" class=\"wp-image-2834\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.19.09-A-frustrated-WordPress-developer-at-their-desk-surrounded-by-scattered-papers-and-multiple-screens-showing-code.-The-developer-looks-overwhelmed-str-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><h2 class=\"wp-block-heading\">Porque precisa de um reposit\u00f3rio de fragmentos de c\u00f3digo<\/h2><p>Imagine que est\u00e1 a trabalhar em v\u00e1rios sites WordPress. Para cada projeto, precisa de adicionar uma fun\u00e7\u00e3o espec\u00edfica que modifica a p\u00e1gina de in\u00edcio de sess\u00e3o. Em vez de procurar no Stack Overflow ou navegar pelos seus projectos anteriores para encontrar esse snippet, ter um reposit\u00f3rio centralizado significa que pode facilmente obter o c\u00f3digo e implement\u00e1-lo em minutos.<\/p><p>Um reposit\u00f3rio de fragmentos de c\u00f3digo ajuda-o:<\/p><ul class=\"wp-block-list\"><li><strong>Poupe tempo<\/strong>: J\u00e1 n\u00e3o precisa de procurar na Web ou no seu disco r\u00edgido aquela fun\u00e7\u00e3o que escreveu h\u00e1 seis meses.<\/li>\n\n<li><strong>Aumente a efici\u00eancia<\/strong>: A reutiliza\u00e7\u00e3o de c\u00f3digo testado e comprovado garante que os seus sites funcionam de forma consistente e minimiza a depura\u00e7\u00e3o.<\/li>\n\n<li><strong>Manter a qualidade<\/strong>: Documentar os seus snippets significa que est\u00e3o adaptados aos seus padr\u00f5es e s\u00e3o f\u00e1ceis de modificar.<\/li><\/ul><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr.webp\" alt=\"\" class=\"wp-image-2836\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.22.50-A-WordPress-developer-efficiently-working-on-multiple-sites.-The-scene-shows-the-developer-sitting-at-a-desk-confidently-pulling-up-a-code-snippet-fr-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><h3 class=\"wp-block-heading\">Configurar o seu pr\u00f3prio reposit\u00f3rio de snippets de c\u00f3digo<\/h3><p>Existem v\u00e1rias formas de organizar a sua biblioteca de fragmentos de c\u00f3digo, desde ferramentas simples como editores de texto a solu\u00e7\u00f5es mais robustas como o GitHub ou mesmo plug-ins dedicados do WordPress. Vamos analisar alguns m\u00e9todos populares passo a passo:<\/p><h4 class=\"wp-block-heading\"> 1: Utilizar uma aplica\u00e7\u00e3o de notas baseada na nuvem<\/h4><p>A forma mais simples de come\u00e7ar a criar uma biblioteca de fragmentos de c\u00f3digo \u00e9 utilizar aplica\u00e7\u00f5es de anota\u00e7\u00f5es baseadas na nuvem. Isto \u00e9 perfeito para principiantes ou para aqueles que preferem uma abordagem leve para gerir o seu c\u00f3digo.<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_.webp\" alt=\"\" class=\"wp-image-2838\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-14.35.25-A-modern-workspace-with-a-laptop-screen-showing-a-cloud-based-note-app.-The-screen-displays-well-organized-code-snippets-with-tags-like-functions.php_-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Muitos programadores utilizam ferramentas como <strong>No\u00e7\u00e3o<\/strong>, <strong>Evernote<\/strong>, ou <strong>Google Keep<\/strong> para gerir as suas bibliotecas de fragmentos de c\u00f3digo. Cada ferramenta tem os seus pr\u00f3s e contras:<\/p><ul class=\"wp-block-list\"><li><strong>No\u00e7\u00e3o<\/strong>: Tem um conjunto rico de funcionalidades e \u00e9 excelente para organizar conte\u00fados, mas pode ser mais complexo do que o necess\u00e1rio para pequenas bibliotecas.<\/li>\n\n<li><strong>Evernote<\/strong>: F\u00e1cil de utilizar, com boas funcionalidades de gest\u00e3o de notas, mas com formata\u00e7\u00e3o avan\u00e7ada limitada.<\/li>\n\n<li><strong>Google Keep<\/strong>: Leve e f\u00e1cil de utilizar, mas carece de op\u00e7\u00f5es robustas de categoriza\u00e7\u00e3o e organiza\u00e7\u00e3o. A escolha da ferramenta certa depende das suas necessidades: O Notion \u00e9 \u00f3timo para quem precisa de estrutura, o Evernote \u00e9 bom para notas r\u00e1pidas e o Google Keep funciona para armazenamento de snippets muito b\u00e1sico. Cada ferramenta tem os seus pr\u00f3s e contras:<\/li>\n\n<li><strong>No\u00e7\u00e3o<\/strong>: Tem um conjunto rico de funcionalidades e \u00e9 excelente para organizar conte\u00fados, mas pode ser mais complexo do que o necess\u00e1rio para pequenas bibliotecas.<\/li>\n\n<li><strong>Evernote<\/strong>: F\u00e1cil de utilizar, com boas funcionalidades de gest\u00e3o de notas, mas com formata\u00e7\u00e3o avan\u00e7ada limitada.<\/li>\n\n<li><strong>Google Keep<\/strong>: Leve e f\u00e1cil de utilizar, mas carece de op\u00e7\u00f5es robustas de categoriza\u00e7\u00e3o e organiza\u00e7\u00e3o. Estas ferramentas permitem-lhe categorizar os seus snippets por etiquetas (por exemplo, \"functions.php\", \"custom post type\", \"shortcodes\"), tornando-os f\u00e1ceis de pesquisar. Veja um exemplo:<\/li>\n\n<li><strong>T\u00edtulo<\/strong>: Redireccionamento de in\u00edcio de sess\u00e3o personalizado<\/li>\n\n<li><strong>Categoria<\/strong>: Gest\u00e3o de utilizadores<\/li><\/ul><p><strong>Trecho de c\u00f3digo<\/strong>:<\/p><pre class=\"wp-block-preformatted\">function custom_login_redirect($redirect_to, $request, $user) {<br>    \/\/ Redirecionar os utilizadores para a p\u00e1gina inicial ap\u00f3s o in\u00edcio de sess\u00e3o<br>    devolva home_url();<br>}<br>add_filter('login_redirect', 'custom_login_redirect', 10, 3);<br><br><\/pre><p>Com a utiliza\u00e7\u00e3o de aplica\u00e7\u00f5es na nuvem, pode aceder aos seus snippets a partir de qualquer lugar, o que o torna ideal se trabalhar em v\u00e1rios dispositivos.<\/p><h4 class=\"wp-block-heading\">2. Controlo de vers\u00f5es com o GitHub ou o GitLab<\/h4><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch.webp\" alt=\"\" class=\"wp-image-2839\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/neo4j-5.24.2-1.noarch-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Para uma abordagem mais avan\u00e7ada, considere armazenar os seus snippets em <strong>GitHub<\/strong> ou <strong>GitLab<\/strong>. Se \u00e9 novo no controlo de vers\u00f5es, comece por criar uma conta GitHub, instalar o Git no seu computador e aprender os comandos b\u00e1sicos do Git, como <code>git init<\/code> (para inicializar um reposit\u00f3rio), <code>git add<\/code> (para adicionar ficheiros \u00e0 fase de prepara\u00e7\u00e3o), <code>git commit<\/code> (para guardar as altera\u00e7\u00f5es), e <code>git push<\/code> (para carregar as suas altera\u00e7\u00f5es no GitHub). Al\u00e9m disso, familiarize-se com a ramifica\u00e7\u00e3o, que lhe permite experimentar as altera\u00e7\u00f5es com seguran\u00e7a. Esta configura\u00e7\u00e3o n\u00e3o s\u00f3 lhe d\u00e1 uma c\u00f3pia de seguran\u00e7a segura, como tamb\u00e9m lhe permite acompanhar as altera\u00e7\u00f5es ao longo do tempo - \u00fatil quando est\u00e1 a iterar no seu c\u00f3digo. Se \u00e9 novo no controlo de vers\u00f5es, comece por criar uma conta GitHub, instalar o Git no seu computador e aprender os comandos b\u00e1sicos do Git, como <code>git init<\/code> (para inicializar um reposit\u00f3rio), <code>git add<\/code> (para adicionar ficheiros \u00e0 fase de prepara\u00e7\u00e3o), <code>git commit<\/code> (para guardar as altera\u00e7\u00f5es), e <code>git push<\/code> (para carregar as suas altera\u00e7\u00f5es no GitHub). Esta configura\u00e7\u00e3o n\u00e3o s\u00f3 lhe d\u00e1 uma c\u00f3pia de seguran\u00e7a segura, como tamb\u00e9m lhe permite acompanhar as altera\u00e7\u00f5es ao longo do tempo - \u00fatil quando est\u00e1 a iterar no seu c\u00f3digo. Esta configura\u00e7\u00e3o n\u00e3o s\u00f3 lhe d\u00e1 uma c\u00f3pia de seguran\u00e7a segura, como tamb\u00e9m lhe permite acompanhar as altera\u00e7\u00f5es ao longo do tempo - \u00fatil quando est\u00e1 a iterar no seu c\u00f3digo.<\/p><p>Por exemplo, pode criar um reposit\u00f3rio chamado <code>wordpress-snippets<\/code> e organize-o em diferentes pastas:<\/p><ul class=\"wp-block-list\"><li><strong>tema-fun\u00e7\u00f5es\/<\/strong>: Snippets relacionados com os temas<\/li>\n\n<li><strong>shortcodes\/<\/strong>: C\u00f3digos curtos personalizados para v\u00e1rias funcionalidades<\/li>\n\n<li><strong>admin-customization\/<\/strong>: C\u00f3digo para personalizar a \u00e1rea de administra\u00e7\u00e3o do WordPress<\/li><\/ul><p>Uma pasta t\u00edpica pode ter o seguinte aspeto:<\/p><pre class=\"wp-block-preformatted\">wordpress-snippets\/<br>  |-- theme-functions\/<br>       |-- enqueue-scripts.php<br>       |-- custom-footer.php<br>  |-- shortcodes\/<br>       |-- youtube-embed.php<br>  |-- admin-customization\/<br>       |-- custom-dashboard-widget.php<\/pre><p>Com o Git, pode colaborar com outros programadores e criar uma biblioteca de snippets partilhada, facilitando a normaliza\u00e7\u00e3o da abordagem de desenvolvimento da sua equipa. Lembre-se de proteger o seu reposit\u00f3rio definindo controlos de acesso adequados e fazendo regularmente c\u00f3pias de seguran\u00e7a para evitar qualquer perda de dados. A utiliza\u00e7\u00e3o de funcionalidades como a prote\u00e7\u00e3o de ramos pode evitar altera\u00e7\u00f5es n\u00e3o autorizadas e ajudar a manter a qualidade do seu reposit\u00f3rio de c\u00f3digo.<\/p><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1.webp\" alt=\"\" class=\"wp-image-2840\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/50f8d90a-333b-40bc-920d-dec088b850f1-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><h4 class=\"wp-block-heading\"><strong>3. Plugins de gest\u00e3o de snippets do WordPress<\/strong><\/h4><p>Existem tamb\u00e9m plugins como <strong>Trechos de c\u00f3digo<\/strong> ou <strong>WPCodeBox<\/strong> que lhe permitem guardar, gerir e executar os seus snippets diretamente no painel de administra\u00e7\u00e3o do WordPress. Isto significa que pode ativar ou desativar snippets sem ter de tocar no ficheiro functions.php do seu tema, e os snippets mant\u00eam-se mesmo que mude de tema.<\/p><h3 class=\"wp-block-heading\">Por exemplo, se adiciona frequentemente um comprimento de excerto personalizado \u00e0s suas publica\u00e7\u00f5es, pode adicion\u00e1-lo ao plug-in Code Snippets:<\/h3><pre class=\"wp-block-preformatted\">fun\u00e7\u00e3o custom_excerpt_length($length) {<br>    return 20; \/\/ Defina o comprimento do excerto para 20 palavras<br>}<br>add_filter('excerpt_length', 'custom_excerpt_length');<\/pre><pre class=\"wp-block-code\"><code>function custom_excerpt_length($length) {\n    return 20; \/\/ Defina o comprimento do excerto para 20 palavras\n}\nadd_filter('excerpt_length', 'custom_excerpt_length');<\/code><\/pre><p>Com o plugin Code Snippets, pode rotular este snippet como \"<strong>Comprimento do excerto personalizado<\/strong>\" e active ou desactive-o conforme necess\u00e1rio.<\/p><h3 class=\"wp-block-heading\">Pr\u00e1ticas recomendadas para o seu reposit\u00f3rio de snippets de c\u00f3digo<\/h3><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f.webp\" alt=\"\" class=\"wp-image-2846\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/e4251be8-3a7d-462b-9977-210b5ab4769f-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Uma armadilha comum \u00e9 ter um reposit\u00f3rio desorganizado. Imagine ter v\u00e1rios snippets com o nome <code>snippet1.php<\/code> ou <code>c\u00f3digo de teste. php<\/code>-esses nomes n\u00e3o fornecem contexto, tornando dif\u00edcil saber o que cada snippet faz sem abrir e ler o c\u00f3digo. Por exemplo, um snippet mal nomeado como function-test.php poderia ser substitu\u00eddo por um nome descritivo como <code>redirecionar-login personalizado.php<\/code>, fornecendo instantaneamente o contexto. Por exemplo, trechos com nomes como <code>snippet1.php<\/code> ou <code>c\u00f3digo de teste.php<\/code> n\u00e3o fornecem informa\u00e7\u00f5es sobre o seu objetivo, tornando-os dif\u00edceis de reutilizar. Em vez disso, siga estas pr\u00e1ticas recomendadas para garantir que os seus snippets s\u00e3o f\u00e1ceis de encontrar e compreender:<\/p><p>Depois de ter configurado o seu reposit\u00f3rio, seguir algumas pr\u00e1ticas recomendadas ajudar\u00e1 a mant\u00ea-lo organizado e \u00fatil:<\/p><p>1.<strong>Utilize t\u00edtulos descritivos<\/strong>: T\u00edtulos como \"Custom Post Type for Portfolio\" ou \"Redirect After Login\" facilitam a compreens\u00e3o r\u00e1pida do que cada snippet faz.<\/p><p>2.<strong>Adicione coment\u00e1rios<\/strong>: Escreva uma breve descri\u00e7\u00e3o no in\u00edcio de cada snippet para explicar o que ele faz e como us\u00e1-lo. Por exemplo:<\/p><ol class=\"wp-block-list\"><li><\/li><\/ol><pre class=\"wp-block-preformatted\">\/\/ Redirecionar os utilizadores para a p\u00e1gina inicial depois de iniciarem sess\u00e3o<br>function custom_login_redirect($redirect_to, $request, $user) {<br>    devolva home_url();<br>}<\/pre><p>   3.<strong>Organize por categoria<\/strong>: Categorize os snippets em pastas ou etiquetas com base na sua finalidade (por exemplo, admin, frontend, campos personalizados).<\/p><p>   4.<strong>Teste regularmente<\/strong>: As actualiza\u00e7\u00f5es do WordPress podem, por vezes, quebrar snippets antigos. Crie o h\u00e1bito de testar periodicamente os seus snippets para garantir que continuam a funcionar como esperado.<\/p><h3 class=\"wp-block-heading\">Exemplo: Criando um snippet de tipo de post personalizado<\/h3><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945.webp\" alt=\"\" class=\"wp-image-2844\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/00934ffa-cac2-4bbf-b985-855c596c0945-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Vamos utilizar um exemplo pr\u00e1tico de constru\u00e7\u00e3o de um snippet para um <strong>Tipo de post personalizado<\/strong>. Este \u00e9 um requisito comum para sites WordPress que precisam de mais tipos de conte\u00fado al\u00e9m de Posts e P\u00e1ginas. Aqui est\u00e1 o snippet:<\/p><pre class=\"wp-block-preformatted\">fun\u00e7\u00e3o create_portfolio_post_type() {<br>    $args = array(<br>        'public' =&gt; true,<br>        'label' =&gt; 'Portfolio',<br>        'supports' =&gt; array('title', 'editor', 'thumbnail')<br>    );<br>    register_post_type('portfolio', $args);<br>}<br>add_action('init', 'create_portfolio_post_type');<\/pre><p>Ao guardar este snippet no seu reposit\u00f3rio numa pasta chamada custom-post-types\/, tem-no pronto sempre que necess\u00e1rio. Assim, estar\u00e1 preparado para a pr\u00f3xima vez que um cliente quiser uma sec\u00e7\u00e3o de portf\u00f3lio no seu site.<\/p><h3 class=\"wp-block-heading\">Conclus\u00e3o<\/h3><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins.webp\" alt=\"\" class=\"wp-image-2912\" srcset=\"https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins.webp 1024w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins-600x600.webp 600w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins-100x100.webp 100w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins-300x300.webp 300w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins-150x150.webp 150w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins-768x768.webp 768w, https:\/\/www.openbyt.com\/wp-content\/uploads\/2024\/10\/DALL\u00b7E-2024-10-16-17.03.01-An-illustration-showing-a-progression-from-simple-to-advanced-coding-tools.-On-one-side-simple-tools-like-cloud-based-note-apps-and-WordPress-plugins-96x96.webp 96w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Construir o seu reposit\u00f3rio de fragmentos de c\u00f3digo pode exigir algum esfor\u00e7o inicial, mas \u00e9 um investimento que compensar\u00e1 a longo prazo. Para iniciantes, ferramentas como aplicativos de notas baseados na nuvem ou plug-ins do WordPress s\u00e3o \u00f3timos pontos de partida devido \u00e0 sua simplicidade e facilidade de acesso. \u00c0 medida que ganha experi\u00eancia, considere a transi\u00e7\u00e3o para o GitHub ou o GitLab para obter mais controlo, funcionalidades de colabora\u00e7\u00e3o e acompanhamento do hist\u00f3rico de vers\u00f5es. Cada m\u00e9todo tem as suas vantagens - as ferramentas da nuvem s\u00e3o simples e acess\u00edveis, os plug-ins integram-se diretamente no WordPress e as ferramentas de controlo de vers\u00f5es oferecem seguran\u00e7a, controlo de vers\u00f5es e op\u00e7\u00f5es de colabora\u00e7\u00e3o. Um plug-in ou notas na nuvem podem ser suficientes para pequenos projectos ou principiantes, mas para equipas maiores ou necessidades mais complexas, os reposit\u00f3rios Git s\u00e3o ideais. Escolha um m\u00e9todo que se adeq\u00fae ao seu fluxo de trabalho e comece a compilar os seus snippets hoje mesmo. Para principiantes, ferramentas como aplica\u00e7\u00f5es de notas baseadas na nuvem ou plug-ins do WordPress s\u00e3o \u00f3ptimos pontos de partida devido \u00e0 sua simplicidade. \u00c0 medida que ganha experi\u00eancia, considere a transi\u00e7\u00e3o para o GitHub ou GitLab para obter mais controlo e funcionalidades de colabora\u00e7\u00e3o. Cada m\u00e9todo tem vantagens - as ferramentas na nuvem s\u00e3o simples e acess\u00edveis, os plug-ins integram-se diretamente no WordPress e as ferramentas de controlo de vers\u00f5es oferecem op\u00e7\u00f5es de seguran\u00e7a e colabora\u00e7\u00e3o. Escolha um m\u00e9todo que se adapte ao seu fluxo de trabalho e comece a compilar os seus snippets hoje mesmo. Com uma biblioteca bem organizada, escrever\u00e1 menos c\u00f3digo, reduzir\u00e1 os erros e concluir\u00e1 os projectos mais rapidamente. Quer prefira notas na nuvem, reposit\u00f3rios Git ou plug-ins do WordPress, escolha um m\u00e9todo que se adapte ao seu fluxo de trabalho e comece a compilar os seus snippets hoje mesmo.<\/p><p><\/p>","protected":false},"excerpt":{"rendered":"<p>Como programador do WordPress, \u00e9 prov\u00e1vel que j\u00e1 tenha resolvido os mesmos problemas repetidamente - adicionando tipos de posts personalizados, ajustando fun\u00e7\u00f5es de temas ou ajustando o comportamento de plugins. Imagine este cen\u00e1rio: est\u00e1 a...<\/p>","protected":false},"author":31,"featured_media":2849,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[82],"tags":[267,192],"class_list":["post-2833","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-code-snippet-library","tag-phpcode","tag-webdevelopment",""],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/posts\/2833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/users\/31"}],"replies":[{"embeddable":true,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/comments?post=2833"}],"version-history":[{"count":10,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/posts\/2833\/revisions"}],"predecessor-version":[{"id":3177,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/posts\/2833\/revisions\/3177"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/media\/2849"}],"wp:attachment":[{"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/media?parent=2833"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/categories?post=2833"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.openbyt.com\/pt\/wp-json\/wp\/v2\/tags?post=2833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}