Conteúdo
Como parte da alçada fundamental do Tainacan de viabilizar a gestão e divulgação de informações de acervos digitais, está a tarefa de disponibilizar a configuração de diferentes formas de dados estruturados. Esta missão tem sido cumprida pelos chamados “tipos de metadado” que no plugin são a maneira pela qual se cria informações a respeito de um item. Para encarar a diversidade de informações que podem ser representadas, temos utilizado tipos de metadados como Texto (simples e longo), Numérico, Data, Relacionamento, Taxonomia, Usuário e Composto.
Esta família de tipos de informação está prestes a receber mais um integrante, um que deve nos ajudar a mostrar algo muito relevante para diversas áreas: a geolocalização. Isso introduz uma série de novas interfaces e conceitos para o Tainacan então vem com a gente:
Novidades
Metadado de Geolocalização
Configurando o metadado
De início, o módulo de Geolocalização parecerá inexistente para usuários do Tainacan. Isto porque para usá-lo, é preciso que sua coleção, ou repositório, tenha algum metadado de localização. Para tal, é preciso ir para a página de configurações de metadados e criar algum metadado deste tipo, que estará na lista de metadados disponíveis (veja figura ao lado).
O metadado terá todas as configurações que se costuma encontrar em metadados do Tainacan. Pode-se mudar, por exemplo o nome dele para algo como “Localização”. Há a opção de se exibir o metadado por padrão nas listagens, que será importante mais adiante quando falarmos do modo de visualização. Além disso, pode-se definir para que sejam permitidos valores múltiplos. Neste caso, mais de uma marcação poderá ser colocada para o mesmo metadado em um mesmo item.
Mas há aqui também as configurações específicas do metadado de Geolocalização. Elas são 4:
- O provedor de imagens do mapa: que por padrão já vem preenchido com o endereço recomendado do OpenStreetMaps;
- A atribuição: os devidos créditos para uso do servidor de imagens do mapa, neste caso também com o recomendado para se fazer uso do OpenStreetMaps;
- O zoom inicial do mapa: de forma que se o usuário desejar começar com o mapa mais próximo ou mais afastado ele pode alterar este valor, que vai de 0 a 21;
- O zoom máximo do mapa: que analogamente determina o quanto é possível se aproximar no mapa, com um valor de 0 a 21.
Com as devidas configurações feitas, já será possível determinar a localização em itens. Criaremos, porém, aqui um segundo metadado de Geolocalização, para demonstrar seu funcionamento especial dentro do metadado composto.
Os metadados do tipo composto são uma maneira de se representar informações que tem um forte vínculo uma com a outra, de modo que não faça sentido criar campos para estas sem usar mais de um tipo de metadado. O metadado de Geolocalização é um bom uso disso, já que ele em si guardará apenas as coordenadas (latitude e longitude), mas possivelmente existem outras informações que são de interesse sobre o ponto, como seu endereço. A seguir há um exemplo de um metadado composto configurado com dois metadados “filhos”, um de texto, que guarda o endereço e outro de Geolocalização:
Note que em particular nesta situação, não é possível configurar o metadado de Geolocalização para aceitar valores múltiplos, já que quem poderá ser multi valorado é o metadado composto onde ele se encontra.
Configurando localizações em itens
Com os metadados criados, pode-se editar ou criar qualquer item para se observar os novos campos de entrada disponíveis, que carregam mapas dedicados para cada metadado de Geolocalização.
Na imagem acima, está o metadado criado dentro do composto previamente mencionado. Há dois jeitos de se adicionar uma marcação:
- Apenas movendo o ciclo e depois clicando-se no botão adicionar, no campo superior direito.
- Clicando no mapa diretamente, ou movendo o ciclo azul e depois clicando, o ponto será inserido;
Pode-se usar os controles de zoom para aproximar ou afastar o mapa e inclusive o scroll do mouse. Com um ponto marcado, será possível ver as informações de latitude e longitude configuradas:
Por fim, pode-se clicar e arrastar o próprio marcador para se definir uma nova localização. Como neste caso o metadado está dentro de um composto, pode-se criar novas localizações clicando em “Adicionar valor”. Já para o metadado fora do composto criado anteriormente, pode-se inserir vários pontos no mesmo mapa:
Um simples clique no mapa posiciona o círculo de adição e um clique consecutivo no círculo cria um novo ponto. Clicando-se em um dos pontos existentes, a interface de edição de coordenadas reaparece, e o ponto selecionado ganha foco, centralizado e com opacidade maior que os demais:
Por fim, como pode ser visto na imagem acima, ao se clicar em um ponto este também pode ser removido usando o botão do canto superior direito.
Visualizando os locais configurados.
Ao se acessar a página pública do item configurado no site, cada metadado terá o mapa carregado com os pontos indicando a localização configurada:
Este comportamento, de mostrar o mapa carregado para cada valor, é único para a página pública do item. Na página administrativa e nas listagens de itens, ao invés de se carregar vários mapas, é mostrada a informação básica que o metadado guarda: as coordenadas geográficas. Por exemplo, no modo de visualização “Ficha”, um item na lista de itens aparecerá da seguinte forma:
Isto evita que vários mapas pequenos sejam carregados de forma a pesar o carregamento da página, além de ser de difícil interação se pensarmos em alguns cenários como a tabela. Mas há um detalhe: as coordenadas aqui são links montados usando o Padrão Geo URI Scheme, que foi criado para viabilizar a abertura de localizações em aplicações preparadas para carregar mapas. Em alguns sistemas isso pode levar a janelas que ofereçam serviços de mapas tradicionais como Google Maps e Apple Maps.
Mas a maneira apropriada para se visualizar as localizações em uma listagem de itens é com apenas um mapa que agregue todas as localizações de todos os itens. Para isso foi criado um novo modo de visualização, denominado Mapa.
Modo de Visualização “Mapa”
O modo de visualização mapa vem habilitado por padrão no lado administrativo e pode ser habilitado na parte pública nas configurações da Coleção:
Acessando uma lista de itens e clicando no modo de visualização “mapa” é visto algo como:
Se este painel com o ícone de mapa aparecer sobre o mapa, quer dizer que nenhum metadado de geolocalização foi criado ou está ativo. E como este modo de visualização depende da existência de algum, é apontado isso. Por isso, nas configurações do próprio metadado, é recomendado defini-lo como “Exibir por padrão” nas listagens de itens. Caso contrário, será necessário ir para o dropdown de “Metadados mostrados”, na barra de controle da busca e habilitar manualmente os metadados de geolocalização existentes.
Com esta questão ajustada, o mapa deve ser carregado colocando marcações nos valores configurados no primeiro dos metadados de geolocalização existentes:
O controle na barra superior indica com base em qual dos metadados de geolocalização estão sendo puxadas as localizações. Ao lado está a lista de itens correspondendo à busca/filtros atual. Note que alguns itens estão com opacidade baixa, quase transparentes. Estes são os que atendem ao critério da lista atual (busca, ordenação e filtros), porém não possuem valor configurado em seu metadado de geolocalização. Ao se clicar em um destes itens, uma mensagem reforça este fato. Já para os itens que possuem alguma localização, há dois níveis de interação: ao se passar o mouse sobre eles, os seus marcadores no mapa ficarão maiores. Ao se clicar no item, os demais marcadores perderão opacidade e uma ficha flutuante será aberta, mostrando as informações do item:
Qualquer clique no item aqui fora do mapa desselecionará este item. Já um clique na própria ficha leva para a página do item. No exemplo acima, estamos vendo um item cujo metadado é multi valorado e por isso tem mais de uma informação de local. Passando o mouse sobre a localização, temos o nome do item e um indicador de quantidade:
Mesmo com o item desselecionado podemos clicar em um marcador. Isto trará destaque para o marcador e abrirá a ficha do item correspondente. Porém, se for multi valorado, outras localizações relacionadas podem estar fora de vista. Para centralizar em todas as localizações daquele item, há um ícone de “localização” na ficha do item, que reposiciona o mapa:
É importante notar aqui que a lista de itens segue possuindo paginação. Isto significa que não são todos os itens que estão presentes, mas o conjunto deles que foi carregado nesta página. Como em qualquer modo de visualização do Tainacan, a quantidade de itens a serem mostrados por página pode ser configurada abaixo da lista.
Por fim, há um comportamento especial dos metadados de geolocalização que foram inseridos dentro de metadados compostos. Trocando o metadado no seletor do canto superior esquerdo do mapa, podemos marcar o que foi previamente criado. Ao se passar mouse sobre qualquer marcador deste metadado, vemos mais informações do que somente o título:
Exclusivamente para o caso do composto, são mostradas as outras informações do metadado, sem incluir os rótulos que geralmente estão presentes na ficha. Esta é a maneira pela qual se mostram informações múltiplas de uma localização no metadado de geolocalização.
Seções Condicionais de Metadados
Na versão 0.19 apresentamos diversas novidades relacionadas às seções de metadado. Agora que todos estão se acostumando a organizar suas longas listas de metadados com as seções, que tal darmos mais poder à elas? Com as seções condicionais, começamos a permitir que uma seção apareça ou não dependendo do valor de um certo metadado em outra seção. Funciona-se da seguinte maneira:
Cria-se em uma seção um metadado do tipo “Lista de Seleção”. Colocamos nas configurações dele as opções disponíveis como “sim” ou “não”:
Com isto feito, podemos Agora ir nas configurações de outra seção de metadados (que não seja aquela onde o metadado foi criado) e habilitar a opção de Seção Condicional. Com isso configuramos qual o metadado e qual valor que servirá de critério para mostrar ou não esta seção:
Vamos agora para a página de edição de um item. A seção aparecerá desabilitada, enquanto o metadado de seleção não tiver como valor “sim”:
Esta aparência “desabilitada” é o comportamento no lado administrativo. No lado público, na página do item, esta seção nem será exibida. Esta é uma maneira de se colocar informações “incrementais” em itens, de forma que nem todos tenham estes dados, mas alguns, baseando-se em alguma condição, tenham estas informações extras.
Seções no Bloco de Submissão de Itens como “etapas”
E em complemento ao recurso de Seções Condicionais, o bloco gutenberg que cria o Formulário de Submissão de item acabou de ganhar um novo recurso: dividir as seções de metadados em “etapas”. Para aqueles familiarizados com o Google Forms, isso é muito similar a ideia de quebrar um formulário grande em páginas que ao invés de terminarem com um botão de “enviar”, tem um botão de “próximo”:
Com este recurso, formulários de submissão públicos podem ficar menos tediosos e oferecerem realmente só aquelas perguntas relevantes para cada situação.
Variações do Bloco Loop de Consulta
Para os que já se aventuraram em configurar um tema usando o editor de blocos do WordPress, já deve ter topado com o bloco “Loop de Consulta”, que nada mais é do que uma lista de posts. Este bloco é interessante por trazer sempre a estética que o tema desenvolvido propôs e poder ser estendido por plugins de diversas formas. Pensando no futuro, estamos criando um recurso que facilita o uso deste mesmo bloco para se mostrar listas de Coleções e Itens do Tainacan: As Variações do Bloco de Consulta.
Já era possível chegar nisso configurando-se o “tipo de post” nas configurações do bloco, mas agora podemos pular umas etapas e disponibilizar as coleções Tainacan diretamente do painel de inserção de blocos. Esta acaba se tornando uma alternativa ao nosso bloco de Lista de Itens, que tem menos opções de seleção mas se integra melhor ao tema e às opções canônicas do WordPress.
Melhorias
- Opção de ordenar lista de itens de Termos ou nível repositório por Nome no Bloco de Busca Facetada;
- Opção de não mostrar a hierarquia completa de termos em links de termos de Taxonomia;
- Erros no bloco de Submissão de Itens são mostrados de forma mais explícita;
Correções de Erros
- Troca de abas no admin não estava resetando a paginação da lista;
- Edição de nome do metadado não estava se refletindo imediatamente na lista de metadados nível repositório;
- Ordenação padrão das coleções vinha quebrada:
creation_date
ao invés dedate
. - E muitas outras resoluções de bugs!
Temas
Como um lembrete, os recursos apresentados acima de suporte ao Metadado de Geolocalização exigiram alguns ajustes nos temas, por isso se você estiver usando o Tainacan Interface ou o Blocksy, não deixe de baixar a última versão deles também 😉
Baixe Já!
A versão 0.20 do Tainacan já está disponível. Você pode baixá-la ou atualizar diretamente pelo seu painel WordPress: