1

To enqueue I have used get_theme_file_uri('/style.css'). Now I have created a child theme using a generator and it created a code like the following; but it throws a php error with parent-style.

  1. Is the code below really needed if I am using get_theme_file_uri() in my parent theme as it will automatically search for file in child theme?
  2. I have some css code in parent theme (style.css). So if I use child theme (which is empty). So will the parent theme style get applied?

function theme_enqueue_styles() { wp_enqueue_style('parent-style', get_template_directory_uri() . '/style.css'); wp_enqueue_style('child-style', get_stylesheet_directory_uri() . '/style.css', array($parent_style)); } add_action('wp_enqueue_scripts', 'theme_enqueue_styles');

Thanks

14
  • yes parent theme style applied Commented Dec 22, 2018 at 10:35
  • your new or custom css code add your child theme css file but active your child theme Commented Dec 22, 2018 at 10:36
  • add this code child theme functions.php file Commented Dec 22, 2018 at 10:38
  • // Add Parent Style add_action( 'wp_enqueue_scripts', 'eventry_child_scripts' ); function eventry_child_scripts() { wp_enqueue_style( 'parent-style', get_template_directory_uri(). '/style.css' ); } Commented Dec 22, 2018 at 10:38
  • 1
    get_theme_file_path() (for absolute file paths) and get_theme_file_uri() (for URLs) work just like get_template_part() in that they will automatically look in the child theme for that file first, then fallback to the parent theme. Commented Dec 22, 2018 at 11:45

1 Answer 1

0

Is the code below really needed if i am using get_theme_file_uri() in my parent theme as it will automatically search for file in child theme?

No. If your parent theme uses get_theme_file_uri( '/style.css' ), then when you create a style.css file in your child theme, WordPress will load that instead. So it won't load the parent theme's styles at all, which I think is related to your next question.

I have some css code in parent theme (style.css). So if i use child theme(which is empty). so whether the parent theme style will get applied?

If your parent theme uses get_theme_file_uri( '/style.css' ), and your child theme has a style.css file, the parent the styles won't get loaded at all. get_theme_file() will load the first file it finds, not all of them.

If you want to load the parent theme's styles and the child theme's styles, you have two options:

  1. Update your parent theme to use get_parent_theme_file_uri( 'style.css' ). This will cause WordPress to always load style.css from the parent theme, even if a child theme is activated. If you want to load style.css from the child theme as well, then enqueue get_theme_file_uri( 'style.css' ) from the child theme. Or,
  2. Leave your parent theme the way it is, and then enqueue the parent theme's stylesheet from the child theme by enqueueing get_parent_theme_file_uri( 'style.css' ) from the child theme.
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.