Utilizando a estrutura Permalink do WordPress em tipos de postagem personalizados
-
27-09-2019 - |
Pergunta
Preciso reescrever alguns URLs para modelos personalizados. Por exemplo, eu tenho uma página em domain.com/page
, e quando um usuário clica em 'remover' em um elemento, ele vai para domain.com/page/?remove=54
. Eu gostaria que reescreva para domain.com/page/remove/54
.
A ajuda é apreciada, obrigado antecipadamente!
Solução
Esse código exato não foi testado, mas deriva de outro exemplo de uma situação semelhante que eu resolvi recentemente:
add_action( 'init', 'ss_permalinks' );
function ss_permalinks() {
add_rewrite_rule(
'page/remove/([^/]+)/?',
'index.php?pagename=page&service=$matches[1]',
'top'
);
}
add_filter( 'query_vars', 'ss_query_vars' );
function ss_query_vars( $query_vars ) {
$query_vars[] = 'removeid';
return $query_vars;
}
Reave suas configurações do Permalink uma vez após a implementação. page
é a lesma da página para apontar quando o usuário acessa este URL (domain.com/page/remove/432
), e $matches[1]
deve ser o número depois remove/
no URL. Este número é acessível pela variável especificada posteriormente, $query_vars[] = 'removeid';
/ $ removeid no modelo da página de destino será o número no URL, se especificado.