Child Theme CSS

Hi,

I'm using the Child Theme and want to override a CSS setting.

I've done some research around how the CSS enqueueing works and it seems that the child theme should enqueue all the CSS files from the parent style first, before enqueueing the child CSS file(s). This way the child css is loaded after the parent, and overrides the settings.

At the moment your child theme functions.php doesn't do this, and so changes made to the style.css of the child theme do not overwrite the parent theme.

Can you please update the functions.php file of the child theme to enqueue all parent css files before the child theme css.

Thank you.

Comments

  • To assist, here is an example of the enqueue styles section from my current adaptation of the child functions.php.  This only loads what seem to be the main 4 styles (as this is all I want to current override) however it would be useful if the child theme provided was correctly configured for all stylesheets used in the main theme.

    /* ---------------------------------------------------------------------------
     * Enqueue Style
     * --------------------------------------------------------------------------- */
    add_action( 'wp_enqueue_scripts', 'mfnch_enqueue_styles', 101 );
    function mfnch_enqueue_styles() {

    // Enqueue the parent stylesheets
    wp_enqueue_style( 'style', get_template_directory_uri(), false, THEME_VERSION, 'all' );
    wp_enqueue_style( 'mfn-base', get_template_directory_uri().'/css/base.css', false, THEME_VERSION, 'all' );
    wp_enqueue_style( 'mfn-layout', get_template_directory_uri().'/css/layout.css', false, THEME_VERSION, 'all' );
    wp_enqueue_style( 'mfn-shortcodes', get_template_directory_uri().'/css/shortcodes.css', false, THEME_VERSION, 'all' );

    // Enqueue the parent rtl stylesheet
    if ( is_rtl() ) {
    wp_enqueue_style( 'mfn-rtl', get_template_directory_uri() . '/rtl.css' );
    }
    // Enqueue the child stylesheet
    wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() .'/style.css', array('style','mfn-base','mfn-layout','mfn-shortcodes') );
    }
  • Hi,
    We will think about it, the enqueue stays the same in a child theme, this only creates a way to override parent css.
    thanks for the insight.
Sign In or Register to comment.
This website uses cookies

We use cookies to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners who may combine it with other information that you’ve provided to them or that they’ve collected from your use of their services.

Cookies are small text files that can be used by websites to make a user's experience more efficient.

The law states that we can store cookies on your device if they are strictly necessary for the operation of this site. For all other types of cookies we need your permission. This means that cookies which are categorized as necessary, are processed based on GDPR Art. 6 (1) (f). All other cookies, meaning those from the categories preferences and marketing, are processed based on GDPR Art. 6 (1) (a) GDPR.

This site uses different types of cookies. Some cookies are placed by third party services that appear on our pages.

You can at any time change or withdraw your consent from the Cookie Declaration on our website.

Learn more about who we are, how you can contact us and how we process personal data in our Privacy Policy.

Please state your consent ID and date when you contact us regarding your consent.