correct data

This commit is contained in:
2026-02-07 11:05:31 +03:00
parent 6ab9106be0
commit 09ef3e1d6d
12 changed files with 378 additions and 278 deletions

View File

@@ -50,85 +50,112 @@ get_header();?>
<?endif?>
</div>
<?endif?>
</div>
<?php
</div>
?>
<?$posts = get_posts([
'tag' => 'номер'.$curr_number['number'],
'post_type' => 'post',
<?php
// Обработка ошибки в функции get_posts() с тегом
try {
$posts = get_posts([
'tag' => 'номер'.$curr_number['number'],
'post_type' => 'post',
'numberposts' => -1
]);
} catch (Exception $e) {
// Логируем ошибку и используем альтернативный подход
error_log('Error in get_posts with tag: ' . $e->getMessage());
// Альтернативный способ получения постов по тегу
$tag = get_term_by('name', 'номер'.$curr_number['number'], 'post_tag');
if ($tag) {
$posts = get_posts([
'tag_id' => $tag->term_id,
'post_type' => 'post',
'numberposts' => -1
]);
} else {
$posts = [];
}
}
$pitems = [];
$endpolosa = 1;
$pitems = [];
$endpolosa = 1;
if ( !empty($posts) ) {
foreach ($posts as $post){
$posttags = get_the_tags($post->ID);
foreach ($posttags as $tag){
$pfind = strpos($tag->name, 'полоса');
if (!empty($posts)) {
foreach ($posts as $post) {
$posttags = get_the_tags($post->ID);
if ($posttags) {
foreach ($posttags as $tag) {
$pfind = strpos($tag->name, 'полоса');
if ($pfind !== false) {
$number = (int)substr($tag->name, 0, $pfind);
if ($number > $endpolosa ){
$endpolosa = $number;
}
$pitems[$number][] = $post;
if ($pfind !== false) {
$number = (int)substr($tag->name, 0, $pfind);
if ($number > $endpolosa) {
$endpolosa = $number;
}
$pitems[$number][] = $post;
}
}
?>
}
}
?>
<?for ($i = 1; $i <= $endpolosa; $i++) {?>
<?if (isset($pitems[$i])):?>
<!--<h2 class="part_title">Полоса <?=$i?></h2>-->
<?foreach($pitems[$i] as $item):?>
<?$category = get_the_category($item->ID);
$category_id = $category[0]->term_id;
$category_link = get_category_link($category_id);?>
<div class="main-card">
<?if ( has_post_thumbnail($item->ID) ) :?>
<div class="polosa-img">
<a href="<?the_permalink($item->ID);?>"><img src="<?php echo get_the_post_thumbnail_url($item->ID, 'large'); ?>" alt="<?=$item->title;?>"></a>
</div>
<?endif?><br>
<div class="main-card-title"><p><a href="<?the_permalink($item->ID);?>"><?=get_the_title($item->ID);?></a></p></div>
<div class="main-card-body">
<div><a href="<?the_permalink($item->ID);?>"><?=$item->post_excerpt?></a></div><br>
<div class="news_date"><a href="<?=$category_link?>"><?=$category['0']->name?></a></div>
<?php for ($i = 1; $i <= $endpolosa; $i++) { ?>
<?php if (isset($pitems[$i])): ?>
<!--<h2 class="part_title">Полоса <?php echo $i; ?></h2>-->
<?php foreach($pitems[$i] as $item): ?>
<?php
$category = get_the_category($item->ID);
$category_id = $category[0]->term_id;
$category_link = get_category_link($category_id);
?>
<div class="main-card">
<?php if (has_post_thumbnail($item->ID)) : ?>
<div class="polosa-img">
<a href="<?php the_permalink($item->ID); ?>">
<img src="<?php echo get_the_post_thumbnail_url($item->ID, 'large'); ?>" alt="<?php echo esc_attr($item->post_title); ?>">
</a>
</div>
</div>
<?endforeach?>
<?endif?>
<?}
}?>
<?php endif; ?>
<br>
<div class="main-card-title">
<p>
<a href="<?php the_permalink($item->ID); ?>">
<?php echo get_the_title($item->ID); ?>
</a>
</p>
</div>
<div class="main-card-body">
<div>
<a href="<?php the_permalink($item->ID); ?>">
<?php echo $item->post_excerpt; ?>
</a>
</div>
<br>
<div class="news_date">
<a href="<?php echo $category_link; ?>">
<?php echo $category[0]->name; ?>
</a>
</div>
</div>
</div>
<?php endforeach; ?>
<?php endif; ?>
<?php }
} ?>
<?php
$numbers_year = date('Y');
include get_template_directory().'/blocks/arh_more.php';
?>
<?php
$numbers_year = date('Y');
include get_template_directory().'/blocks/arh_more.php';
?>
<div class="publ-to-main">
<button class="more_button" onclick="location.href='<?=get_site_url()?>/category/arkhiv'" type="button">
Архив номеров</button>
</div>
<div class="publ-to-main">
<button class="more_button" onclick="location.href='<?php echo get_site_url(); ?>/category/arkhiv'" type="button">
Архив номеров
</button>
</div>
</div>