/** * Core function to generate the custom CSS. This is used by custom-styles.php to print out the stylesheet, if CSS auto-generation * is switched off. * * @param bool $echo * @return string * @since 3.7.4 */ function suffusion_generate_all_custom_styles($echo = false) { global $suf_size_options, $suf_sidebar_count, $suf_minify_css; $suffusion_custom_css_string = ""; $template_path = get_template_directory(); include_once $template_path . '/suffusion-css-helper.php'; include_once $template_path . '/suffusion-css-generator.php'; $suffusion_css_generator = new Suffusion_CSS_Generator(date(get_option('date_format') . ' ' . get_option('time_format'))); $suffusion_custom_css_string .= "/* " . $suffusion_css_generator->get_creation_date() . " */"; $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_body_settings(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_wrapper_settings(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_post_bg_settings(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_body_font_settings(); $suffusion_template_prefixes = suffusion_get_template_prefixes(); $suffusion_template_sidebars = suffusion_get_template_sidebars(); foreach ($suffusion_template_prefixes as $template => $prefix) { $sb_count = $suffusion_template_sidebars[$template]; $suffusion_template_widths = $suffusion_css_generator->get_widths_for_template($prefix, $sb_count, $template); $template_class = '.page-template-' . str_replace('.', '-', $template); $suffusion_custom_css_string .= $suffusion_css_generator->get_template_specific_classes($template_class, $suffusion_template_widths); } if ($suf_size_options == "custom") { $suffusion_template_widths = $suffusion_css_generator->get_widths_for_template(false, $suf_sidebar_count); } else { // We still need to get the array of widths for the sidebars. $suffusion_template_widths = $suffusion_css_generator->get_automatic_widths(1000, $suf_sidebar_count, false); } // The default settings: $suffusion_custom_css_string .= $suffusion_css_generator->get_template_specific_classes('', $suffusion_template_widths); // For the no-sidebars.php template (uses the same widths as computed for the default settings): $suffusion_custom_css_string .= $suffusion_css_generator->get_zero_sidebars_template_widths(); $suffusion_custom_css_string .= $suffusion_css_generator->get_mag_template_widths($suffusion_template_widths); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_date_box_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_byline_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_header_settings(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_tbrh_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_wabh_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_waaf_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_featured_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_emphasis_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_layout_template_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_tiled_layout_css($suffusion_template_widths); $suffusion_custom_css_string .= $suffusion_css_generator->get_finalized_header_footer_nav_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_nr_css($suffusion_template_widths); $suffusion_custom_css_string .= $suffusion_css_generator->get_navigation_bar_custom_css('nav'); $suffusion_custom_css_string .= $suffusion_css_generator->get_navigation_bar_custom_css('nav-top'); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_miscellaneous_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_custom_sidebar_settings_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_typography_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_icon_set_css(); $suffusion_custom_css_string .= $suffusion_css_generator->get_post_format_widths_css(); if ($suf_minify_css == 'minify') { $suffusion_custom_css_string = preg_replace('!/\\*[^*]*\\*+([^/][^*]*\\*+)*/!', '', $suffusion_custom_css_string); /* remove tabs, spaces, newlines, etc. */ $suffusion_custom_css_string = str_replace(array("\r\n", "\r", "\n", "\t"), '', $suffusion_custom_css_string); $suffusion_custom_css_string = str_replace(array(' ', ' ', ' ', ' '), ' ', $suffusion_custom_css_string); $suffusion_custom_css_string = str_replace(array(": ", " :"), ':', $suffusion_custom_css_string); $suffusion_custom_css_string = str_replace(array(" {", "{ "), '{', $suffusion_custom_css_string); $suffusion_custom_css_string = str_replace(';}', '}', $suffusion_custom_css_string); $suffusion_custom_css_string = str_replace(', ', ',', $suffusion_custom_css_string); $suffusion_custom_css_string = str_replace('; ', ';', $suffusion_custom_css_string); } if ($echo) { echo $suffusion_custom_css_string; } return $suffusion_custom_css_string; }