Как я могу отредактировать этот код так, чтобы он влиял только на главное меню, а не на главное меню на моем WordPress сайте? - PullRequest
0 голосов
/ 27 октября 2019

Я использую тему OceanWP для создания своего сайта.

У меня есть две разные меню на главной странице, у меня есть главное меню и главное меню. http://prntscr.com/pofn5r

Я бы хотел, чтобы в верхнем меню отображались различные параметры для пользователей, которые вошли в систему, и для пользователей, которые вышли из системы.

Я использовал следующий код, который я поместил вфайл functions.php. Я также создал два разных меню для пользователей, вошедших в систему и вышедших из системы:


if( is_user_logged_in() ) {
$args['menu'] = 'logged_in';
} else {
$args['menu'] = 'logged_out';
}
return $args;
}
add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );

Кажется, это работает с точки зрения отображения различных меню для пользователей, которые вошли в систему, и для пользователей, которые вышли из системы, но проблема заключается в том, чточто оно также меняет главное меню и верхнее меню.

prntscr.com / podv5e

Я хотел, чтобы главное меню оставалось прежним и просто менялось главное меню в зависимости от того,пользователь вошел в систему или вышел из нее.

Мне было интересно, есть ли способ изменить код так, чтобы он влиял только на главное меню, а не на главное меню?

Ответы [ 2 ]

0 голосов
/ 28 октября 2019

Я скачал бесплатную версию OceanWP и в файле functions.php у вас есть этот код

// Register navigation menus
register_nav_menus( array(
    'topbar_menu'     => esc_html__( 'Top Bar', 'oceanwp' ),
    'main_menu'       => esc_html__( 'Main', 'oceanwp' ),
    'footer_menu'     => esc_html__( 'Footer', 'oceanwp' ),
    'mobile_menu'     => esc_html__( 'Mobile (optional)', 'oceanwp' )
) );

Так что вы хотите настроить таргетинг на 'topbar_menu'

0 голосов
/ 27 октября 2019

Проверьте аргумент theme_location на соответствие правильной навигации.

https://codex.wordpress.org/Plugin_API/Filter_Reference/wp_nav_menu_args

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...