Для чего нужны шаблоны (templates)? Если вывод информации вас не устраивает, или вам надо добавить какой-то свой текст, или оформить вывод по своему - вы можете видоизменить шаблон на своё усмотрение.
WP-Recall представляет нам мощный инструмент под названием пользовательские шаблоны. Кто смотрел структуру WP-Recall и многих дополнений заметили папку templates
, внутри которой есть php файлы. Эти файлы и есть шаблоны.
Работать с ними легко - достаточно скопировать нужный шаблон в папку по пути:
/wp-content/wp-recall/templates/
и изменить его под себя оттуда. Скопированный в эту папку шаблон, автоматически будет подхватываться плагином, а сделанные вами изменения не затрутся при обновлении плагина или дополнения.
Рассмотрим список шаблонов WP-Recall:
/wp-content/plugins/wp-recall/templates/
add-on-card.php - карточка аддона со страницы "репозиторий" из админки
chart.php -
form-register.php - форма регистрации - подробнее о шаблоне
form-remember.php - форма "напомнить пароль" - подробнее о шаблоне
form-sign.php - форма входа - подробнее о шаблоне
recallbar.php - верхняя панель - "реколлбар" - подробнее о шаблоне
user-avatars.php - шаблон юзера аватар и рейтинг
user-mini.php - шаблон юзера mini (только аватарка)
user-rows.php - шаблон списка юзера (аватар, рейтинг, описание) - подробнее о шаблоне
user-cards.php - шаблон карточки юзера (аватар, рейтинг, количество комментариев и публикаций)
/wp-content/plugins/wp-recall/add-on/commerce/templates/
cart.php - Шаблон для отображения содержимого шорткода basket - полной корзины пользователя
cart-mini.php - Шаблон для отображения содержимого шорткода minibasket - малой корзины пользователя
cart-button-form.php - Шаблон кнопки "В корзину" - у товара (список товаров)
order.php - Шаблон для отображения содержимого отдельного заказа, также используется при формировании письма-уведомления о заказе и его содержимом на почту пользователя.
orders-history.php - Шаблон для отображения содержимого истории заказов пользователя
product-list.php - Шаблон для отображения содержимого шорткода productslist с указанием атрибута type='list'
product-slab.php - Шаблон для отображения содержимого шорткода productslist с указанием атрибута type='slab', а также при выводе рекомендуемых товаров
/wp-content/plugins/wp-recall/add-on/feed/templates/
feed-post.php - шаблон страницы фида
/wp-content/plugins/wp-recall/add-on/groups/templates/
group-list.php - шаблон списка всех групп
group-posts.php - шаблон вывода одиночной публикации группы (в списке публикаций группы)
single-group.php - шаблон отдельной группы
/wp-content/plugins/wp-recall/add-on/prime-forum/themes/prime-first/templates/
pfm-author.php - шаблон архива публикация автора на форуме (Например: ваш-сайт/главная-форума/?pfm-author=1)
pfm-footer.php - шаблон подвала всего форума
pfm-forum.php - шаблон списка форумов
pfm-group.php - шаблон форумных групп
pfm-header.php - шаблон шапки форума (там где навигация и поиск)
pfm-home.php - шаблон главной страницы форума
pfm-search.php - шаблон страницы поиска по форуму
pfm-single-forum.php - шаблон пункта из списка форумов и дочерних форумов
pfm-single-group.php - шаблон пункта групп форума
pfm-single-post.php - шаблон одиночной записи в теме на форуме
pfm-single-topic.php - шаблон пункта темы форума
pfm-topic.php - шаблон отдельной темы форума
/wp-content/plugins/wp-recall/add-on/publicpost/templates/
posts-list.php - шаблон "Опубликованные Записи". Список записей пользователя в профиле
/wp-content/plugins/wp-recall/add-on/rating-system/templates/
rating-comment.php - Шаблон рейтинга комментариев
rating-post.php - Шаблон рейтинга записи
/wp-content/plugins/wp-recall/add-on/theme-grace/templates/
и
/wp-content/plugins/wp-recall/add-on/theme-sunshine/templates/
office.php - шаблон личного кабинета
Шаблоны сторонних дополнений WP-Recall:
/wp-content/wp-recall/add-on/bookmarks/templates/
bookmarks.php - шаблон отдельной позиции закладки
/wp-content/wp-recall/add-on/notification/templates/
notifications.php - шаблон одного события уведомления
Небольшой лайфхак:
Если вы видите внутри папки templates
шаблон вида name-list.php но в атрибутах шорткода надо указать template="list"
- то это хороший знак (видно что name - от начала имени файла опускается) - вы можете создать сколь угодно шаблонов name-other.php и name-custom.php (other и custom - не обязательно эти названия - любые) и выводить их указав в атрибутах шорткода template="other"
или template="custom"
. Это позволит вам расширить представленные шаблоны своими наборами.
Как пример: шорткод userlist - там всего 4-ре шаблона, но вы можете создать любые свои, например: user-new.php и вписать в атрибут шорткода template="new"
его подключение
Для продвинутого использования реколл шаблонов Андрей подготовил статью: Шаблоны WP-Recall — практика использования. Там вы узнаете как подключить свой шаблон, как подменить существующий шаблон и какие хуки (action) срабатывают до и после подключения шаблона.
upd: 2018-02-02 информация по шаблонам актуальна для WP-Recall версии 16.10
Может подскажите как в форме публикации изменить разметку так, чтобы избавиться от таблиц?
Никак. Полностью надо менять верстку.
Очень жаль.
В конце статьи добавил лайфхак при работе с шаблонами - так вы можете создавать свои новые шаблоны.
Доброго времени суток, Отшельник.
Нужна твоя помощь по лайфхаку.
Суть такова, есть магазин с выводом списка по шорткоду:
[ productlist template='plan' cat='2' orderby ='ID' order='ASC' ]
Я правильно понимаю, что должен быть выведен кастомный шаблон по пути wp-content/wp-recall/templates/form-plan.php ?
Если "да" то в чем может быть проблема с его выводом? ...ибо он просто не выводится.
P.S. плагин, адоны и т.д. - все последней версии.
P.S. Выводится в базовом шаблоне "products-list".
wp-content/wp-recall/templates/product-plan.php
Сори, ошибка в посте. Реальное имя файла:
\sky-content\wp-recall\templates\product-plan.php
Привет. У productlist https://codeseller.ru/api-rcl/productlist/ нет атрибута template. Есть type. Если смотреть на аналогию вывода товара product-list.php, то вам нужно файл назвать product-plan.php и выводить [ productlist type='plan' ]
Сенкью Отшельник - помогло 🙂
как можно скачать шаблон product-slab.php
его не надо скачивать, он идет в комплекте с плагином
Смотрите в описании указан путь wp-content/plugins/wp-recall/add-on/magazin/templates/ - его и берите по этому пути
Спасибо за статью!
Здравствуйте. А если я хочу отредактировать файл со стилями, например, wp-recall\add-on\publicpost\style.css и чтобы при обновлении плагина стиль сохранился, что нужно сделать? Или это к этой теме не относится?
Помнится что стили нельзя копировать.
Шаблоны реколл - это не стили, а php файлы (если не оговорено иное). И то не все. Все указал в этой заметке.
Теперь по стилям - править стили внутри плагина или дополнений нельзя. Стили надо переопределять. Вписывая в файл style.css вашего вп шаблона или в кастомизаторе шаблона - если он поддерживает кастомные стили. Или в специально подключенном css файле.
По весу и как правильно перебить стили я оставил заметку тут https://codeseller.ru/forum/product-13876/vidoizmenenie-shablona/#p24854
Для плагина WP-Recall я выпускал специальное дополнение https://codeseller.ru/products/alpha-fixator/ - почитайте что оно умеет.
Информация по шаблонам актуальна для WP-Recall версии 16.10
И дополнил список шаблонов PrimeForum
Здравствуйте, а как то можно поступить так же с файлами в папке например wp-content/plugins/wp-recall/add-on/publicpost/classes. Так же скопировать, что бы при обновлениях не сбрасывались изменения?
Здравствуйте.
Нет.
Классы - это ядро. А лезть туда и изменять что-то - нельзя. Или вы отлично знаете что там и для чего?
классы - черный ящик - пришел набор данных в него - на выходе получили что-то. И классы постоянно дорабатываются и улучшаются. Пример вам - история изменений плагина на гите. Поэтому вы, изменив класс, просто убиваете все возможности вам обновиться. + потом у вас возникнет проблема и вы придете на форум - а окажется что ваши неумелые правки в классе привели к поломке. При изменении ядра - вам будет отказано в техподдержке
Понял,Благодарю за ответ.
Доброго дня! Подскажите, пожалуйста, wp-recall выводит окно с двумя вкладками сразу - на вход и регистрацию. А как вывести что-то одно?
Здравствуйте. Создавайте новую тему на форуме поддержки https://codeseller.ru/forum/
Не стоит писать в этой теме не по теме
Добрый, взял фаил add-on>theme-sunshine>templates>office.php
и перетащил в templates, вроде так по доке, а он все еще обращается к фаилу по первому пути
я скопировал и все подцепилось откуда и должно.
Проблемы с кастомизацией решаем на форуме https://codeseller.ru/forum/ в соответствующей ветке