Плагин WordPress Posts In Page — добавляем Записи на любую статичную Страницу

Примечание: Этот текст может содержать некоторые партнерские ссылки, а это значит, что я зарабатываю небольшую комиссию без каких-либо дополнительных затрат с вашей стороны, если вы воспользуетесь этими ссылками. Спасибо за понимание и поддержку.

Довольно часто приходится читать на форумах и других источниках (том же Хабрахабре), что CMS WordPress — слишком примитивная система управления сайтом, и что на его движке нельзя создать ничего сложного, портального.

Косвенно, я согласен с некоторыми «писателями», но не со всем. Например, один из типичных вопросов новичков: Как добавить к статичной Странице вывод ленты с Записями?

Очень просто. Например, с помощью бесплатного плагина WordPress, который называется — Posts In Page. Я пишу — «с помощью плагина» — потому что знаю, что этот плагин — только один из вариантов добавления цикла Loop к статичной странице. Существуют и другие способы. Но вам, мне кажется, достаточно будет и такого плагина.

Его можно скачать в официальной Библиотеке WordPress, но там он — на английском языке. Ссылка на плагин Posts In Page в Библиотеке — http://wordpress.org/plugins/posts-in-page/

Можно взять у меня, т.к. я перевел Справку в этом плагине, а именно — как с помощью коротких кодов добавить вывод записей на статичной странице вашего сайта.

Я перевел на русский файл posts_in_page_help_view.php, который лежит в папке /assets плагина Posts In Page. Если в дальнейшем будете обновлять плагин, советую этот файл сохранить на компьютере и потом заменить его английскую версию через файловый менеджер вашего хостинга, или через FTP-программу.

Приведу несколько примеров автора плагина, взятых мной в Библиотеке, на странице Installation.

Установка плагина

Установка — стандартная.

После активации плагина найдите его страницу с Справкой в разделе Параметры.

Добавить записи на статичной странице вы можете двумя способами: с помощью коротких кодов и с помощью добавления функции PHP в файлах вашей активной темы WordPress.

Советую прочитать еще:  Визуальный построитель страниц - Visual Composer v.4.6.1

Примеры коротких кодов

    • [ic_add_posts] — Выводит все Записи вашего сайта на статичной странице. Без ограничений.
    • [ic_add_posts ids='1,2,3'] — Выведет три Записи с ID 1,2,3

Как определить ID Записи?

Способ первый: откройте страницу Записи. Наведите курсор на название записи. Слева внизу экрана (окна браузера смотрите длинную ссылку, в которой есть уникальный идентификатор (номер ID) этой записи:

9На скришоте — запись выделенная красным овалом, имеет ID — 116.

Способ второй: скачайте плагин — Reveal IDs. Установите и активируйте его. После активации у вас на страницах: Записи, Страницы, Рубрики и т.д. добавится в таблице справа колонка с списком уникальных номеров ID для каждого поля вашей таблицы сайта:

10

Остальные примеры вы можете найти в Справке, которую я перевел в плагине Posts In Page.

Можно использовать комбинированный шорткод, в котором применить несколько параметров вывода записей. Например:

  • [ic_add_posts category='rubrika-1' showposts='3'] — Вывод записей в количестве 3-х из рубрики 'rubrika-1'. Используется не имя рубрики, а ее ярлык. Не знаю, как будет если ярлык рубрики — на русском, не проверял.

11

  • [ic_add_posts showposts='6' post_type='testimonials' tax='testimonial-type' term='customer' order='ASC' template='my-posts-in-page-template.php'] — Вывод записей пользовательскиго типа 'testimonials' с таксономией 'customer' из файла вашей темы — my-posts-in-page-template.php

Другие примеры смотрите на официальной странице плагина в Библиотеке.

Как добавить короткий код с помощью функции PHP

Для этого используйте функцию:

< ?php echo do_shortcode("[shortcode]"); ? >

где — [shortcode] — созданный вами шорткод с помощью плагина Posts In Page.

Если материал вам понравился, нажмите или расскажите о нем друзьям!

Важно! Эта запись может содержать ссылки на плагины, которые к моменту вашего чтения и скачивания могут работать не корректно. Будьте внимательны.

32 Comments

  • · Edit

    Доброго времени суток!

    После установки плагина Posts in Page вместо «оставьте комментарий» появилось — «Leave a comment».

    После отключения плагина все возвращается к нормальному русскому шаблону. Подскажите, что сделать

    С ув. Андрей

    Ответить
    • Автор · Edit

      Скорее всего, в вашем плагине нет русской локализации. Плагин «перехватывает» создание формы комментариев и подставляет свой код.

      Откройте файл плагина: /posts-in-page/posts_loop_template.php, строка 31.

      Там мы найдете этот текст на английском.

      Ответить
  • · Edit

    Вот здесь у вас не те галочки стоят: [ic_add_posts category=’rubrika-1? showposts=’3?] из за этого когда копируешь не работает...

    А так благодарю за статью, очень и очень сильно мне помогло......

    И еще стоит добавить, что чтобы изменить вид матириалов, нужно перейти на страницу с плагинами, нажать редактировать, и отредактировать файл "posts-in-page/posts_loop_template.php "

    Ответить
  • · Edit

    Здравствуйте! Подскажите, я поставил плагин но у меня по разному отображается информация по записям, на главной она разделена по блокам(в виде отдельных белых квадратов), а где страницы уже она идет сплошным белым квадратом, точнее одним блоком и вот к примеру есть запись музыка она не показывает, только если щелкнуть по заголовку, а вот на главной показывает. Все посты посмотрел используют тег , а на страницах все записи в один этот тег записаны

    Ответить
  • Автор · Edit

    Кто мешает открыть код плагина, посмотреть как он выводит цикл записей и если нет там вывода миниатюры — добавить через функцию?

    Ответить
  • Автор · Edit

    Честно, не помню, умеет плагин выводить изображения или нет. По-моему, не умеет. Я не пользуюсь этим плагином и не могу однозначно ответить на ваш вопрос.

    Ответить
  • Здравствуйте.

    Столкнулся при использовании данного плагина с такой проблемой: изображения в записи не отображаются, а точнее просто вырезаются. При том на странице редактирования записи в админке изображение есть, перехожу на страницу отображения записей — там пусто, в вебтулзе просто нет тега img. Подскажите, в чем может быть дело? Где копать?

    p.s. пробовал ставить права на папку с картинками 777

    Ответить
  • Автор · Edit

    Видите, стоит подтолкнуть к решению и все ОК. А напиши сразу — поставили, спс и свалили дальше, так ничего и не поняв.

    Удачи в освоении системы)

    Ответить
    • Подскажите какой можно использовать плагин что бы пользователи могли отправлять мне видео и новости на сайт?что б они не сразу добавлялись а после проверки.заранее спасибо

      Ответить
      • Автор · Edit

        Этот плагин не предназначен для такой задачи.

        И вообще, подобная функция — дать писать на сайт посторонним — чревата огромными проблемами безопасности.

        Ответить
  • · Edit

    После получаса ковыряния в коде плагина, нашел решение: объявил переменную $more как глобальную (перед циклом WordPress). И присвоил ей значение «1» (это и есть игнорирование тега more).

    И все заработало как надо. 🙂

    Большое спасибо.

    Ответить
  • · Edit

    Здравствуйте

    Этот плагин полностью решает одну из моих задач, за одним исключением.

    Я оформляю записи с помощью тега .

    Плагин корректно отбирает нужные мне записи и выводит их анонсы (т.е. текст до тега ).

    А мне нужны записи целиком, словно этот тег не используется.

    Чтобы результатом работы плагина была «простыня» из отобранных текстов, причем тексты отображались бы целиком.

    Можно ли решить такую проблему в рамках данного плагина? И если нет — то может подскажете, в какую сторону копать?

    (Прошу только учесть, что я новичок, и сложные переустройства кода шаблонов могу не одолеть).

    Заранее благодарен за любой ответ.

    Ответить
    • Автор · Edit

      Дмитрий, спасибо за вопрос.

      Как мне вам ответить? На ваши слова: «А можно ли решить...» отвечу очень просто — не знаю, но догадываюсь.

      Скорее всего можно, если открыть файлы плагина, найти код автора, с помощью которого выводятся его анонсы, наверняка он написал код так, что выводятся только анонсы.

      Анонс — это функция the_excerpt ().

      Целиком — это функция the_content ().

      Дальше рассказывать не буду.

      Даже если вы новичок, но вам очень хочется получить свое решение — кто вам мешает немного изучить этот плагин и попытаться найти решение?

      Или найти того, кто знает, как изменить код плагина.

      Меня не надо — для меня это не интересно.

      Ответить
  • Автор · Edit

    Все правильно, потому что страница не понимает, что у вас на первой половине — записи, и перебрасывает вас обратно.

    Нельзя Страницу делать с разбивкой вывода Записей, только на одной Странице.

    Зачем вы усложняете себе жизнь?

    Почему не сделать так:

    Делаем копию файла archive.php, называем файл именем category-XX.php, где XX — ID нужной рубрики, и выводим отдельной лентой Записи из нужной рубрики.

    Думаю, вам надо сначала изучить иерархию шаблонов темы, а потом подумать, как создать нужный файл с выводом определенных записей — codex.wordpress.org/%D0%9...0%BD%D0%BE%D0%B2

    Ответить
  • · Edit

    Ну в том и дело что на главной у меня стандартный функционал разбивки работает, а на странице нету.

    Оно создает ссылку sait.ru/stranitsa/page/2 и при переходе по этому url перекидывает просто на первую страницу(

    Ответить
  • · Edit

    Как потом на той странице сделать постраничную разбивку? Плагины никакие работать не хотят, стандартная тоже не появляется(

    Только посты выводит, сколько их должно быть на одной странице

    Ответить
    • Автор · Edit

      А зачем? Ведь есть стандартный функционал вывода ленты записей, с постраничной разбивкой?

      У страниц всегда есть свой вариант разбивки на подстраницы, так как тип Страница — это не тип Записи.

      Чтобы страницу разбить на части, надо использовать тег nextpage ( с тегами так же, как тег more с угловыми скобками)

      Ответить
  • Автор · Edit

    Сергей, я перевел страницу с примерами.

    Посмотрите внимательно на все примеры и сделайте правильные выводы.

    А на счет что можно модернизировать в плагине, а что нельзя, вы свой вопрос задайте автору плагина.

    Ответить
  • · Edit

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

    Ответить
  • · Edit

    Добрый день, а подскажите можно использовать одновременно несколько шорткодов, например

    [ic_add_posts showposts='5'] — лимит вывода сообщений по количеству.

    +

    [ic_add_posts category='category-slug'] — Вывод Записей из определенной Рубрики. Используйте Ярлыки, а не имена рубрик! Можно использовать несколько Рубрик, например: category-1,category2, и т.д. (без пробелов).

    нужно сделать чтоб на главной выводились записи но не все а например 5 последних. Так можно сделать?? Спасибо.

    Ответить
    • Автор · Edit

      Нельзя.

      Вы внимательно читали обзор, видели примеры кода?

      Там были такие примеры как вы спрашиваете?

      Не было.

      Тогда зачем спрашивать?

      Или вы думаете, я спрятал в рукаве другие примеры?

      Если бы было можно то, о чем вы спросили, я бы написал.

      А во-вторых, ваш пример — не корректный по отношению к пониманию, как формируется короткий код и что знак плюс — это на доске в школе вы можете нарисовать,

      в функции PHP это все не так просто как в арифметике.

      Ответить

Добавить комментарий

Ваш email нигде не будет показан. Обязательные поля помечены *