导航在自定义Header.php中不起作用

时间:2012-09-27 作者:user1255049

我做了一个定制header-blog.php(对于博客页面/home.php) 除了header.php, 两者使用完全相同的<nav> 密码在使用header.php, 导航工作正常。然而,在博客页面上(home.php), 其中使用header-blog.php, 导航不起作用-所有链接都会导致“未找到任何内容”

这可能是什么原因?我怎样才能修复它?这是我第一次做这样的事情,所以非常感谢你的见解和想法。

标题博客。php

<!DOCTYPE html>

<html>
<head>
    <meta http-equiv="Content-Type" content="<?php bloginfo(\'html_type\'); ?>; charset=<?php bloginfo(\'charset\'); ?>" />
    <meta name="generator" content="Wordpress <?php bloginfo(\'version\'); ?>" />
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title><?php bloginfo(\'name\'); ?> <?php wp_title(); ?></title>
    <link rel="pingback" href="<?php bloginfo(\'pingback url\'); ?>" />
    <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo(\'rss2_url\'); ?>" />
    <link rel="stylesheet" href="<?php bloginfo(\'stylesheet_url\'); ?>" />
    <link rel="shortcut icon" href="<?php bloginfo(\'template_directory\'); ?>/img/favicon.ico" />
    <?php wp_head(); ?>
</head>



<body>
    <div id="blog-header">
        <div class="logo">
            <a href="<?php bloginfo(\'url\'); ?>"><img src="<?php echo get_template_directory_uri(); ?>/img/logo.png" alt="Urban Palate logo" id="logo" /></a>
        </div><!-- end logo -->
        <nav>
            <ul>
                <li><a href="?page_id=7"><img src="<?php echo get_template_directory_uri(); ?>/img/about.png" alt="Urban Palate intro" /></a></li>
                <li><a href="?page_id=12"><img src="<?php echo get_template_directory_uri(); ?>/img/portfolio.png" alt="Urban Palate portfolio" /></a></li>
                <li><a href="?page_id=15"><img src="<?php echo get_template_directory_uri(); ?>/img/blog.png" alt="Urban Palate blog" /></a></li>
                <li><a href="?page_id=10"><img src="<?php echo get_template_directory_uri(); ?>/img/contact.png" alt="Urban Palate contact" /></a></li>
            </ul>
        </nav>
    </div><!-- end blog-header -->

1 个回复
最合适的回答,由SO网友:Ben HartLenn 整理而成

嗯,我主要的想法是,您应该切换到使用wp\\u nav\\u menu()作为导航菜单,使用CSS将图像添加到导航项目中,因为这样会更加动态,您可以使用“漂亮”的永久链接,如http://urbanpalate.com/portfolio/some-work.

尽管如此,我认为您的导航菜单项只需要在URL开头加一个/即可,如下所示:

<a href="/?page_id=12"><img src="<?php echo get_template_directory_uri(); ?>/img/portfolio.png" alt="Urban Palate portfolio" /></a></li>
那会把你带到http://urbanpalate.com/?page_id=12, 我希望它能载入你的投资组合页面。/表示它是一个绝对url:或者,从您的主页url开始,转到一个页面。如果没有/,您的导航项目将指向博客页面下的页面,因为它们与您所在的页面相关。

结束

相关推荐

处理对GET_TEMPLATE_DIRECTORY_URI()和类似函数的多个调用的最佳方式是什么?

编辑:谢谢你们的回复,伙计们。这正是我想要的。你们每个人都提出了一些好的观点。我想我会坚持使用常量。这确实是一个最佳实践/性能问题。我主要关注以下功能:get_template_directory_uri() get_template_directory() get_stylesheet_directory_uri() get_stylesheet_directory() 我的印象是,在某些情况下反复调用函数是不好的做法。因此,这将被视为不良做法:// Pattern 1