2017-06-24 54 views
0

我刚刚安装了buddypress上的一个无言安装,并希望创建一个自定义样式的子主题。在哪里把buddypress的css文件

我已经按照buddypress codex的建议从插件> buddypress> bp-templates> bp-legacy复制了buddypress主题。我已经将buddypress.css文件添加到主题> mytheme>资产> css文件夹中。

使用该文件夹中的css文件,主题默认为读取buddypress插件中的原始css文件。如果我将该文件移出资产文件夹并移入主题> mytheme> css,那么它会读取我的css文件版本,但会打破其他内容,例如用户封面图像不显示。

buddypress.css的正确位置在哪里?我不愿意通过使用#buddypress覆盖style.css中的样式,因为这会创建一个大的css文件,并且不必要地从插件中加载buddypress.css文件。

任何帮助将感激地收到谢谢。

+0

我只用在assets/style.css中,它的覆盖很完美。你尝试加载你的css文件buddypress.css – GNANA

+0

是的,这一半工作。将css文件添加到根主题中的'css'文件夹将覆盖插件中的buddypress css文件。然而,会员封面照片然后被打破。这似乎是作为内联css动态添加的,并且显然存在文件问题的路径。 –

+0

我认为它通过其他插件添加比buddypress – GNANA

回答

0

你应该将buddypress css复制到你的themes/buddypress/css文件夹中,通常你会在你的主题/ buddypress中创建一个css文件夹,然后粘贴到那里的buddypress css文件中。

这肯定会破坏你的封面图片。然后,您只需要为封面图片指定自定义样式。这可以通过简单地将这些代码放到你的functionl.php文件中来实现

function your_theme_cover_image_css($settings = array()) { 
/** 
* If you are using a child theme, use bp-child-css 
* as the theme handel 
*/ 
$theme_handle = 'bp-parent-css'; 

$settings['theme_handle'] = $theme_handle; 

    /** 
    * Then you'll probably also need to use your own callback function 
    * @see the previous snippet 
    */ 
    $settings['callback'] = 'bp_legacy_theme_cover_image'; 

    return $settings; 
} 

add_filter('bp_before_xprofile_cover_image_settings_parse_args', 
      'your_theme_cover_image_css', 10, 1); 
add_filter('bp_before_groups_cover_image_settings_parse_args', 
'your_theme_cover_image_css', 10, 1);