Поддержка Проблемы и решения Единые блоки для всех страниц

  • Здравствуйте, уважаемые!

    Очень прошу Вашей помощи вот в каком деле:
    У меня есть 28 страниц.
    На каждой страниц есть уникальные блоки, присущие только этой странице, но есть и повторяющиеся блоки. Они где-то чередуются с уникальными, где-то идут один за одним.

    Возник вопрос: могу ли я как-то вывести данные повторяющиеся блоки в отдельное место и выводить на страницах командой. При изменении одного повторяющегося блока — они меняются на всех страницах соответственно.

    Я сразу же подумал сделать записи (посты) этих блоков и вывести в нужном месте шорткодами, и в принципе получилось, но запись тогда выводится в начале контента, страницы, а не там где я вставил шорткод и в общей разметке страницы не участвует…

    Я, увы, не могу поместить эти блоки ни в хэдер, ни в футер, ни в сайдбар и пр. «фиксы», т.к., как я сказал, расположены они немного хаотично.

    Я использовал такой шорткод:

    function adding_posts_by_id($atts){
    	$post_id = 155;
    $queried_post = get_post($post_id);
    echo $queried_post->post_content;
    }
    add_shortcode( 'posts-by-id', 'adding_posts_by_id' );

    Подскажите, пожалуйста, уважаемые, как мне реализовать эту задумку, да в идеале так, чтобы не в functions.php сам html записи был, а так, чтобы из под админки их можно было без проблем править и видеть единый результат на всех страницах…

    Заранее премного благодарен!!

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • На каждой страниц есть уникальные блоки, присущие только этой странице, но есть и повторяющиеся блоки

    Подробней плз — что за «блоки»? Что содержат, где/как выводятся (непосредственно в конетнте, где попало или по какому алгоритму и тп?)

    Подробней плз — что за «блоки»? Что содержат, где/как выводятся (непосредственно в конетнте, где попало или по какому алгоритму и тп?)

    Каждая страница — это описание филиала. Соответственно, есть блоки с информацией имеющей отношение только к данному филиалу, и они уникальны, а есть блоки «общей информации». Содержат иконки с описанием. Общие преимущества компании и пр. информация. Блоки на всю ширину от 400px высотой — разные.

    Выводятся непосредственно в контенте — код всех страниц полностью самописный, но он везде одинаковый по сути. Меняется только контент филиала. Т.е.:

    <div class="filial_1">
    ...
    </div>
    <div class="obshiy_block">
    ...
    </div>
    .........

    Вот была бы это Joomla — вопросов не было бы. Создал модуль HTML — вывел в нужном месте на нужных страницах. Если нет такого места под него в шаблоне — создать не проблема. Вот тут сейчас так же надо бы…

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, denisco.pro

    Я использовал такой шорткод:
    function adding_posts_by_id($atts){
    $post_id = 155;
    $queried_post = get_post($post_id);
    echo $queried_post->post_content;
    }
    add_shortcode( ‘posts-by-id’, ‘adding_posts_by_id’ );

    А если заменить echo на return?

    function adding_posts_by_id($atts){
        $post_id = 155;
        $queried_post = get_post($post_id);
        return $queried_post->post_content;
    }

    А если заменить echo на return?

    function adding_posts_by_id($atts){
        $post_id = 155;
        $queried_post = get_post($post_id);
        return $queried_post->post_content;
    }

    denisco, спасибо большое!!! Все заработало, как надо!!

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Единые блоки для всех страниц» закрыта для новых ответов.