• Доброго дня!

    На текущий момент на моём сайте wordpress используется плагин wp-recall для создания личного кабинета.

    Кроме того, у меня есть отдельный тип постов для партнёрских программ. Список данных постов выводится на отдельной странице affiliate-page.php, где содержится логика фильтра, а также сам вывод через WP_Query.

    Разметка и логика полной версии поста расположена в файле single-affiliate_post.php

    Итак, суть проблемы: мне необходимо вывести список постов и открывать полную версию поста внутри вкладки wp-recall. Содержимое вкладки определяется передаваемой функцией, которая должна возвращать некий контент. Я использовала
    get_template_part('affiliate-page')
    для вывода списка постов с фильтром, и всё отлично работает. Однако, теперь мне нужно выводить в той же вкладке полную версию поста по клику на миниатюру. В самих миниатюрах переход к полной версии осуществляется через the_permalink();
    Я пробовала выводить через
    get_the_content( null, false, $post_id );
    Но, к сожалению, это ни к чему не привело.

    Каким образом я могу выводить полную версию постов внутри вкладки? В какую сторону дальше копать?
    Буду очень благодарна за ответ

Просмотр 8 ответов — с 1 по 8 (всего 8)
  • Очень подробное описание, но все равно до конца непонятно:

    1. Но, к сожалению, это ни к чему не привело. -что это значит?
    2. По какой схеме вы пытаетесь вывести в той же вкладке полную версию: с перезагрузкой страницы? с подгрузкой через ajax? с показом скрытого при загрузке?

    Для начала, моей целью было хотя бы просто написать функцию, которая бы выводила во вкладку контент поста по указанному id.

    Например, вот так:
    $post_id = 95;
    $content = get_the_content( null, false, $post_id );

    Либо через фильтр:
    $post_id = 95;
    $post = get_post( $post_id );
    $content = apply_filters(‘the_content’, $post->post_content);

    В обоих вариантах не выводилось ничего, а переменная $content была null.

    Ну… Выводиться, судя по вашему коду, ничего и не должно… А вы уверены, что существует пост с указанным ID? … Что у него есть контент….

    Да, пост с данным id существует. Более того, другие посты, с другим id данный код тоже не выводит.

    Ну и да, фулл код выглядит так

    //вывод поста
    function itm_render_affiliate_selected_post() {
    
        $post_id = 95;
    
        $content = get_the_content( null, false, $post_id );
    
        var_dump($content);
    
        return $content;
    
    }
    
    //вкладка для лк
    function itm_add_tab() {
    
        $tab_data = array(
    
            'id' => 'itm_affiliate_tab',
    
            'name' => 'Партнёрские программы',
    
            'public' => 1,
    
            'icon' => 'fa-commenting',
    
            'output' => 'menu',
    
            'content' => array(
    
                array (
    
                    'callback' => array(
    
                        'name' => 'itm_render_affiliate_selected_post',
    
                    ),
    
                ),
    
            ),
    
        );
    
        rcl_tab($tab_data);
    
    }
    
    add_action('init','itm_add_tab');

    К сожалению, я уже даже не особо представляю, в какую сторону искать. Буду очень благодарна, кто-нибудь предложит конструктивный вариант решения <3

    Если вам нужно в одной вкладке показывать и список и отдельную запись, то нужно делать через ajax. Повесьте событие click на картинку, добавите атрибут data-id=»» для картинки или контейнера поста в списке. Результат ajax можно подгружать в контейнер всего списка, заменяя его, в контейнер текущего поста в списке или подгружать ниже текущего поста.

    Я бы для того, чтобы разобраться в причинах, навтыкал бы везде (в том числе в cms, вот здесь <var>WP_Post::get_instance()</var>) контрольных выводов. Или заменил бы запрос на get_posts… или вообще на new WP_Query — с целью посмотреть, что там с аргументами запроса происходит.

    у вас кстати вот здесь:

    var_dump($content);
    

    хоть какой-то вывод есть? хоть букву на экран выводит? или может не вызывается ваш

    
    itm_render_affiliate_selected_post
Просмотр 8 ответов — с 1 по 8 (всего 8)
  • Тема «Вывод контента поста внутри wp-recall?» закрыта для новых ответов.