Suporte » Ajustando o WordPress » trazer menus e submenus da base

  • rafa-martin

    (@rafa-martin)


    preciso fazer um select para trazer os menus e os submenus correspondente de cada menu.

    não encontrei nada que possar estar relacionado entre eles pelas tabelas wp_posts, wp_term_taxonomy, wp_postmeta e wp_term_relationships.

    qual é select certo?

Visualizando 6 respostas - 1 até 6 (de um total de 6)
  • Criador do tópico rafa-martin

    (@rafa-martin)

    qual join que tem que ser feito?

    eu tenho o id do submenu, através dele eu preciso saber qual é o seu menu pai.

    alguma ideia?

    antoniomsantos

    (@antoniomsantos)

    Olá rafa-martin

    Os menus são considerados posts sendo assim eles ficam na tabela “wp_posts” e o valor da coluna “post_type” é “nav_menu_item”, creio que você já estava atento a isso. Já as relações entre os menus ficam na tabela “wp_postmeta”. Você pode procurar pela meta_key de nome “_menu_item_menu_item_parent” e o valor (“meta_value”) desta chave será o id de um menu pai.

    Você pode criar uma join entre as duas tabelas.

    Você está procurando uma forma de imprimir a estrutura de menus? O método wp_nav_menu() pode resolver o seu problema. Caso você esteja procurando uma forma de criar uma estrutura de menu personalizada sugiro o uso do Menu Walker.

    Espero ter ajudado.

    Criador do tópico rafa-martin

    (@rafa-martin)

    eu sei que o menu pai fica na wp_posts e que o submenu (menu filho) fica na wp_terms. no entanto não estou conseguindo fazer esse relacionamento.

    na verdade o que eu preciso é bem simples: eu tenho um menu pai chamado menu x, por exemplo. abaixo dele, tenho vários submenus (os menus filhos), como por exemplo, menu filho z, menu filho y e menu filho w.

    o que eu preciso é resgatar o menu pai a partir do menu filho. por exemplo, eu tenho o id do menu filho y. através desse id eu preciso encontrar o menu pai dele.

    entendeu?

    Criador do tópico rafa-martin

    (@rafa-martin)

    então alguma ideia como posso fazer isso? via página ou banco mesmo.

    Criador do tópico rafa-martin

    (@rafa-martin)

    e aí galera nada? qualquer ajuda? rs

    Criador do tópico rafa-martin

    (@rafa-martin)

    pq a dúvida é a seguinte:

    eu precebi que quando o wordpressa cria o menu e o submeniu na mesma tabela. no entanto a descrição da categoria fica na tabela wp_terms.

    segue um exemplo.

    criei as categorias produto 1 e produto 2.

    depois em fui lá aparencia – menus e crieu o menu pai, chamado produto e adicionei as duas categorias que criei abaixo desse produto pai: produto 1 e produt 2. ficando assim:

    produto
    produto 1
    produto 2

    na tabela wp_posts o wordpress criou o registro produto com o id = 1, o sub menu produto 2 com o sub menu produto 2 com id 3. detalhe que para os submenus a coluna post_name nem o mesmo o valor dos seus id’s. Ou seja, 2 e 3.

    na tabela wp_postmeta ele criou duas linhas:

    meta_id post_id meta_key meta_value
    1 2 1
    2 3 1

    aqui ele está dizendo que o menu pai tem dois submenus.

    só que na tabela wp_terms ele criou os as duas categorias, onde deixei elas como submenu do meu produto, com id’s diferentes. por exemplo:

    id 30 – produto 1
    id 31 – produto 2

    dessa forma, não conseguindo trazer qual é o menu pai desses dois submenus. não sei qual é o relacionamento tem que ser feito para trazer esse retorno.

Visualizando 6 respostas - 1 até 6 (de um total de 6)
  • O tópico ‘trazer menus e submenus da base’ está fechado para novas respostas.