WP_Theme_JSON::get_stylesheet() – Returns the stylesheet that results of processing the theme.json structure this object represents.

You appear to be a bot. Output may be restricted

Description

Returns the stylesheet that results of processing the theme.json structure this object represents.

Usage

$string = WP_Theme_JSON::get_stylesheet( $types, $origins );

Parameters

$types
( array ) optional default: Array – Types of styles to load. Will load all by default. It accepts:

  • `variables`: only the CSS Custom Properties for presets & custom ones.
  • `styles`: only the styles section in theme.json.
  • `presets`: only the classes for the presets.
$origins
( array ) optional – A list of origins to include. By default it includes VALID_ORIGINS.

Returns

string Stylesheet.

Source

File name: wordpress/wp-includes/class-wp-theme-json.php
Lines:

1 to 37 of 37
  public function get_stylesheet( $types = array( 'variables', 'styles', 'presets' ), $origins = null ) {
    if ( null === $origins ) {
      $origins = static::VALID_ORIGINS;
    }

    if ( is_string( $types ) ) {
      // Dispatch error and map old arguments to new ones.
      _deprecated_argument( get_stylesheet, '5.9.0' );
      if ( 'block_styles' === $types ) {
        $types = array( 'styles', 'presets' );
      } elseif ( 'css_variables' === $types ) {
        $types = array( 'variables' );
      } else {
        $types = array( 'variables', 'styles', 'presets' );
      }
    }

    $blocks_metadata = static::get_blocks_metadata();
    $style_nodes     = static::get_style_nodes( $this->theme_json, $blocks_metadata );
    $setting_nodes   = static::get_setting_nodes( $this->theme_json, $blocks_metadata );

    $stylesheet = '';

    if ( in_array( 'variables', $types, true ) ) {
      $stylesheet .= $this->get_css_variables( $setting_nodes, $origins );
    }

    if ( in_array( 'styles', $types, true ) ) {
      $stylesheet .= $this->get_block_classes( $style_nodes );
    }

    if ( in_array( 'presets', $types, true ) ) {
      $stylesheet .= $this->get_preset_classes( $setting_nodes, $origins );
    }

    return $stylesheet;
  }
 

 View on GitHub View on Trac