File: /home/ayxmplky/public_html/wp-content/themes/tactic/template-parts/home/news.php
<?php
/**
* Template Part: Новости (最新动态与行业资讯)
*
* @package tactic
*/
$all_posts = get_posts( tactic_apply_news_lang_to_query_args( [
'post_type' => 'tactic_news',
'posts_per_page' => 5,
'post_status' => 'publish',
'orderby' => 'date',
'order' => 'DESC',
] ) );
$featured = $all_posts[0] ?? null; // Первая — главная карточка
$news_list = array_slice( $all_posts, 0, 4 ) ?: []; // Правая колонка: до 4 последних (включая первую)
$all_news_url = get_post_type_archive_link( 'tactic_news' ) ?: home_url( '/news/' );
?>
<section class="section section--news" id="news">
<div class="container">
<div class="news__layout">
<div class="news__left">
<div class="news__header">
<h2 class="section__title"><?php echo esc_html( tactic_s( 'news_title' ) ); ?></h2>
<p class="news__subtitle"><?php echo esc_html( tactic_s( 'news_subtitle' ) ); ?></p>
</div>
<!-- Левая колонка: главная карточка со слайдером -->
<div class="news__featured" id="news-featured-slider">
<?php if ( $featured ) : ?>
<a href="<?php echo esc_url( get_permalink( $featured->ID ) ); ?>"
class="news-card news-card--featured">
<div class="news-card__image">
<?php if ( has_post_thumbnail( $featured->ID ) ) : ?>
<?php
echo get_the_post_thumbnail(
$featured->ID,
'tactic-news-thumb',
[ 'loading' => 'lazy', 'alt' => esc_attr( $featured->post_title ) ]
);
?>
<?php else : ?>
<div class="news-card__image-placeholder" aria-hidden="true"></div>
<?php endif; ?>
</div>
<div class="news-card__overlay">
<time class="news-card__date" datetime="<?php echo esc_attr( get_the_date( 'Y-m-d', $featured->ID ) ); ?>">
<?php echo esc_html( get_the_date( 'd.m.Y', $featured->ID ) ); ?>
</time>
<h3 class="news-card__title"><?php echo esc_html( $featured->post_title ); ?></h3>
<span class="news-card__arrow" aria-hidden="true">→</span>
</div>
</a>
<?php else : ?>
<div class="news-card news-card--featured news-card--empty">
<div class="news-card__image">
<div class="news-card__image-placeholder" aria-hidden="true"></div>
</div>
<div class="news-card__overlay">
<time class="news-card__date" datetime="<?php echo esc_attr( wp_date( 'Y-m-d' ) ); ?>">
<?php echo esc_html( wp_date( 'd.m.Y' ) ); ?>
</time>
<h3 class="news-card__title"><?php echo esc_html( tactic_s( 'home_news_empty_featured_title' ) ); ?></h3>
</div>
</div>
<?php endif; ?>
</div>
</div>
<!-- Правая колонка: список новостей -->
<div class="news__right">
<div class="news__list">
<?php foreach ( $news_list as $p ) : ?>
<a href="<?php echo esc_url( get_permalink( $p->ID ) ); ?>" class="news-item">
<time class="news-item__date" datetime="<?php echo esc_attr( get_the_date( 'Y-m-d', $p->ID ) ); ?>">
<?php echo esc_html( get_the_date( 'd.m.Y', $p->ID ) ); ?>
</time>
<h3 class="news-item__title"><?php echo esc_html( $p->post_title ); ?></h3>
<?php
$excerpt = get_the_excerpt( $p->ID );
if ( $excerpt ) :
?>
<p class="news-item__excerpt"><?php echo esc_html( $excerpt ); ?></p>
<?php endif; ?>
</a>
<?php endforeach; ?>
<?php if ( empty( $all_posts ) ) : ?>
<div class="news-item news-item--empty">
<time class="news-item__date" datetime="<?php echo esc_attr( wp_date( 'Y-m-d' ) ); ?>">
<?php echo esc_html( wp_date( 'd.m.Y' ) ); ?>
</time>
<h3 class="news-item__title"><?php echo esc_html( tactic_s( 'home_news_empty_list_title' ) ); ?></h3>
<p class="news-item__excerpt"><?php echo esc_html( tactic_s( 'home_news_empty_list_desc' ) ); ?></p>
</div>
<?php endif; ?>
</div>
<a href="<?php echo esc_url( $all_news_url ); ?>" class="btn btn--dark news__all-btn">
<?php echo esc_html( tactic_s( 'news_all_btn' ) ); ?> <span aria-hidden="true">→</span>
</a>
</div>
</div>
</div>
</section>