【问题标题】:Changing classes/id's in Wordpress child theme在 Wordpress 子主题中更改类/ID
【发布时间】:2015-12-27 08:08:24
【问题描述】:

我目前正在通过创建子主题来更改 wordpress 中的父主题,我只是在检查这是否被认为是错误的形式,以及如果/当​​主题更新时它是否会产生任何影响。

例如父主题的header.php 有一个名为#menu 的ID。这在父级的style.css 文件中有很多样式。为了避免更改与 #menu 相关的所有内容,我在子主题的 header.php 文件中将 id 更改为 #menu-child 并添加了我自己的样式,这使它更快,但我不确定它是否会如果/当它更新时,把样式/主题搞砸。

提前致谢。

【问题讨论】:

    标签: php html css wordpress wordpress-theming


    【解决方案1】:

    简短回答:不。

    您的子主题模板会覆盖主主题模板,并且在更新后仍然如此。因此,您的更改将保持不变。但是,如果父主题使用 #menu 来表示东西(样式、js...),这些更改和当前调整将不再对您的子主题产生任何影响。因此,如果您想要自己的更改以及父主题的所有功能和样式,则不应删除 id,而应添加自己的类。 当然,主题开发人员有时会弄乱结构或自己进行更改,这也需要您更改子主题模板(例如更改整个结构)。

    【讨论】:

    • 谢谢!你会如何建议离开#menu id并添加一个类? id 不会还有一些样式吗?
    • 您不想保留父主题的样式吗?如果您不想保留父主题样式并且这些是通过 id 完成的,这真的很棘手,但是如果您不想保留任何样式,也许您毕竟想要自己的主题?通常在子主题中,您会覆盖样式并通过自己的类添加样式,例如:#main { color: #myowncolor } #main.my-child-theme { //your styles } (这也可以直接在 id 上,但是它可以更轻松地将覆盖与您自己的样式分开)
    • 我想将样式与与菜单有关的一些事情分开 - 目前主题是汉堡风格的菜单。我有它,所以菜单项在没有汉堡菜单的情况下显示。
    • 如果它只是关于可见性,在当前 id 菜单上覆盖它可能会更容易:#menu {display:block} -> 但如果汉堡菜单是通过 js 触发和初始化的,可能是你的使用自定义 id 的第一种方法也是摆脱任何 js 功能的更好解决方案(取决于 js 如何绑定到元素,它也可以是数据标签或类)
    • 谢谢,我给你举个例子来说明我的意思......所以这是父 style.css 菜单的一部分 #menu { position: absolute; z 指数:99999;显示:无;右:0;顶部:60px; }#menu > ul > li.menu-item-has-children > a:after, #menu > ul ul > li.menu-item-has-children > a:after { top: 50%;右:0px;边距顶部:-6px;左边距:4px;高度:自动;内容:'\f107';字体家族:'FontAwesome';行高:12px;但我不希望其中一些适用。比如我如何摆脱所有的第二个样式?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-06
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    • 1970-01-01
    相关资源
    最近更新 更多