function generate_spacing_css() { $spacing_settings = wp_parse_args(get_option('generate_spacing_settings', array()), generate_spacing_get_defaults()); $space = ' '; // Start the magic $spacing_css = array('.inside-header' => array('padding-top' => isset($spacing_settings['header_top']) ? $spacing_settings['header_top'] . 'px' : null, 'padding-right' => isset($spacing_settings['header_right']) ? $spacing_settings['header_right'] . 'px' : null, 'padding-bottom' => isset($spacing_settings['header_bottom']) ? $spacing_settings['header_bottom'] . 'px' : null, 'padding-left' => isset($spacing_settings['header_left']) ? $spacing_settings['header_left'] . 'px' : null), '.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .separate-containers .paging-navigation, .one-container .site-content' => array('padding-top' => isset($spacing_settings['content_top']) ? $spacing_settings['content_top'] . 'px' : null, 'padding-right' => isset($spacing_settings['content_right']) ? $spacing_settings['content_right'] . 'px' : null, 'padding-bottom' => isset($spacing_settings['content_bottom']) ? $spacing_settings['content_bottom'] . 'px' : null, 'padding-left' => isset($spacing_settings['content_left']) ? $spacing_settings['content_left'] . 'px' : null), '.ignore-x-spacing' => array('margin-right' => isset($spacing_settings['content_right']) ? '-' . $spacing_settings['content_right'] . 'px' : null, 'margin-bottom' => isset($spacing_settings['content_bottom']) ? $spacing_settings['content_bottom'] . 'px' : null, 'margin-left' => isset($spacing_settings['content_left']) ? '-' . $spacing_settings['content_left'] . 'px' : null), '.ignore-xy-spacing' => array('margin-top' => isset($spacing_settings['content_top']) ? '-' . $spacing_settings['content_top'] . 'px' : null, 'margin-right' => isset($spacing_settings['content_right']) ? '-' . $spacing_settings['content_right'] . 'px' : null, 'margin-bottom' => isset($spacing_settings['content_bottom']) ? $spacing_settings['content_bottom'] . 'px' : null, 'margin-left' => isset($spacing_settings['content_left']) ? '-' . $spacing_settings['content_left'] . 'px' : null), '.main-navigation .main-nav ul li a, .menu-toggle, .menu-toggle .search-item a, .menu-toggle .search-item-disabled a' => array('padding-left' => isset($spacing_settings['menu_item']) ? $spacing_settings['menu_item'] . 'px' : null, 'padding-right' => isset($spacing_settings['menu_item']) ? $spacing_settings['menu_item'] . 'px' : null, 'line-height' => isset($spacing_settings['menu_item_height']) ? $spacing_settings['menu_item_height'] . 'px' : null), '.nav-float-right .main-navigation .main-nav ul li a' => array('line-height' => isset($spacing_settings['menu_item_height']) ? $spacing_settings['menu_item_height'] . 'px' : null), '.main-navigation .main-nav ul ul li a' => array('padding-left' => isset($spacing_settings['menu_item']) ? $spacing_settings['menu_item'] . 'px' : null, 'padding-right' => isset($spacing_settings['menu_item']) ? $spacing_settings['menu_item'] . 'px' : null, 'padding-top' => isset($spacing_settings['sub_menu_item_height']) ? $spacing_settings['sub_menu_item_height'] . 'px' : null, 'padding-bottom' => isset($spacing_settings['sub_menu_item_height']) ? $spacing_settings['sub_menu_item_height'] . 'px' : null), '.main-navigation ul ul' => array('top' => isset($spacing_settings['menu_item_height']) ? $spacing_settings['menu_item_height'] . 'px' : null), '.navigation-search' => array('height' => isset($spacing_settings['menu_item_height']) ? $spacing_settings['menu_item_height'] . 'px' : null, 'line-height' => '0px'), '.navigation-search input' => array('height' => isset($spacing_settings['menu_item_height']) ? $spacing_settings['menu_item_height'] . 'px' : null, 'line-height' => '0px'), '.separate-containers .widget-area .widget' => array('padding-top' => isset($spacing_settings['widget_top']) ? $spacing_settings['widget_top'] . 'px' : null, 'padding-right' => isset($spacing_settings['widget_right']) ? $spacing_settings['widget_right'] . 'px' : null, 'padding-bottom' => isset($spacing_settings['widget_bottom']) ? $spacing_settings['widget_bottom'] . 'px' : null, 'padding-left' => isset($spacing_settings['widget_left']) ? $spacing_settings['widget_left'] . 'px' : null), '.footer-widgets' => array('padding-top' => isset($spacing_settings['footer_widget_container_top']) ? $spacing_settings['footer_widget_container_top'] . 'px' : null, 'padding-right' => isset($spacing_settings['footer_widget_container_right']) ? $spacing_settings['footer_widget_container_right'] . 'px' : null, 'padding-bottom' => isset($spacing_settings['footer_widget_container_bottom']) ? $spacing_settings['footer_widget_container_bottom'] . 'px' : null, 'padding-left' => isset($spacing_settings['footer_widget_container_left']) ? $spacing_settings['footer_widget_container_left'] . 'px' : null), '.site-info' => array('padding-top' => isset($spacing_settings['footer_top']) ? $spacing_settings['footer_top'] . 'px' : null, 'padding-right' => isset($spacing_settings['footer_right']) ? $spacing_settings['footer_right'] . 'px' : null, 'padding-bottom' => isset($spacing_settings['footer_bottom']) ? $spacing_settings['footer_bottom'] . 'px' : null, 'padding-left' => isset($spacing_settings['footer_left']) ? $spacing_settings['footer_left'] . 'px' : null), '.right-sidebar.separate-containers .site-main' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-right' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-left' => '0px', 'padding' => '0px'), '.left-sidebar.separate-containers .site-main' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-right' => '0px', 'margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-left' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'padding' => '0px'), '.both-sidebars.separate-containers .site-main' => array('margin' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'padding' => '0px'), '.both-right.separate-containers .site-main' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-right' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-left' => '0px', 'padding' => '0px'), '.separate-containers .site-main' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'padding' => '0px'), '.separate-containers .page-header-image, .separate-containers .page-header-content, .separate-containers .page-header-image-single, .separate-containers .page-header-content-single' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null), '.both-left.separate-containers .site-main' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-right' => '0px', 'margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-left' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'padding' => '0px'), '.separate-containers .inside-right-sidebar, .inside-left-sidebar' => array('margin-top' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null, 'padding-top' => '0px', 'padding-bottom' => '0px'), '.separate-containers .widget, .separate-containers .hentry, .separate-containers .page-header, .widget-area .main-navigation' => array('margin-bottom' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] . 'px' : null), '.both-left.separate-containers .inside-left-sidebar' => array('margin-right' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] / 2 . 'px' : null, 'padding-right' => '0px'), '.both-left.separate-containers .inside-right-sidebar' => array('margin-left' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] / 2 . 'px' : null, 'padding-left' => '0px'), '.both-right.separate-containers .inside-left-sidebar' => array('margin-right' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] / 2 . 'px' : null, 'padding-right' => '0px'), '.both-right.separate-containers .inside-right-sidebar' => array('margin-left' => isset($spacing_settings['separator']) ? $spacing_settings['separator'] / 2 . 'px' : null, 'padding-left' => '0px')); // Output the above CSS $output = ''; foreach ($spacing_css as $k => $properties) { if (!count($properties)) { continue; } $temporary_output = $k . ' {'; $elements_added = 0; foreach ($properties as $p => $v) { if (empty($v)) { continue; } $elements_added++; $temporary_output .= $p . ': ' . $v . '; '; } $temporary_output .= "}"; if ($elements_added > 0) { $output .= $temporary_output; } } $output = str_replace(array("\r", "\n"), '', $output); return $output; }
/** * Add dynamic CSS * @since 0.4 */ function mantle_custom_css() { $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); if (function_exists('generate_spacing_get_defaults')) { $spacing_settings = wp_parse_args(get_option('generate_spacing_settings', array()), generate_spacing_get_defaults()); } if (function_exists('generate_blog_get_defaults')) { $blog_settings = wp_parse_args(get_option('generate_blog_settings', array()), generate_blog_get_defaults()); } if (function_exists('generate_spacing_get_defaults')) { $top_padding = $spacing_settings['content_top']; $right_padding = $spacing_settings['content_right']; $bottom_padding = $spacing_settings['content_bottom']; $left_padding = $spacing_settings['content_left']; $menu_height = $spacing_settings['menu_item_height']; } else { $top_padding = 40; $right_padding = 40; $bottom_padding = 40; $left_padding = 40; $menu_height = 50; } $return = ''; if (function_exists('generate_blog_get_defaults')) { if ('' == $blog_settings['post_image_position']) { $return .= '.separate-containers .post-image, .separate-containers .inside-article .page-header-image-single, .separate-containers .inside-article .page-header-image, .separate-containers .inside-article .page-header-content-single, .no-sidebar .inside-article .page-header-image-single, .no-sidebar .inside-article .page-header-image, article .inside-article .page-header-post-image { margin: ' . $bottom_padding . 'px -' . $right_padding . 'px ' . $bottom_padding . 'px -' . $left_padding . 'px }'; } else { $return .= '.separate-containers .post-image, .separate-containers .inside-article .page-header-image-single, .separate-containers .inside-article .page-header-image, .separate-containers .inside-article .page-header-content-single, .no-sidebar .inside-article .page-header-image-single, .no-sidebar .inside-article .page-header-image, article .inside-article .page-header-post-image { margin: -' . $top_padding . 'px -' . $right_padding . 'px ' . $bottom_padding . 'px -' . $left_padding . 'px }'; } } else { $return .= '.separate-containers .post-image, .separate-containers .inside-article .page-header-image-single, .separate-containers .inside-article .page-header-image, .separate-containers .inside-article .page-header-content-single, .no-sidebar .inside-article .page-header-image-single, .no-sidebar .inside-article .page-header-image, article .inside-article .page-header-post-image { margin: -' . $top_padding . 'px -' . $right_padding . 'px ' . $bottom_padding . 'px -' . $left_padding . 'px }'; } $return .= '.nav-above-header {padding-top: ' . $menu_height . 'px}'; $return .= '.stickynav.nav-below-header .site-header {margin-bottom: ' . $menu_height . 'px}'; if ('contained-nav' == $generate_settings['nav_layout_setting']) { $return .= '@media screen and (min-width: 768px) { body.stickynav.nav-below-header #site-navigation, body.nav-above-header #site-navigation, body.stickynav.nav-above-header #site-navigation { left: 50%; width: 100%; max-width: ' . $generate_settings['container_width'] . 'px; margin-left: -' . $generate_settings['container_width'] / 2 . 'px; } }'; } return $return; }