O WordCamp Gdynia 2023 NextGen decorreu no sábado, 30 de setembro de 2023, no Morski Instytut Rybacki (Instituto Nacional de Investigação das Pescas Marítimas), na rua Hugo Kołłątaja 1, em Gdynia. Participaram mais de 200 programadores, designers, donos de agências e entusiastas do WordPress de toda a Polónia. O tema, anunciado no site oficial do evento, foi a otimização: do trabalho feito com o WordPress e do próprio WordPress.
O programa decorreu em duas salas. A sala principal recebeu 16 palestras e uma segunda sala acolheu, em paralelo, 4 workshops gratuitos para qualquer participante com bilhete. Este resumo segue a agenda oficial e as descrições das sessões publicadas pela organização.
Se a sua empresa procura apoio no desenvolvimento avançado da sua plataforma, conheça os nossos serviços como desenvolvedor WordPress na WPPoland.
O que é um WordCamp NextGen
O NextGen foi uma fase experimental na forma de organizar os WordCamps. O texto explicativo da organização descreve-o como um convite às equipas locais para proporem formatos e temas novos que respondam ao que a comunidade precisa agora. Os WordCamps clássicos abrangem uma mistura alargada de design, desenvolvimento, SEO, marketing e conteúdos. Um evento NextGen pode concentrar-se num só tema, num só público ou num só nível de experiência.
O mesmo texto enumera os valores que todo o WordCamp NextGen tinha de manter: baixar as barreiras à participação, celebrar a comunidade no seu conjunto e não uma empresa ou pessoa em particular, e apoiar a diversidade. Gdynia escolheu um evento de um dia com um único tema, Optymalizacja: Praca i WordPress (otimização: trabalho e WordPress). O tema estava aberto tanto a principiantes como a utilizadores avançados.
A procura notou-se cedo. Segundo a organização, todos os bilhetes Early Bird esgotaram em dois dias e meio. A primeira chamada de patrocinadores, em junho de 2023, contava com cerca de cem participantes, e na segunda fase de venda de bilhetes, em agosto, a organização já esperava perto de 300 pessoas.
Onde decorreu o WordCamp Gdynia 2023
O local foi o Instituto Nacional de Investigação das Pescas Marítimas, a poucos minutos a pé da estação Gdynia Główna. A organização lembrou no blogue do evento que a história do instituto remonta a 1921, quando começou como laboratório de pescas em Hel. Os participantes podiam estacionar dentro do recinto, identificando-se na cancela.
A equipa organizadora indicada no site do evento incluía Mariusz Szatkowski, Marcin Robin Andrzejewski, Katarzyna Gajewska, Rafał Osiński, Dawid Urbański, Hanna Szatkowska e Marcin Szatkowski. A Tripla Cidade (Gdańsk, Sopot e Gdynia) é há muito um polo forte da comunidade tecnológica polaca. As gravações foram mais tarde publicadas no canal de YouTube WordPress Trójmiasto.
Abertura e horário do WordCamp Gdynia 2023
Marcin Andrzejewski e Mariusz Szatkowski abriram a conferência às 9:45 nas duas salas, depois do registo a partir das 9:00. O dia completo, em hora local (CEST), foi o seguinte:
| Hora | Sala principal | Sala de workshops |
|---|---|---|
| 9:45 | Abertura: Marcin Andrzejewski, Mariusz Szatkowski | Abertura |
| 10:00 | Adam Zieliński: WordPress Playground | |
| 10:15 | Przemek Hernik: Laravel Blade (75 min) | |
| 10:30 | Sebastian Kurzynowski: práticas de equipa e kaizen | |
| 11:00 | Dawid Urbański: blocos nativos do Gutenberg | |
| 11:30 | Mateusz Gbiorczyk: otimização de imagens | Piotr Misztal: importação de produtos no WooCommerce (90 min) |
| 12:00 | Lena Sędkiewicz: SEO técnico | |
| 12:30 | Krystian Wójcik: menos erros em projetos de equipa | |
| 13:00 | Pausa | |
| 13:30 | Piotr Niewiadomski: OOP hook cares | Marcin Krzemiński: Full Site Editing (135 min) |
| 14:00 | Magdalena Paciorek: GPT a escrever e publicar artigos | |
| 14:15 | Wojciech Babicz: dados pessoais no alojamento | |
| 14:30 | Rafał Chrzan: WooCommerce com FSE, um estudo de caso | |
| 14:45 | Maciek Palmowski: WordPress headless | |
| 15:00 | Pausa | |
| 15:15 | Przemek Hernik: um WP_Query mais rápido | |
| 15:45 | Tomasz Kołkiewicz: da otimização às aplicações | Sebastian Kurzynowski: máquinas de estado em JS (135 min) |
| 16:15 | Max Matłoka: cache sem prazo de validade | |
| 16:45 | Pausa | |
| 17:00 | Tomasz Lach: a otimização e a quem serve | |
| 17:30 | Patryk Szymulewski: alojamento partilhado ou dedicado |
Os blocos da tarde entre as 14:00 e as 15:00 foram palestras relâmpago de 15 minutos. As restantes sessões da sala principal duraram 30 minutos.
WordPress Playground e WebAssembly no navegador
A primeira palestra foi a de Adam Zieliński, da Automattic, criador do WordPress Playground e core committer do WordPress. O título traduz-se como WordPress sem instalação, sem computador e sem internet: conheça o WordPress Playground.
A documentação de arquitetura do Playground explica o mecanismo. O interpretador de PHP é compilado para WebAssembly com o Emscripten. O WordPress precisa de MySQL, mas não existe uma versão do MySQL para WebAssembly, por isso o Playground inclui PHP com o controlador de SQLite e o plugin oficial SQLite Database Integration reescreve as consultas MySQL no dialeto do SQLite. Um Service Worker trata o tráfego HTTP que normalmente iria para um servidor remoto.
ARQUITETURA DO WORDPRESS PLAYGROUND NO NAVEGADOR:
+-------------------------------------------------------------+
| Navegador web (Chrome / Firefox / Safari / Edge) |
| |
| +-------------------------+ +-------------------------+ |
| | Interpretador PHP | <-> | Base de dados SQLite | |
| | em WebAssembly (.wasm) | | via SQLite Integration | |
| +-------------------------+ +-------------------------+ |
| ^ |
| | Pedidos HTTP tratados |
| v por um Service Worker |
| +---------------------------------------------------------+ |
| | Ficheiros do núcleo do WordPress + temas + plugins | |
| +---------------------------------------------------------+ |
+-------------------------------------------------------------+Como cada versão do PHP é um ficheiro .wasm estático separado, mudar de versão do PHP significa apenas descarregar outro binário.
Como as equipas usam o WordPress Playground
O WordPress Playground cresceu desde 2023 e tornou-se uma ferramenta que as equipas de desenvolvimento usam todos os dias:
- Pré-visualização de pull requests: a ação oficial WordPress Playground PR Preview acrescenta um botão de pré-visualização aos pull requests de plugins e temas, para que quem revê teste a alteração no navegador com um clique.
- Demonstrações para clientes a partir de um blueprint: um blueprint é um ficheiro JSON que descreve a versão do WordPress, a versão do PHP, os plugins e os passos de configuração. A documentação do Playground mostra como carregá-lo com o parâmetro
?blueprint-url=. - Testes end-to-end: a documentação do Playground inclui um guia para correr testes Playwright contra uma instância do Playground, sem depender de uma base de dados de staging partilhada.
<!-- Incorporação de uma instância do Playground configurada por um ficheiro blueprint JSON -->
<iframe
src="https://playground.wordpress.net/?blueprint-url=https://example.com/blueprints/staging-test.json"
width="100%"
height="650"
class="rounded-xl border border-gray-200"
loading="lazy"
></iframe>Criar blocos nativos do Gutenberg e hooks em POO
Dawid Urbański mostrou como começar a criar blocos nativos para o editor Gutenberg. Segundo a descrição da sessão, percorreu a instalação do WordPress, a preparação de um tema, a adição de ficheiros JavaScript, a instalação do pacote @wordpress/scripts, a criação de blocos com os componentes disponíveis e, por fim, a compilação do bloco e a sua inserção numa página a partir do editor. Ficou-se por exemplos simples para que todo o processo fosse visível.
Para um projeto novo, o ponto de partida com suporte oficial é o @wordpress/create-block. Gera um plugin que regista um bloco, cria o PHP, o JavaScript e o CSS e liga a mesma configuração de build sem necessidade de ajustes.
A palestra de Piotr Niewiadomski, OOP hook cares, tratou de um incómodo comum no código orientado a objetos do WordPress: registar à mão cada método com add_action() e add_filter(). Apresentou uma biblioteca que associa automaticamente os métodos das classes aos filtros e ações certos.
Como acelerar o WP_Query e estabilizar projetos de equipa
Przemek Hernik interveio duas vezes. A sua palestra na sala principal tinha o título Como acelerar o WP_Query até 100 vezes com decisões de design simples. A ideia, segundo a descrição, era que as decisões de arquitetura tomadas antes da primeira linha de código determinam a rapidez de um plugin ou de uma solução feita à medida para um cliente. Dirigia-se a autores de plugins e a quem desenvolve soluções personalizadas.
Krystian Wójcik falou sobre como reduzir o número de erros em projetos de equipa. Abordou os desafios das equipas de desenvolvimento, como uniformizar o ambiente de trabalho para que cada programador use a mesma configuração e porque é que todo o ambiente deve estar no Git.
A palestra de Sebastian Kurzynowski, com o título Żuczki, Misie i kaizen (bichinhos, ursinhos e kaizen), defendeu a confiança em si próprio e nas pessoas com quem se trabalha. Descreveu a estrutura da equipa, as práticas de trabalho, o desenvolvimento e a automação.
Otimização de imagens, SEO técnico e LCP no WordPress
Mateusz Gbiorczyk mostrou, passo a passo, como reduzir o peso de um site WordPress sem perder qualidade nas imagens.
O momento era oportuno. O WordPress 6.3, lançado poucas semanas antes da conferência, mudou a forma como o núcleo trata as imagens. A nota técnica da equipa de desempenho indica que o WordPress passou a adicionar fetchpriority="high" à imagem que considera mais provável ser o elemento LCP, o que “normalmente melhora o LCP entre 5 e 10%” (tradução própria). A mesma versão corrigiu os casos restantes em que o núcleo aplicava carregamento diferido a imagens visíveis no ecrã e juntou os dois atributos numa só função, wp_get_loading_optimization_attributes(). Temas e plugins com regras próprias de lazy loading precisavam de revisão depois da 6.3.
A palestra de Lena Sędkiewicz, Passe para o lado verde da força, tratou do SEO técnico no WordPress. Partiu de sintomas conhecidos: um site que carrega devagar demais, utilizadores que não encontram o que procuram, erros 404 frequentes e páginas de que os utilizadores gostam mas que o Google não vê. A palestra percorreu as soluções técnicas no WordPress que dão a um site a hipótese de subir nos resultados de pesquisa.
Saiba mais sobre formatos modernos no nosso guia de formatos modernos como AVIF e WebP.
Cache do WordPress como site estático
A palestra de Max Matłoka, Até ao infinito e mais além: cache sem prazo de validade, explicou como transformar um site WordPress tradicional num site estático. A descrição da sessão sublinha o que isso traz ao desempenho e à escalabilidade, e a palestra abordou também as vantagens e os desafios desta abordagem.
Tomasz Lach olhou para a otimização do lado do negócio. O ponto de partida: temas, plugins, desenvolvimento, vendas e finanças pareciam estar bem, e ele estava satisfeito. Depois, pequenas alterações pouco óbvias revelaram ter grandes efeitos no seu trabalho com o WordPress e em todo o seu negócio.
Tomasz Kołkiewicz contou a história de como criou produtos comerciais a partir das suas próprias necessidades e observações, e mostrou várias formas de otimizar o seu trabalho e o seu negócio.
Importar produtos no WooCommerce a partir de CSV
Piotr Misztal conduziu um workshop de 90 minutos sobre a importação de produtos com o importador incluído no próprio WooCommerce. Os participantes prepararam o ficheiro numa folha de cálculo (Excel, Calc, Numbers ou Google Sheets) seguindo o mapeamento padrão de colunas do WooCommerce, guardaram-no corretamente em CSV e importaram-no. O workshop cobriu tipos de produto, definições adicionais, descrições, preços, imagens, variações, categorias, etiquetas, taxonomias personalizadas, atributos e dados serializados. Mostrou também como atualizar rapidamente produtos existentes pelo mesmo método.
A documentação atual do importador CSV do WooCommerce completa os detalhes. O importador encontra produtos existentes por ID ou SKU e ignora um ID sem correspondência. Suporta os tipos simple, variable, grouped, external, variation, virtual e downloadable. As colunas que não reconhece são ignoradas, mas os campos personalizados podem ser importados com o prefixo meta: no cabeçalho. As imagens têm de estar já carregadas ou acessíveis por URL, e o importador do núcleo não consegue definir o texto alternativo. Ficheiros grandes podem falhar num único pedido, por isso a documentação recomenda dividi-los em lotes.
Rafał Chrzan apresentou um estudo de caso do WooCommerce combinado com Full Site Editing sobre o Sage 10. O tema foi como uma equipa que já tem um sistema de design pode construir mais depressa projetos de comércio eletrónico à medida.
Plugin com GPT para escrever e publicar artigos no WordPress
A palestra relâmpago de Magdalena Paciorek tinha o título Deixe o GPT escrever e publicar por si. Explicou como criar um plugin que publica automaticamente artigos de blogue no WordPress com um modelo GPT. O plugin recolhe textos de origem, usa o GPT para os classificar e extrair dados e depois gera, a partir desses dados, novos artigos para o blogue.
Alojamento partilhado ou dedicado e RGPD
Wojciech Babicz falou sobre a confiança de dados pessoais ao alojamento. O ponto de partida: quem tem uma loja online, um site com formulário, uma caixa de correio ou acesso ao alojamento de um cliente trata dados pessoais. O RGPD (RODO em polaco) chegou em 2018, o interesse foi esmorecendo e muitas empresas continuam sem saber para onde viajam os dados pessoais nem que dados detêm. Resumiu o que fazer para cumprir a lei no alojamento e no tratamento de dados. A base jurídica é o artigo 28.º do RGPD, segundo o qual “o tratamento em subcontratação é regulado por contrato ou outro ato normativo ao abrigo do direito da União ou dos Estados-Membros” (tradução própria).
Patryk Szymulewski encerrou o dia com o alojamento partilhado comparado com o dedicado. Comparou preço, desempenho e controlo, explicou quando basta um plano partilhado mais barato e quando compensa um servidor dedicado, quando vale a pena pagar proteção contra ataques DDoS e como proteger um site sem um grande orçamento.
Maciek Palmowski perguntou se o WordPress headless faz sentido. Muitos artigos e empresas apresentam o headless como o único caminho certo para o WordPress, e a palestra confrontou essa ideia com a possibilidade de ser apenas mais uma forma de vender serviços.
Laravel Blade no WordPress e máquinas de estado em JavaScript
Na segunda sala decorreram mais três workshops. As inscrições abriram a 4 de setembro de 2023, e a organização avisou que quem chegasse atrasado perderia o lugar para a lista de espera.
Templates Blade num tema WordPress
O workshop de 75 minutos de Przemek Hernik explicou porque vale a pena experimentar motores de templates ao criar plugins ou temas à medida, com o Laravel Blade como exemplo. Os participantes adicionaram o Blade ao seu próprio código em poucos passos. Os requisitos indicados eram uma instalação limpa do WordPress 6.3, PHP 8.1 ou superior e Composer 2.5 ou superior. Uma vista Blade mantém as consultas e a lógica fora do markup:
{{-- resources/views/archive-product.blade.php --}}
@extends('layouts.app')
@section('content')
<header class="catalog-header py-8">
<h1 class="text-3xl font-bold">{{ $categoryTitle }}</h1>
<p class="text-gray-600">{{ $categoryDescription }}</p>
</header>
<div class="product-grid grid grid-cols-1 md:grid-cols-3 gap-6">
@forelse($products as $product)
@include('components.product-card', ['item' => $product])
@empty
<div class="alert alert-info">
<p>{{ __('Não há produtos que cumpram os critérios selecionados.', 'wppoland') }}</p>
</div>
@endforelse
</div>
<div class="pagination-wrapper mt-8">
{!! $paginationLinks !!}
</div>
@endsectionCriar um tema de blocos com Full Site Editing
O workshop de Marcin Krzemiński apresentou o Full Site Editing e os temas de blocos. O objetivo era construir um tema completo no editor sem escrever uma linha de código. Estava aberto a todos os níveis, com conhecimentos básicos de WordPress e do editor de blocos como único requisito. Os participantes precisavam de um computador, de um navegador e de um ambiente de desenvolvimento local, ou em alternativa de uma conta gratuita no InstaWP.
Máquinas de estado em JavaScript com XState
O workshop de Sebastian Kurzynowski introduziu as máquinas de estado em JavaScript. Os participantes precisavam do Visual Studio Code e do XState instalados. O XState apresenta-se como uma biblioteca de gestão de estado e orquestração para JavaScript e TypeScript sem dependências, assente em programação orientada a eventos, máquinas de estado, statecharts e no modelo de atores. Uma máquina de estado permite que um componente esteja num único estado definido de cada vez, por exemplo IDLE, VALIDATING, SUBMITTING, SUCCESS ou ERROR, o que exclui combinações como mostrar ao mesmo tempo o indicador de carregamento e uma mensagem de erro.
Gravações e apresentações do WordCamp Gdynia 2023
As 16 palestras da sala principal foram gravadas. A 3 de outubro de 2023 a organização anunciou que as apresentações estavam disponíveis no canal de YouTube WordPress Trójmiasto, e a 12 de outubro publicou a lista de gravações, uma por palestra. A lista abrange as palestras da sala principal.
O evento foi financiado por patrocinadores. Os patrocinadores ouro foram smarthost.pl, cyberFolks.pl, Fooz, statik space, White Label Coders e wpappointments, e a WPPoland constava entre os parceiros.
Conclusões do WordCamp Gdynia 2023 para equipas técnicas
O WordCamp Gdynia 2023 NextGen mostrou que um WordCamp de um dia e um só tema consegue encher duas salas com material prático. O Playground no navegador, importações CSV bem feitas com as ferramentas que o WooCommerce já traz, templates Blade que separam a lógica do markup e um olhar honesto sobre headless e alojamento respondiam à mesma pergunta: para onde vai o tempo e o que se pode cortar.
Para a Tripla Cidade, casa dos encontros WordUp Trójmiasto, organizar uma conferência nacional desta dimensão foi o resultado de anos de trabalho de quem dinamiza a comunidade local. O contacto direto com os criadores de ferramentas como o WordPress Playground liga o mercado local ao desenvolvimento global do open source.
Para programadores e responsáveis técnicos, eventos como este são a melhor forma de comparar o próprio processo de desenvolvimento com o de outras equipas e evitar erros de arquitetura caros.
Caso a sua empresa planeie um site avançado, a otimização de uma grande loja WooCommerce ou a migração para um tema de blocos, contacte a equipa de desenvolvimento WordPress.







