Criação de menu personalizado
-
Bom dia! =)
Eu preciso alterar o funcionamento normal do menu do WordPress. Ao invés de ele apontar para um URL, quero que aponte para uma âncora (#perfil, por exemplo). Usando o painel do WordPress, consigo fazer isso, através de Menus -> Links Personalizados.
O meu desafio é fazer isso sem usar o painel – através de código. Pensei em duas coisas:
1. Alguma função que fizesse com que a URL de uma página fosse o seu “slug”. Exemplo: originalmente, teríamos uma página assim: http://www.dominio.com.br/nomedapagina. Minha ideia é fazer com que a sua URL, e consequentemente o HREF do menu, seja #nomedapagina.
2. A outra opção seria criar, via código, um menu personalizado, que ao invés de apontar para a URL de uma página, apontaria (href) para #nomedapagina.
Estou precisando disso para criar um tema com scroll, de uma página só.
Ideias?
Abraços,
Danilo
-
Cara, não sei se tou seguindo ou se é você que tá complicando, mas você não precisaria simplesmente criar o seu menu na mão?
<!-- O menu --> <a href="#pagina-1">Página 1</a> <a href="#pagina-2">Página 2</a> <a href="#pagina-3">Página 3</a>
Eduardo,
Você tem razão: é mais fácil criar na mão. Mas uma coisa sou eu, o desenvolvedor, fazer isso; outra coisa muuuuito diferente é o cliente.
Estou pensando no cliente. Se eu conseguir isso, ele apenas ficaria com a responsabilidade de criar as páginas; essa solução que procuro faria o resto.
Cheguei num resultado próximo usando o plugin Page Links To. Mas ainda assim preciso, em cada página, definir manualmente o link como #slug-da-pagina.
Eduardo, valeu a ajuda!
Abs
Danilo
Hmmm, tá certo.
Há uma possibilidade: você manda listar todas os slugs das páginas e, com eles, cria o seu menu. Ou seja, pra cada página nova que o cliente criar, um novo item no menu pode ser adicionado automaticamente graças a um WP_Query ou quem sabe usando a função get_pages(). Tá me seguindo?
Entendi que você vai criar um tema com scroll, então você já deve estar chamando essas páginas automaticamente, não? Se sim, basta que você adicione o slug de cada página como o ID da sua div e a âncora está praticamente feita!
Eduardo, valeu pela ajuda! É por aí mesmo!!! =)
Abraços,
Danilo
- O tópico ‘Criação de menu personalizado’ está fechado para novas respostas.