为登录/注销用户显示不同的菜单

时间:2013-05-01 作者:John Doe

我试图为登录和注销用户显示不同的菜单。Here 这是做这件事的完美解决方案,也是关于“二十一”主题的工作。但是,当我尝试将此代码添加到我的woo主题的定义(在header.php中)时,我遇到了以下错误Parse error: syntax error, unexpected \'}\' in C:\\xampp-portable\\htdocs\\wordpress\\wp-content\\themes\\definition\\header.php on line 63 如何修复它?

这是定义的标题代码。php:

<?php
if ( ! defined( \'ABSPATH\' ) ) exit;
/**
 * Header Template
 *
 * Here we setup all logic and XHTML that is required for the header section of all screens.
 *
 * @package WooFramework
 * @subpackage Template
 */

 global $woo_options, $woocommerce;

?><!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( \'charset\' ); ?>" />
<title><?php woo_title( \'\' ); ?></title>
<?php woo_meta(); ?>
<link rel="pingback" href="<?php echo esc_url( get_bloginfo( \'pingback_url\' ) ); ?>" />
<?php
wp_head();
woo_head();
?>
</head>

<body <?php body_class(); ?>>
<?php woo_top(); ?>

<div id="wrapper">

    <?php woo_header_before(); ?>

    <header id="header">
        <div class="col-full">

            <?php woo_header_inside(); ?>

            <hgroup>
                <span class="nav-toggle"><a href="#navigation"><span><?php _e( \'Navigation\', \'woothemes\' ); ?></span></a></span>
                <h1 class="site-title"><a href="<?php echo esc_url( home_url( \'/\' ) ); ?>"><?php bloginfo( \'name\' ); ?></a></h1>
                <h2 class="site-description"><?php bloginfo( \'description\' ); ?></h2>
            </hgroup>

            <?php woo_nav_before(); ?>

            <nav id="navigation" class="col-full" role="navigation">

                <?php /*
                if ( function_exists( \'has_nav_menu\' ) && has_nav_menu( \'primary-menu\' ) ) {
                    wp_nav_menu( array( \'depth\' => 6, \'sort_column\' => \'menu_order\', \'container\' => \'ul\', \'menu_id\' => \'main-nav\', \'menu_class\' => \'nav fl\', \'theme_location\' => \'primary-menu\' ) );
                } else { */
                if (is_user_logged_in()) {
      wp_nav_menu(array(\'theme_location\' => \'logged_user\' ));
} else {
      wp_nav_menu(array(\'theme_location\' => \'new_user\' ));
}
                ?>
                <ul id="main-nav" class="nav fl">
                    <?php if ( is_page() ) $highlight = \'page_item\'; else $highlight = \'page_item current_page_item\'; ?>
                    <li class="<?php echo $highlight; ?>"><a href="<?php echo esc_url( home_url( \'/\' ) ); ?>"><?php _e( \'Home\', \'woothemes\' ); ?></a></li>
                    <?php wp_list_pages( \'sort_column=menu_order&depth=6&title_li=&exclude=\' ); ?>
                </ul><!-- /#nav -->
                <?php } ?>
                <?php if ( is_woocommerce_activated() && isset( $woo_options[\'woocommerce_header_cart_link\'] ) && \'true\' == $woo_options[\'woocommerce_header_cart_link\'] ) { ?>
                    <ul class="nav cart fr">
                        <li><a class="cart-contents" href="<?php echo esc_url( $woocommerce->cart->get_cart_url() ); ?>" title="<?php esc_attr_e( \'View your shopping cart\', \'woothemes\' ); ?>"><?php echo sprintf( _n(\'%d item\', \'%d items\', $woocommerce->cart->cart_contents_count, \'woothemes\' ), $woocommerce->cart->cart_contents_count );?> - <?php echo $woocommerce->cart->get_cart_total(); ?></a></li>
                    </ul>
                <?php } ?>

            </nav><!-- /#navigation -->

            <?php woo_nav_after(); ?>

        </div><!-- /.col-full -->
    </header><!-- /#header -->

    <?php woo_content_before(); ?>

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

我将您的代码放在行号编辑器中以查找行63. 我已经在这条线上标上了额外的} (嗯,这是一致的64 在我的编辑器中)

enter image description here

这是一个PHP 出现错误。尝试删除此行。

结束

相关推荐

Custom menus not showing

作为我上一次关于菜单的未解决查询的后续,这个问题已经进一步扩展。我的菜单没有打印代码中的任何地方。我正在注册菜单功能。php:add_action( \'after_setup_theme\', \'your_newtheme_setup\' ); if ( ! function_exists( \'your_newtheme_setup\' ) ) : function your_newtheme_setup() { if (