No cenário atual de criação de conteúdo digital, muitos desenvolvedores e blogueiros migram de plataformas tradicionais como o WordPress para geradores de sites estáticos (SSGs), como Gatsby, Hugo ou Jekyll. A migração de conteúdo existente, no entanto, pode ser um desafio. É aqui que a ferramenta wordpress-to-markdown se destaca como uma solução eficaz.
Este script simplifica a transição, convertendo arquivos de exportação XML do WordPress diretamente para o formato Markdown, ideal para SSGs. Além disso, ele gerencia o salvamento de imagens, bem como a incorporação de conteúdos externos, como vídeos do YouTube, tweets ou trechos de código do CodePen, agilizando o processo de migração.
Primeiros Passos
Para utilizar esta ferramenta, siga estes passos:
- Certifique-se de ter o Node.js instalado (versão 12.14 ou superior).
- Obtenha o arquivo de exportação do seu site WordPress. Ao exportar, selecione a opção "Todo o conteúdo" para garantir que imagens e páginas sejam incluídas.
Após preparar esses pré-requisitos, execute o comando no seu terminal:
npx wordpress-to-markdown
Alternativamente, você pode clonar o repositório para executar o script localmente. Isso pode acelerar execuções futuras e permitir modificações personalizadas. Após clonar, navegue até o diretório do projeto no terminal e execute:
npm install && node index.js
Ambos os métodos iniciam um assistente interativo que o guiará pelas configurações necessárias.
Configurações via Linha de Comando
Para configurar as opções diretamente na linha de comando, utilize os seguintes argumentos:
npx wordpress-to-markdown --enable-date-prefix=true --create-post-directories=false
Se estiver executando a versão clonada localmente:
node index.js --enable-date-prefix=true --create-post-directories=false
O assistente solicitará as opções não especificadas. Para pular completamente o asssistente e usar os valores padrão, adicione o argumento --skip-wizard.
Parâmetros Configuráveis
--skip-wizard(booleano): Se definido comotrue, o script utilizará os valores padrão sem solicitar confirmação. Padrão:false.--input-file(caminho de arquivo): Especifica o caminho para o arquivo XML de exportação do WordPress. Padrão:export.xml.--output-dir(caminho de diretório): Define onde os arquivos Markdown e imagens serão salvos. O diretório será criado se não existir. Padrão:output.--year-subdirs(booleano): Organiza os arquivos de saída em subdiretórios baseados no ano de publicação. Padrão:false.--month-subdirs(booleano): Organiza os arquivos de saída em subdiretórios baseados no mês de publicação. Geralmente usado em conjunto com--year-subdirs. Padrão:false.--create-post-directories(booleano): Cria um diretório para cada postagem usando seu slug, com o arquivo Markdown nomeado comoindex.md. Padrão:true.--enable-date-prefix(booleano): Adiciona a data de publicação ao nome do arquivo Markdown da postagem. Padrão:false.--download-media(booleano): Habilita o download e salvamento de todas as mídias associadas às postagens. Padrão:true.--scrape-images(booleano): Habilita o download de imagens encontradas diretamente no conteúdo HTML das postagens através de tags<img>. Padrão:true.--include-custom-post-types(booleano): Inclui tipos de postagem personalizados e páginas no processo de conversão. Padrão:false.
Configurações Avançadas
Para ajustes mais finos, como controle da taxa de download de imagens ou personalização do formato de data nos metadados do cabeçalho, edite o arquivo settings.js na cópia local do projeto. Essas configurações avançadas só são aplicáveis quando o script é executado localmente.
Em resumo, wordpress-to-markdown é uma ferramenta versátil e poderosa, essencial para quem busca uma transição suave de sites WordPress para arquiteturas baseadas em geradores de sites estáticos. Seja para otimizar performance ou simplificar a gestão, este projeto oferece uma solução robusta.