Como funciona a normalização de permalink com regex?

Fui para esta configuração Admin > Permalinks > Configurações
Que diz que aplicará a regex antes de corresponder ao permalink.

Tenho um URL antigo do fórum xenforo que é
http://localhost/threads/xyz-abc-is-ghp.223846/

E o novo URL do discourse é
http://localhost/t/xyz-abc-is-ghp/274528

Quando insiro o URL do xenforo no navegador sem o slug como o seguinte, ele redireciona bem, mas não com ele.
http://localhost/threads/223846/

Então, tentei usar a seguinte regex para remover o slug, mas parece que não está fazendo nada. Estou perdendo alguma etapa ou não é assim que deve ser feito?
/^(/threads/)[^.]+.(\d+)/?$/+/\1\2

1 curtida

Você não precisa de um \\2. E você precisa de um \\ antes do ponto que você está procurando. Você tem apenas uma coisa entre parênteses. Talvez algo como

/^(/threads/)[^.]+\\.(\\d+)/?$/threads/\\1
1 curtida

/threads\\/[^.]+\\.([0-9]+)\\/?/threads/\\1

isso funcionou

3 curtidas

Ei, estou na mesma situação e isso funcionou para mim! :clinking_beer_mugs:

Mas quando a URL (URL do xenforo) tem páginas internas, como por exemplo “https://website[.]com/threads/thread-slug/page-3”, então novamente receberei a página de erro “Oops! Essa página não existe ou é privada.”. Alguma correção para isso?

1 curtida

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.