我刚刚在无字安装上安装了buddypress,并希望使用自定义样式创建一个子主题。
我已根据buddypress codex的建议从插件> buddypress> bp-templates> bp-legacy复制了buddypress主题。我已将buddypress.css文件添加到主题> mytheme> assets> css文件夹中。
使用该文件夹中的css文件,主题默认为读取buddypress插件中的原始css文件。如果我将文件移出assets文件夹并进入主题> mytheme> css,那么它会读取我的css文件版本,但会打破其他内容,例如用户封面图片无法显示。
buddypress.css的正确位置在哪里?我不愿意使用#buddypress覆盖style.css中的样式,因为这将创建一个大的css文件并从插件中不必要地加载buddypress.css文件。
感谢任何帮助。
答案 0 :(得分: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 );