首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从PowerMag主题创建子主题

如何从PowerMag主题创建子主题
EN

WordPress Development用户
提问于 2018-11-19 21:07:20
回答 2查看 80关注 0票数 0

我正在使用PowerMag 2.5作为父级,似乎找不到获得工作子主题的方法。就我现在的情况而言,我只能在style.css中扩展css,但是就覆盖范围而言,什么都没有起作用。当我从父复制到子header.php并对代码进行一些编辑时,它就不工作了。来自父主题的非常大的functions.php是压倒我的,我不知道如何使它工作。

子> style.css

代码语言:javascript
复制
/*
Theme Name:   PowerMag Child
Theme URI:    https://themeforest.net/item/powermag-the-most-muscular-magazinereviews-theme/4740939
Description:  PowerMag Child Theme
Author:       djwd
Author URI:   http://themeforest.net/user/djwd
Template:     powermag
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         dark,light,three-columns,two-columns,left-sidebar,right-sidebar,featured-image-header,featured-images,full-width-template,rtl-language-support,sticky-post,theme-options,threaded-comments,translation-ready,post-formats,custom-menu,custom-background,flexible-width
Text Domain:  powermag-child
*/

子> functions.php

代码语言:javascript
复制
<?php
// Exit if accessed directly
if ( !defined( 'ABSPATH' ) ) exit;

add_action( 'wp_enqueue_scripts', 'enqueue_parent_styles' );
function enqueue_parent_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
}

父母> functions.php

这个文件太大了,所以我上传了这里

EN

回答 2

WordPress Development用户

发布于 2018-11-20 05:38:05

只需创建一个名为PowerMag-child的文件夹。

  • 将style.css放在文本/*主题名称下面: PowerMag子主题URI:https://themeforest.net/item/powermag-the-most-muscular-杂志主题URI-主题/4740939描述: PowerMag子主题作者: djwd作者URI:http://themeforest.net/user/djwd模板: powermag版本: 1.0.0许可: v2或更高版本许可URI:http://www.gnu.org/licenses/gpl-2.0.html文本域:powermag */
  • 具有以下代码的functions.php,没有其他任何
票数 0
EN

WordPress Development用户

发布于 2018-11-20 12:52:54

根据您的描述以及注释中的其他内容,我怀疑问题在于所涉及的各种样式表的加载顺序。我建议通过浏览器中的“查看源”查看标题,看看加载所有内容时样式表的顺序。

检查加载顺序并调整排队优先级

稍后加载的样式表将覆盖早期样式表中的样式。因此,如果在子主题的styles.css之后加载父元素的样式表,那么这些稍后的样式表属性就是应用的内容。

通常,子样式表应该在子表和父表的functions.php中的任何排队样式之后加载。但如果这种情况没有发生,你可能需要做出相应的调整。

您可以做的一件事是在您的子主题文件夹中添加一个样式表,以包含您的覆盖样式(与您的子主题样式表分开),然后用wp_enqueue_style()加载它。将其挂钩到wp_enqueue_scripts操作,并将优先级设置为稍后(例如99或100)。查看父functions.php表明,已排队的样式在默认优先级(即10 )下排队,因此设置此稍后的优先级应比从父服务器加载自定义样式集的时间晚。

这可能需要一些调整,但回顾哪些负载和什么时候在浏览器中的“视图源”应该可以帮助您使事情按正确的顺序进行。

,如果一切都按正确的顺序进行,而我仍然不能重写呢?

确保您试图覆盖的样式实际上在您认为它们位于的样式表中。使用浏览器检查器查看样式,它应该告诉您该样式的源样式表是什么。

此外,使用浏览器检查器应该告诉您开发人员是否使用了!important CSS规范。我个人讨厌他们这样做-这是一种不好的做法,通常是出于懒惰,因为他们无法找到正确的方式应用一项财产。问题在于,简单地定义一个新属性就会被忽略。在这种情况下,您需要在以后加载CSS并指定!important来覆盖第一个CSS。您还可能需要将特定属性设置为initial才能完全重置它。

希望这能帮你找到问题。

票数 0
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/319667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档