Feature de gerar sitemap
Merge relativo à Issue #38 (closed)
Aqui está uma descrição detalhada das mudanças e melhorias que foram feitas:
Criação de uma página específica nas configurações do plugin
Foi adicionada uma função para exibir opções relacionadas à sitemap do Omeka nas configurações do plugin. As opções incluem "Mostrar URLs", "Gerar Arquivo XML" e "Salvar URLs na tabela".
Função para recuperar todos os itens do omeka
Foi criada a função principal que busca itens na API do Omeka com base em itemsets
específicos:
- 'texto_de_divulgacao' => '1',
- 'ciencia_jovem' => '27267',
- 'textos_livres' => '27537',
- 'notaveis' => '9',
- 'calcada_da_fama' => '27266',
- 'encartes' => '26887',
- 'jogos' => '22909'
A função realiza chamadas à API do Omeka para buscar todos os itens de cada itemset, com o seguinte comando:
$items_api_endpoint = OMEKA_API_URL . '/items?item_set_id[]=' . $item_set_id . '&per_page=500';
Integração com plugin SlimSEO
Foi adicionada uma função para integrar o plugin com o SlimSEO usando o hook add_filter('slim_seo_sitemap_post', 'add_omeka_urls')
.
Fiz uma pergunta ao autor do plugin para conseguir realizar a integração com sucesso.
Também foi incluído um código para checar se o plugin SlimSEO está ativo no sistema.
Outros
Melhorias na Estrutura e Armazenamento de Dados:
Foi implementada a criação de uma tabela no banco de dados do WordPress chamada wp_getod_urls_sitemap
para armazenar informações dos itens do Omeka.
Além disso, foi criada uma função para atualizar a tabela somente se a data de modificação for diferente e uma função para buscar os itens da tabela.
Função de apoio para gerar as URLs
Esta função auxiliar determina a URL gerada com base no itemset usando uma estrutura switch case.
O itemset é mapeado para uma URL correspondente:
- 'texto_de_divulgacao' => '/ciencia-em-sintese/artigo/?item_id=',
- 'ciencia_jovem' => '/ciencia-em-sintese/artigo/?item_id=',
- 'textos_livres' => '/ciencia-em-sintese/artigo/?item_id=',
- 'notaveis' => '/historia-das-ciencias/cientista/?item_id=',
- 'calcada_da_fama' => '/historia-das-ciencias/cientista/?item_id=',
- 'encartes' => '/sala-de-aula/encartes/encarte/?item_id=',
- 'jogos' => '/ciencioteca/jogos/jogo/?item_id='
Funções Extras para Gerar XML e Retornar URLs:
Foram adicionadas funções extras para gerar um arquivo XML contendo as URLs puxadas da API do Omeka. Outra função foi criada para exibir todas as URLs na tela.
Formatação Padrão do PHP:
Foram feitas melhorias na formatação do código para seguir as convenções e padrões de codificação do PHP.