muhammadislom
@muhammadislom
PHP Laravel

Выводит один и тот же пост для всех постов.?

Если кто знает помогите. Для вывода постов из определённой категории нашел этот код. Все норм выводит так как я хотел. но при нажатии на ссылки открывается одна и та же страница для всех постов.
вот картина.
5f1d466247c9c735433496.png
5f1d4675d1401013315525.png
внизу код который использовал для вывода определёной категории.
<?php
$post_type = 'product';
$taxonomies = get_object_taxonomies(array(
    'product' => $post_type
));
foreach ($taxonomies as $taxonomy):
    $terms = get_terms($taxonomy);
    foreach ($terms as $term): ?>
<?php
        $args = array(
            'post_type' => $post_type,
            'posts_per_page' => - 1, //show all posts
            'tax_query' => array(
                array(
                    'taxonomy' => 'allproducts',
                    'field' => 'slug',
                    'terms' => $term->slug,
                )
            )

        );
        $posts = new WP_Query($args);
        if ($posts->have_posts()): ?> 
<?php $test = $term->name; ?>

<?php $cat_name = get_the_category_by_ID(3); ?>
<?php if ($cat_name == $test): ?>
<?php while ($posts->have_posts()):
                    $posts->the_post(); ?>

<?php if (has_post_thumbnail())
                    { ?>
<?php the_post_thumbnail(); ?>
<?php
                    }
                    else
                    { ?>
<li><a href="<?php the_permalink() ?>"><?php the_field('name_product') ?></a></li>
<?php
                    } ?>
<?php the_excerpt(); ?>
<?php
                endwhile;
            endif; ?>
<?php
        endif ?>
<?php
    endforeach;

endforeach; ?>


Для вывода картинки на странице с постом использовал этот код.
<div class="product_sidebar_img">
							    <img class="products_img" src="<?php the_field('product-images')?>">
							<img src="<?php echo get_template_directory_uri();?>/img/shadow.jpg" alt="shadow">
						</div>
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 1
azerphoenix
@azerphoenix
Java Software Engineer
Здравствуйте!
1) Вы хотите вывести посты (тип записи = post) или вы выводите кастомный тип записи product?
В вопросе вы говорите, что хотите вывести посты, а выводите продукты
$post_type = 'product';
2) Тут какая-то ересь написана. Выделил жирным
$post_type = 'product';
$taxonomies = get_object_taxonomies(array(
'product' => $post_type
));

Скорее всего должно быть так:
$post_type = 'product';
$taxonomies = get_object_taxonomies('product');

Но проблема от этого не решится.
Если честно, то в целом довольно странный код... Какова ваша конечная цель? Как мне кажется, легче с нуля написать, чем разобрать весь этот код.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы