如何控制WordPress Twenty Twelve主题中的自适应导航菜单?

时间:2013-02-04 09:20:17

标签: wordpress wordpress-theming

在默认的Twenty Twelve主题中,当浏览器/屏幕宽度小于600px并且功能不同时,顶部主菜单会变为按钮。我不知道什么代码控制或设置这个替代菜单。

Twenty Twelve preview

有人可以帮我找一种方法来禁用/编辑它吗?

5 个答案:

答案 0 :(得分:6)

这由/navigation.js脚本处理..

负责这一行的是:

<script src="http://wp-themes.com/wp-content/themes/twentytwelve/js/navigation.js?ver=1.0" type="text/javascript">

你可以在第103行的functions.php上禁用它:

   wp_enqueue_script( 'twentytwelve-navigation', get_template_directory_uri() . '/js/navigation.js', array(), '1.0', true );

只需对其进行评论:

// wp_enqueue_script( 'twentytwelve-navigation', get_template_directory_uri() . '/js/navigation.js', array(), '1.0', true );

话虽如此,我真的不明白为什么有人想禁用它,但我想这与这个问题无关..

编辑I:

正如@Lucky Son正确评论的那样,你应该使用wp_deregister_script()

wp_deregister_script( 'twentytwelve-navigation' )

答案 1 :(得分:2)

好的,我已经设法弄清楚是什么控制了这个,我不确定它是否完全回答了我原来的问题,但我会分享我现在所知道的......

我认为它主要受主题style.css中媒体查询的控制。在@media screen and (min-width: 600px)部分,你会发现屏幕/浏览器宽度超过600px的导航菜单样式,一旦宽度低于600px,替代样式由主题CSS文件主体中的CSS声明控制,第578行:/* Navigation Menu */

按钮的外观也在代码@media screen and (min-width: 600px)下的.menu-toggle {display: none;}中设置,即隐藏在600px以上,一旦宽度低于600px,就像之前一样,它出现(不再设置为显示) :none)并在CSS文件的主体中使用样式,在602行附近。

因此,如果您想完全禁用该按钮,可以将其设置为.menu-toggle {display: none !important;}以获取所有屏幕宽度,如果您希望主导航菜单的外观保持固定,请确保它的样式也适用于所有屏幕屏幕宽度,确保它覆盖@media screen and (min-width: 600px)下的所有菜单样式。您可以通过在媒体查询块之后编写代码来覆盖它。有关覆盖CSS媒体查询的有用答案也可以找到here

答案 2 :(得分:0)

以上解决方案无效。这似乎阻止了菜单按钮的运行。我想做的事情(我认为是OP)是为了防止它添加丑陋的菜单按钮,只使用与桌面上相同的导航。

我的网站顶部只有三个按钮,很容易放到我的手机屏幕上,相反,我得到了一个巨大的按钮,可以打开一个巨大的下拉菜单。这没有逻辑。几乎没有Twenty Twelve主题的逻辑,默认情况下将“留下回复”按钮放在帖子的顶部。愚蠢的设计师。

答案 3 :(得分:0)

如果您问我最简单的解决方案是添加min-width:960px;在CSS中,因此它不会在960px下调整网站的主体。

@media screen and (min-width: 600px) {

    .site {
        margin: 0 auto;
        max-width: 960px;
        min-width: 960px;                            --- THIS LINE ADDED
        max-width: 68.571428571rem;
        overflow: hidden;
    } 

答案 4 :(得分:-3)

应用移动插件并禁用菜单可能是谨慎的做法。从而允许用户选择。我想这取决于菜单中的元素。