<?php function fenix_example ($atts, $content) { $atts = shortcode_atts( array( 'category_name' => '', 'link' => '#', 'id' => '' ), $atts, 'fenix_example' ); $out = ''; if ($atts['category_name']!=='') { $out_parts = array( 'slides' => '' ); $args = array( 'numberposts' => -1, 'category_name' => $atts['category_name'], 'post_type' => 'post', 'order' => 'ASC' ); $posts = get_posts($args); foreach($posts as $key=>$post) { setup_postdata( $post ); $out_parts['slides'].= '<div class="carousel-item'.($key===0?' active':'').' col-12 col-md-4 d-md-block me-md-0" data-bs-interval="false">'. '<div class="card rounded-4 overflow-hidden shadow-block border-0 mb-4">'. ( has_post_thumbnail($post->ID)? '<div class="position-relative">'. '<img src="'.get_the_post_thumbnail_url($post->ID, 'full').'" class="card-img-top" />'. '<div class="size d-flex rounded-pill text-color-3 position-absolute top-0 bottom-0 start-0 end-0 m-auto align-items-center justify-content-center">'.get_the_post_thumbnail_caption( $post->ID ).' м<sup>2</sup></div>'. '</div>': '' ). '<div class="card-body text-center">'. '<div class="title">'. '<h5 class="card-title text-color-3 fw-bold">'.$post->post_title.'</h5>'. ( $post->post_excerpt!=''? '<h6 class="card-subtitle text-color-3">'.$post->post_excerpt.'</h6>': '' ). '</div>'. $post->post_content. '<a href="'.$atts['link'].'" class="btn btn-lg btn-style-0 rounded-pill">Получить бинес план</a>'. '</div>'. '</div>'. '</div>'; } wp_reset_postdata(); unset($key, $post, $posts, $args); $out = ''. '<!--Примеры эффективных-->'. '<div id="'.$atts['id'].'" class="container fenix_example '.$atts['category_name'].'">'. '<div class="row">'. '<div class="col-12 pt-3 pt-md-5">'. '<h1>'.esc_html($content).'</h1>'. '</div>'. '</div>'. '<!--карусель-->'. '<div id="slider-'.$atts['id'].'" class="carousel slide" data-bs-interval="false" data-ride="carousel" data-pause="hover">'. '<div class="carousel-inner row m-auto">'. $out_parts['slides']. '</div>'. '<button class="carousel-control-prev d-flex d-md-none justify-content-center rounded-pill bg-color-7 text-color-6" type="button" data-bs-target="#slider-'.$atts['id'].'" data-bs-slide="prev" data-icon="arrow_left"></button>'. '<button class="carousel-control-next d-flex d-md-none justify-content-center rounded-pill bg-color-7 text-color-6" type="button" data-bs-target="#slider-'.$atts['id'].'" data-bs-slide="next" data-icon="arrow_right"></button>'. '</div>'. '</div>'; unset($out_parts); } return $out; } add_shortcode('fenix_example', 'fenix_example');