Wordpress показать список сообщений в выбранных пользователем категориях

Я пытаюсь создать систему, в которой пользователь проверяет категории, которые ему нравятся, и после нажатия кнопки "Отправить" появится список категорий и их сообщений. Категории будут теми, которые проверил пользователь. Я дошел до получения списка категорий из WordPress. Я также добавил кнопку отправки, и когда пользователь нажимает ее, появляется список с категориями. Проблема в том, что в каждой категории отображаются не отдельные сообщения, а все сообщения. Вот мой код:

<?php
                            // get all the categories from the database
                $cats = $postCategories;

                        // loop through the categries
                        foreach ($cats as $cat)
                        {
                            // setup the cateogory ID and Name
                                        $cat_name= get_cat_name($cat);
                            $cat_id= get_cat_id($cat);

                            // Make a header for the cateogry
                            echo "<h2>".$cat_name."</h2>";
                            // create a custom wordpress query

                          query_posts("cat=$cat_id&posts_per_page=100");
                            // start the wordpress loop!
                            if (have_posts()) : while (have_posts()) : the_post(); ?>

                                <?php // create our link now that the post is setup ?>

                                <a href="<?php the_permalink();?>"><?php the_title(); ?></a>
                                <?php echo '<hr/>'; ?>

                            <?php endwhile; endif; // done our wordpress loop. Will start again for each category ?>
                        <?php
                        } // done the foreach statement ?>

Переменная $postCategories является глобальной из functions.php:

Код Functions.php для этого:

function get_categories_list() {

    if ( isset( $_POST['category-submit'] ) && '1' == $_POST['category-submit'] ) {
        if($_POST['post_category'] == null){
            echo"list empty";
        }else {
            global $postCategories;
            $postCategories = $_POST['post_category'];
            echo count($postCategories);
        }
    } 

Я просто не вижу, где я допустил ошибку.

0 ответов

Другие вопросы по тегам