Olá a todos, sou iniciante no tainacan, procurei sempre uma solução para a organização da minha coleção privada de telefones e equipamentos de telecomunicações antigos e estou muito satisfeito com o Tainacan, espero que possa evoluir ainda mais com mais funcionalidades.
Comecei por criar as coleções de artigos mais importantes, mas reparei que fica ordenado o recentemente criado para o que foi criado há mais tempo. Apesar de no frontend o utilizador poder ordenar, tenho receio que o visitante não percorra todas as página de coleções. Há alguma forma de por defeito definir a ordenação das coleções.
Pretendo ordenar a pagina de listagem de coleções, não por defeito os itens dentro da coleção.
No Tainacan é possível criar ordenações a partir do conjunto de metadados da coleção. Essa configuração se encontra na seção de “configurações da coleção” em “Opções da lista de itens”. Por padrão a ordenação vem por “ordenar: Ascendente” e “por: Data de criação”, como mostra a imagem abaixo:
Para modificar, basta selecionar o modo de ordenação que deseja e logo após, o metadado a partir do qual deseja ordenar.
IMPORTANTE - A ordenação, como dito anteriormente, vem por padrão pela ‘data de criação’, quando executar a mudança dela, veja que já existe uma mensagem abaixo avisando que “Estas configurações afetam apenas o estado inicial da ordenação dos itens. Após modificado, o valor utilizado será o último selecionado pelo usuário.”
Uma vez que que efetuou a ordenação como deseja, é necessário também ir na página dos itens e modificar a ordenação e por qual metadado ordenar, como mostra a imagem abaixo:
Você quer é definir a ordenação padrão da lista de coleções na parte pública? Na parte administrativa acho que até pode haver um dia um local para se configurar isso.
Na pública é mais complicado porque depende muito das configurações do tema. Se você tiver condições de usar código, seja em um plugin ou em um tema filho, um caminho seria usar o filtro pre_get_posts:
function my_pre_get_posts( $query ) {
if ( is_admin() )
return;
if (
$query->is_main_query() &&
isset($query->query_vars['post_type']) &&
'tainacan-collection' === $query->query_vars['post_type'])
)
$query->set( 'orderby', 'title' ); // Defina aqui o campo que você preferir
}
add_action( 'pre_get_posts', 'my_pre_get_posts' );
Os valores possíveis de ordenação seriam os disponíveis na WP Query: