gordy
Мастер
- Регистрация
- 25 Авг 2015
- Сообщения
- 228
- Реакции
- 32
- Автор темы
- #1
есть функция для одного сайдбара, она задает (только левый сайдбар, только правый, без сайдбара), мне нужно её заточить под 2 сайдбара одновременно, подскажите как правильно это сделать
так она зарегистрирована
так она передается в sidebar.php
и вот css
PHP:
function tie_get_registered_sidebars(){
global $wp_registered_sidebars;
$sidebars = array( '' => esc_html__( 'Default', TIELABS_TEXTDOMAIN ) );
$sidebars_list = $wp_registered_sidebars;
$custom_sidebars = tie_get_option( 'sidebars' );
if( ! empty( $custom_sidebars ) && is_array( $custom_sidebars )){
foreach ( $custom_sidebars as $sidebar ){
// Remove sanitized custom sidebars titles from the sidebars array.
$sanitized_sidebar = sanitize_title( $sidebar );
unset( $sidebars_list[ $sanitized_sidebar ] );
// Add the Unsanitized custom sidebars titles to the array.
$sidebars_list[ $sidebar ] = array( 'name' => $sidebar );
}
}
if( ! empty( $sidebars_list ) && is_array( $sidebars_list )){
foreach( $sidebars_list as $name => $sidebar ){
$sidebars[ $name ] = $sidebar['name'];
}
}
return $sidebars;
}
так она зарегистрирована
PHP:
register_sidebar( array(
'id' => 'primary-widget-area',
'name' => esc_html__( 'Primary Widget Area', TIELABS_TEXTDOMAIN ),
'before_widget' => $before_widget,
'after_widget' => $after_widget,
'before_title' => $before_title,
'after_title' => $after_title,
));
так она передается в sidebar.php
PHP:
defined( 'ABSPATH' ) || exit; // Exit if accessed directly
# Returen if the current page is full width or one column
if( ! TIELABS_HELPER::has_sidebar() ) return;
# Check if the sidebars is hidden on mobiles
if( TIELABS_HELPER::is_mobile_and_hidden( 'sidebars' )) return;
# Sticky Sidebar
$is_sticky = tie_get_option( 'sticky_sidebar' ) ? true : false;
# Home Page
if ( is_home() || is_front_page() ){
$sidebar = tie_get_option( 'sidebar_home' );
}
# BuddyPress
elseif( TIELABS_BUDDYPRESS_IS_ACTIVE && is_buddypress() ){
$sidebar = TIELABS_BUDDYPRESS::get_page_data( 'tie_sidebar_post' );
$is_sticky = TIELABS_BUDDYPRESS::get_page_data( 'tie_sticky_sidebar' ) ? TIELABS_BUDDYPRESS::get_page_data( 'tie_sticky_sidebar' ) : $is_sticky;
}
# bbPress
elseif ( TIELABS_BBPRESS_IS_ACTIVE && is_bbpress() ){
$sidebar = tie_get_option( 'sidebar_bbpress' );
}
# Pages
elseif( is_page() ){
$sidebar = tie_get_object_option( 'sidebar_page', '', 'tie_sidebar_post' );
$is_sticky = tie_get_object_option( 'sticky_sidebar', '', 'tie_sticky_sidebar' );
}
# Posts
elseif ( is_single() ){
$sidebar = tie_get_object_option( 'sidebar_post', 'cat_sidebar', 'tie_sidebar_post' );
$is_sticky = tie_get_object_option( 'sticky_sidebar', 'cat_sticky_sidebar', 'tie_sticky_sidebar' );
}
# Categories
elseif ( is_category() ){
$sidebar = tie_get_object_option( 'sidebar_archive', 'cat_sidebar', '' );
$is_sticky = tie_get_object_option( 'sticky_sidebar', 'cat_sticky_sidebar', '' );
}
# All Archives
else{
$sidebar = tie_get_option( 'sidebar_archive' );
}
# Default sidebar if there is no a custom sidebar
if( empty( $sidebar ) || ( ! empty( $sidebar ) && ! TIELABS_HELPER::is_sidebar_registered( $sidebar ) )){
$sidebar = 'primary-widget-area';
}
# Show the sidebar if contains Widgets
if( is_active_sidebar( $sidebar ) ){
$sidebar_class = 'sidebar tie-col-md-3 tie-col-xs-12 normal-side';
if( $is_sticky && $is_sticky !== "no" ){
$sidebar_class .= ' is-sticky';
}
?>
<aside class="<?php echo esc_attr( $sidebar_class ) ?>" aria-label="<?php esc_html_e( 'Primary Sidebar', TIELABS_TEXTDOMAIN ); ?>">
<div class="theiaStickySidebar">
<?php dynamic_sidebar( sanitize_title( $sidebar ) ); ?>
</div><!-- .theiaStickySidebar /-->
</aside><!-- .sidebar /-->
<?php
}
и вот css
HTML:
.sidebar-right .main-content {
float: left;
}
.sidebar-right .sidebar {
float: right;
}
.sidebar-left .main-content {
float: right;
}
.sidebar-left .sidebar {
float: left;
}
.full-width .main-content {
width: 100%;
}
.one-column-no-sidebar .main-content {
margin-right: auto;
margin-left: auto;
float: none;
}