• Resolvido adrenalliine

    (@adrenalliine)


    Olá Srs, boa tarde.

    Estou com um problema referente a paginas estáticas no wordpress, criei meu template do 0, e não tenho um arquivo chamado page.php, eu simplesmente criei um arquivo chamado sobre.php e no index eu efetuo o redirecionamento da seguinte maneira :

    <div id="topmenu">
    <a href="http://localhost/wordpress/sobre.php" id="topsobre">Sobre</a>
    </div>

    Porém o mesmo não funciona, não sou redirecionado para a pagina correta, é como se ele desconhecesse a pagina sobre.php

    O mesmo só funciona da seguinte maneira :

    <div id="topmenu">
    <a href="http://localhost/wordpress/wp-content/themes/meutema/sobre.php" id="topsobre">Sobre</a>
    </div>

    Tenho que colocar o caminho inteiro da pagina, estou com o site offline, porém quando subilo em algum provedor eu terei que colocar o caminho inteiro da pagina ? Comprometendo o fácil acesso aos usuário?

    Ex:
    http://www.meusite.com.br/wp-content/themes/barbaros/sobre.php

    Ao invés de :

    http://www.meusite.com.br/sobre.php

    acredito que eu esteja falhando em algum detalhe.

    Obrigado.

Visualizando 10 respostas - 1 até 10 (de um total de 10)
  • Moderador Leo Baiano

    (@leobaiano)

    Parabéns pela iniciativa de fazer o tema do zero! O problema é que você parece desconhecer o funcionamento dos templates de páginas no wordPress, então vou tentar ajudar.

    Cada vez que um visitante entra em uma página do seu site o sistema do WordPress identifica a página acessada e segue uma hierarquia¹ para determinar qual arquivo do tema será utilizado para carregar o conteúdo daquela página.

    Por exemplo, quando o visitante acessa a página principal o WordPress procura por um arquivo chamado home.php e caso não encontre ele procura por index.php. Se acessa a página de um post ele procura pelo single-{post-type}.php, depois single.php e depois index.php.

    No caso das páginas a hierarquia é, paga-slug, page-id, page e page.php.

    Dito isto, se você criar uma página chamada “sobre”, quando acessar a URL http://www.seusite.com.br/sobre (levando em conta que está usando url amigável) o WordPress vai procurar por uma página chamada page-slug.php, se não encontrar ele vai procurar pelo arquivo page-id.php, se não encontrar vai procurar pelo arquivo page.php e se não encontrar ele vai carregar o conteúdo utilizando o modelo do arquivo index.php.

    Seu erro foi criar o arquivo sobre.php e tentar apontar o link diretamente para ele. Errou no nome do arquivo e na hora de criar o link. Você não deve apontar diretamente para nenhum arquivo que criar por conta da forma como o WordPress trabalha as URL’s, para criar um link para a página sobre experimente algo assim:

    <a href="<?php echo home_url( 'sobre' ); ?>">Sobre</a>

    A função home_url(); vai verificar a estrutura de URL definida no menu Configurações > Links Permanentes do painel administrativo do WordPress para gerar o link correto.

    A segunda forma de link que você tentou funciona porque você está apontando o caminho completo do arquivo PHP, mas provavelmente vai encontrar diversos erros porque está saindo da estrutura do WordPress, quero dizer, ele não estará rodando como uma página do WP.

    Espero ter ajudado e se ainda houverem dúvidas volta aqui, mas não antes de ler o link abaixo e fazer uns testes sozinho, bom trabalho!


    1 – https://codex.wordpress.org/pt-br:Hierarquia_de_Modelos_WordPress

    Criador do tópico adrenalliine

    (@adrenalliine)

    Léo,

    Obrigado pelo repasse de conhecimento isso é realmente muito importante :

    Li o link que você me encaminhou e me deu uma boa esclarecida em alguns pontos, efetuei mais alguns testes mas não tive o resultado no qual esperava :

    Conforme sua sugestão alterei meu código para o seguinte :

    <div id="topmenu">
    <a href="<?php echo home_url( 'sobre' ); ?>">Sobre</a>
    </div>

    Em seguida abro meu site, e verifico o código fonte da página (Ctrl+U)

    O link esta retornando corretamente o valor :
    Sobre

    Li o link que você me encaminhou e me deparei com uma possível solução na área “Página” onde o mesmo explica como o WordPress faz a busca de páginas, e me atentei para o item 2 – page-slug :

    Ao ver uma página fixa.
    2 – page-{slug}.php – Se o slug da página é sobre-mim, o WordPress vai procurar um arquivo chamado page-sobre-mim.php

    Então renomeei meu arquivo para page-sobre.php

    Não funcionou =/.

    Então voltei ao item número 1
    1 – modelo de página – Se a página tem um modelo de página definido.

    Segui os procedimentos para criar um novo modelo e em seguida associala a minha página, porém no template que eu criei quando crio uma página o mesmo não mostra o “Modelo de página” para associação, pesquisei o assunto e encontrei o seguinte link :

    http://ruanmer.com/a-opcao-modelo-da-pagina-sumiu-do-wordpress/

    Realmente se eu retornar para o tema padrão (twentyfourteen) esta opção me aparece as no meu tema não.

    É isso mesmo Léo, estou no caminho certo ou estou indo e fazendo o troubleshooting para o lado errado ?

    Abraços.

    Moderador Leo Baiano

    (@leobaiano)

    Você tem uma página chamada sobre criada no WordPress, correto? Quando você acessa o link /sobre o que acontece?

    Criador do tópico adrenalliine

    (@adrenalliine)

    Acontece que sou redirecionado para index.php

    Moderador Leo Baiano

    (@leobaiano)

    Com redirecionado você quer dizer que está carregando o conteúdo do arquivo index.php e não do arquivo page-sobre.php, é isso?

    Se for isso, primeiro edite a página “sobre” para conferir se o slug é realmente “sobre”, isso você consegue ver pela URL que vai aparecer abaixo do campo com o titulo da página. Se estiver tudo certo acesse o menu Configurações > links permanentes e clique em salvar. Feito isso teste novamente.

    Criador do tópico adrenalliine

    (@adrenalliine)

    Leo, muitíssimo obrigado pela ajuda, cliquei em salvar nos permalinks novamente e aparentemente resolveu o meu problema.

    Obrigado também por me dar um norte, de como entender esta estrutura do wordpress e como a mesma funciona!

    Não é a primeira vez que você me ajuda estava com um problema semelhante ao problema do user: Kamaia no qual vc o ajudou informando para utilizar o plugin “yoast seo”, a principio o ativei no meu tema mas o mesmo não inseria as tags og: depois com alguma pesquisa descobri que faltava a tag <?php wp_head(); ?> para o plugin inserir as tags.

    Continue assim, vai longe !
    Abraços.

    Moderador Leo Baiano

    (@leobaiano)

    Bom que resolveu. As vezes é preciso salvar a estrutura de permalinhks novamente para que as URL’s funcionem.

    Olá pessoal, tudo bom?

    Estou iniciando no WordPress e aprendendo a gostar.

    Estou com um site quase finalidade, a não ser por alguns probleminhas que andam ocorrendo. Muito parecido com o problema do colega Adrenalliine.

    Vamos lá:

    Finalizei toda a parte estrutura do site. Há dois caminhos, páginas estáticas e com header e footer fixos ou páginas dinâmicas(aquelas que tem últimas notícias. Usando category e tudo mais). No momento, estou tentando fazer a primeira opção.

    Criei 4 páginas: Bem-vindo(a), Consultório, Especialidades e Marcar Consulta.
    No menu( o dilema):
    Personalizado(Bem-vindo(a)): URL = http://localhost/site_spazzio/
    O problema –>
    Personalizado(Consultório): URL = http://localhost/site_spazzio/consultorio.php –> não entendi bem porque não quer funcionar. Nem colocando todo o caminho “http://localhost/site_spazzio/wp-content/themes/teste/consultorio.php&#8221;

    Lá, em links permanentes, está na primeira opção. Mas, já testei personalizado também e nada.

    Agradeço desde já qualquer ajuda.

    Opa Kleyton Renato, você está fazendo tudo errado.. Se puder abrir um novo tópico eu te ajudo por lá. 🙂

    Ok Matheus Gimenez, irei criar outro tópico. Obrigado!

Visualizando 10 respostas - 1 até 10 (de um total de 10)
  • O tópico ‘Paginas Estaticas’ está fechado para novas respostas.