我正在创建一个新的wordpress主题和菜单使用:
function register_my_menus() {
register_nav_menus(
array( 'header-menu' => __( 'Header Menu' ) )
);
}
add_action( 'init', 'register_my_menus' );
这会产生致命错误:
Fatal error: Cannot redeclare register_my_menus() (previously declared in C:\wamp\www\wordpress\wp-content\themes\myTheme\functions.php:5) in C:\wamp\www\wordpress\wp-content\themes\myTheme\functions.php on line 9
这不会在其他任何地方被调用/使用。
我的理解是该函数被称为register_my_menus()
,然后添加了使用add_function初始化的菜单。
有什么想法吗?
答案 0 :(得分:2)
您是否尝试更改功能名称?最好为所有自定义函数添加一些前缀,以避免出现此类错误。 例如,尝试使用:
function theme_name_register_my_menus(){
register_nav_menus(
array( 'header-menu' => __( 'Header Menu' ) )
);
}
add_action( 'init', 'theme_name_register_my_menus' );
答案 1 :(得分:0)
代替在函数内编写register_nav_menus(),请尝试以下操作:
register_nav_menus(
array(
'header_menu' => 'Header Menu',
)
);
只需将上面的代码添加到您的 functions.php 文件中即可。