Кулинарные рецепты для InstantCMS v1.10.3

+76
5.3K

ВНИМАНИЕ! Компонент снят с продажи!

Предлагаю вашему вниманию компонент Кулинарные рецепты.
Сделан на основе Универсального каталога.

Описание

= Стандартные возможности Универсального каталога.
+ Новые возможности.
--------------------------------------------------------------------------
+ Сделана микроразметка.

+ Рецепты могут добавлять пользователи и гости.

+ Пользователи и гости могут выбрать любую категорию для добавления рецепта. Нельзя добавить запись в категорию, если у нее есть подкатегории.

= Премодерация добавляемых рецептов. Добавлять без модерации может только админ.

+ Отдельно загружается 1 основное фото (готового блюда) и дополнительные фото пошагового приготовления.

+ Для дополнительных фото автоматически создаются папки вида 201310 (год и месяц). Если много рецептов, все фото не будут сваливаться в одну кучу.

+ Для поля основные ингредиенты подключено автозаполнение. В базе более 800 таких ингредиентов. Эти слова добавляются для meta name="keywords".

+ Поля Время приготовления и Количество порций заполняются "ползунком" работающем на JQuery.

= Модуль Новые рецепты (по дате добавления).

= Модуль Случайные рецепты (по дате добавления).

+ Модуль Лучшие рецепты (по рейтингу).

+ Модуль Популярные рецепты (по просмотрам).

+ При заходе в категорию видны записи, которые входят в подкатегории.

+ При просмотре рецепта выводится автор, его аватар, дата добавления и количество просмотров.

= Если рецепт добавил гость, то будет показывается Автор рецепта: Гость, но в ленте событий будет выводится сообщение что рецепт добавил админ (если рецепт одобрен).

+ При просмотре рецепта выводится его категория и подкатегория.

+ В БД добавлены новые поля:
Время приготовления, например: 15 мин.
Количество порций, например: 2
Особый случай, например: День рождения. Поле кликабельно как тег.
Национальная кухня, например: Русская. Поле кликабельно как тег.
Метод приготовления, например: Мультиварка. Поле кликабельно как тег.
Ингредиенты и их количество. Описание ниже.
Пошаговое описание. Описание ниже.

+ Ингредиенты и их количество добавляются в одном текстовом поле textarea. Каждый с новой строки. Изначально я сделал как на других кулинарных сайтах, где для одного ингредиента нужно заполнять несколько полей (название, примечание, количество, единица измерения). Так добавлять рецепты очень геморройно!

+ По этой-же причине сделал Пошаговое описание тоже в одном текстовое поле textarea. Каждый шаг с новой строки. Автоматически каждому шагу присваивается цифра html тэгом <ol>. Цифры прописаны в css.
Не вижу ничего страшного в том, что шаг не привязан к фото. Нужно быть фееричным дебилом чтобы не понять какое фото относится к какому шагу.

= При добавлении рецепта нужно заполнить поле Краткое описание блюда. Это описание будет для meta name="description".

Вопрос — Ответ

— На версии 1.10.2 и ниже будет работать?
— Нет. Но если будет достаточно желающих — переделаю.

— Компонент платный?
Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст


— Что за цена такая хитрая?
— Почему именно такая, скажу только покупателю. joke

— В складчину можно купить?
— Нет. При такой цене складчину не приветствую.

— Код открыт?
— Да, код открыт.

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

— Как установить?
— Установка стандартная, через файл install.php, но еще нужно будет внести правки в файлы движка.

— Инструкция по установке есть?
— Да, конечно.

— Если возникнут сложности с установкой, можно ли ждать помощи?
— Да, без проблем.

— Будут ли обновления компонента для новых версий InstantCMS?
— Возможно, но не обещаю. Все зависит от изменения кода новых версий. Обещаю только исправление найденных багов. Это касается первой линейки движка. В любом случае, для версии InstantCMS 2.0 и выше бесплатного обновления не будет.

— На скольких доменах можно использовать компонент?
— Только на одном. Для каждого домена отдельная оплата.

— А где демо?
Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст


///////////////////////////////////////////////////////////////////////////////////////////////////

Обновление от 22.10.2013

= Исправлен баг, когда Гость мог редактировать рецепты добавленные другими Гостями.

+ Сделан плагин, который добавляет вкладку "Рецепты" в профиле пользователя.
Установка стандартная. Главная -> Плагины -> Установить плагины. На выбор два вида дизана — Галерея или Список (в демо Галерея).

= Исправлен баг с рейтингом. Не записывалось значение рейтинга в таблицу items.
Баг изначально в InstantCMS. Можно убедиться на Универсальном каталоге.

= Исправлен баг с добавлением рецепта.
Если заполнить некоторые поля, НЕ ввести "Название рецепта" и нажать кнопку добавить, выдаст ошибку.
При этом заполненные до этого поля очистятся. Баг изначально в InstantCMS. Можно убедиться на Универсальном каталоге.

+ Теперь, если зайти в категорию, админ видит рецепты, которые находятся на модерации (если такие рецепты есть).

Добавлено в описание:
+ Для дополнительных фото автоматически создаются папки вида 201310 (год и месяц). Если много рецептов, все фото не будут сваливаться в одну кучу.
Это было сделано изначально, но забыл об этом написать.
--------------------------------------------------------------------------------------------------
Ближайшие планы:
1. Вынести в админку добавление/редактирование/удаление ингредиентов для поля "Основные ингредиенты".
2. Вынести в админку добавление/редактирование/удаление списка для поля "Национальная кухня".
3. Вынести в админку добавление/редактирование/удаление списка для поля "Особый случай".
4. Вынести в админку добавление/редактирование/удаление списка для поля "Метод приготовления".
5. Вынести в админку настройку обязательных полей при добавлении рецепта.
6. Вынести в админку настройку показывать капчу для гостей или нет.
5. Вынести в админку настройку количества колонок в Категориях. Делать для каждой категории не буду. Только общее значение.
6. Добавить ссылку "Удалить" рядом со ссылкой "Редактировать".


///////////////////////////////////////////////////////////////////////////////////////////////////

Обновление от 23.10.2013

+ Все пункты "Ближайшие планы" выполнены.

= Исправлен баг с настройками. Настройки не сохранялись.
Баг изначально в InstantCMS. Можно убедиться на Универсальном каталоге.

= Исправлен баг, когда Гость мог удалить рецепты добавленные другими Гостями.
0
Endroid Endroid 8 лет назад #
Микроразметка сделана? Микроразметка "Рецепты"
0
Александр I Александр I 8 лет назад #
Да, сделана. Можно посмотреть код страницы.
0
Андрей Андрей 8 лет назад #
Качественно сделано! а рейтинг рецептов будет?
0
Андрей Андрей 8 лет назад #
и сколько будет стоить готовый сайт с заточенным дизайном?
0
Annette Annette 8 лет назад #
Блин, какая годная штука. Хочу такую на свой сайт. Мне сейчас нужна для версии 1.10.2 ((((
0
Annette Annette 8 лет назад #
Еще бы хотелось, чтобы из этого компонента можно было выводить на главную модуль что-то вроде "рецепт дня" и рецепты в рандомном порядке отображались... Блин, сделайте мне для 1.10.2 (но правда, как мой шаблон обновят до 1.10.3, мы планируем движок тоже обновить, так что мне и для 1.10.3 понадобится)
0
Владимир Савенко ✝️ Владимир Савенко ✝️ 8 лет назад #
Добавил в закладки, т.к. у меня есть портальчик с рецептами , поднял на УК, пока народ устраивает, как народ захочет большего, так прикупим :)
P.S. Кстати дизайн на демо - симпатичный smile
0
Андрей Андрей 8 лет назад #
я так понимаю, там идут 3 модуля в комплекте "свежие" "популярные" "лучшие"
и чем лучшие от популярных отличаются...

можно как то поподробней?

заранее благодарю
0
Александр I Александр I 8 лет назад #
= Модуль Новые рецепты (по дате добавления).

= Модуль Случайные рецепты (по дате добавления).

+ Модуль Лучшие рецепты (по рейтингу).

+ Модуль Популярные рецепты (по просмотрам).
0
Андрей Андрей 8 лет назад #
и админку поюзать хотелось бы, чтобы понять внутреннюю организацию
0
Александр I Александр I 8 лет назад #
Админка ничем не отличается от админки Универсального каталога.
0
Sonat Sonat 8 лет назад #
Гостю доступно редактирование чужого (вероятно тоже гостя) рецепта
Вот эти рецепты оставил не я, но я могу их редактировать.
""

Спойлер
0
Александр I Александр I 8 лет назад #
Странно...
Эти рецепты находятся по ссылкам
Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст

и
Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст

Захожу как админ - вижу эти рецепты и могу их модерировать.
Захожу как гость - не вижу эти рецепты, т.к. перекидывает в категорию. Редактирование не возможно.
+1
Александр I Александр I 8 лет назад #
Баг подтверждается. Исправил.
0
Александр I Александр I 8 лет назад #
Редактирование не возможно.
P.S. Ссылки тоже уберу.
+2
AtlantisWeb AtlantisWeb 8 лет назад #
Интересно, на в сообществе вроде бы уже было пару компонентов на эту тему, но выбор среди многих всегда интересен )
Год назад когда было свободное время начинал делать для себя свой но упор делал на пошаговое добавление
т.е. изначально ставятся общие фото блюда с ингридиентами и описанием, а потом пошагово выводится фото и описание процесса приготовления. К сожелению по причине занятости так и не доделал, но считаю что такой вывод более удобен к понимаю чем просто описание и куча фото.

Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст
0
Александр I Александр I 8 лет назад #
ФОРС МАЖОР!
Отлучусь примерно на 5-6 часов. СРОЧНО нужно ехать загород.
Всем, кто оплатил, архивы отправил.
0
reload reload 8 лет назад #
AtlantisWeb:
И еще нюанс
Александр:
СРОЧНО нужно ехать загород
оперативненько laugh

это же
0
Александр I Александр I 8 лет назад #
оперативненько
Срочная поездка с этим никак не была связана. joke
+1
WALTERZ WALTERZ 8 лет назад #
Под 1.9 инстант имеется версия?
0
Александр I Александр I 8 лет назад #
Нет. Делать для версии 1.9 не планирую.
0
Майкл Майкл 8 лет назад #
Цена: 662 руб. какая то не ровненька)
Если не секрет, то из каких соображений исходили?
0
Майкл Майкл 8 лет назад #
Упс, вычитал, оказывается секрет)
+1
xxuuu xxuuu 8 лет назад #
Приобрету для 1.10.1
0
wportal wportal 8 лет назад #
возможно тоже подпишусь. Правда блог у меня украинский, но интересно.
0
Александр I Александр I 8 лет назад #
Правда блог у меня украинский
Все используемые фразы вынесены в папку с файлами languages.
0
Александр I Александр I 8 лет назад #
Чуть позже буду делать для версий 1.10.1 и 1.10.2
+1
Олег Васильевич я Олег Васильевич я 8 лет назад #
Будет алмину занятие на всю оставшуюся жизнь, судя по "обязательности" заполнения полей, "требовательной" каптче...
А так, ничё - функционал добротно расписан laugh
0
Олег Васильевич я Олег Васильевич я 8 лет назад #
Да, минусую "жёстко", так как идея клёвая и работу жалко - пропадёт.
Александр, удачи!
0
Dost Dost 8 лет назад #
Минимум пользователей будет на халяву заполнять контентом, а остальные регулируются рублем. Капча нафиг не нужна, мало кто будет спамить без публикации. А для пользователя такое решение удобно.

Вот импорт Excel от каталога оставить — было бы круто.
0
Александр I Александр I 8 лет назад #
В обновлении капчу все-же поставлю.
Импорт Excel - а с картинками как быть? Считаю что импорт из Excel для кулинарных рецептов не то пальто.
0
Dost Dost 8 лет назад #
В обновлении капчу все-же поставлю.
Надеюсь ее легко можно будет удалить)

Ну я не знаю как там урлы формируются, но названия картинок пишутся в базу? А картинки грузятся в папку.
0
Александр I Александр I 8 лет назад #
Надеюсь ее легко можно будет удалить)
Отключить в адмике.
+2
Олег Васильевич я Олег Васильевич я 8 лет назад #
Заглянул случайно в демку. А Алексдр таки молодец! Обязательныность заполнения полей уже присутствует, что в корне меняет дело.
0
Александр I Александр I 8 лет назад #
Добавлю, обязательные поля настраиваются в админке. smile
0
Александр I Александр I 8 лет назад #
Всем покупателям отправил обновленную инструкцию.
0
Dost Dost 8 лет назад #
Не плохо бы рядом с кнопкой "редактировать" сделать кнопку "удалить" рецепт. В админке искать крайне неудобно.
0
AndroS AndroS 8 лет назад #
Только удаление должно быть с подтверждением через модальное окно, иначе есть риск неудачно "промахнутся"
0
Александр I Александр I 8 лет назад #
Спасибо, учту.
0
Александр I Александр I 8 лет назад #
В следующем обновлении сделаю.
0
AndroS AndroS 8 лет назад #
Александр, как приобрести? Хотелось бы Яндексами, по возможности...
0
Александр I Александр I 8 лет назад #
Напишите в личку.
+1
EXID EXID 8 лет назад #
Отлично!
Понадобится - возьму!
0
EXID EXID 8 лет назад #
Компонент будет развиваться под вторую ветку системы?
0
Александр I Александр I 8 лет назад #
- Будут ли обновления компонента для новых версий InstantCMS?
- Возможно, но не обещаю. Все зависит от изменения кода новых версий. Обещаю только исправление найденных багов. Это касается первой линейки движка. В любом случае, для версии InstantCMS 2.0 и выше бесплатного обновления не будет.
EXID, для второй ветки нужно будет писать компонент с нуля. Когда выйдет релиз, тогда будет видно.
0
RooKee RooKee 8 лет назад #
сделайте чпу нормальное для категорий и рецептов. тогда готов купить.
+2
Александр I Александр I 8 лет назад #
Будете готовы купить - покупайте.
Хотелки ПОКУПАТЕЛЕЙ, по возможности, делаю бесплатно.
+2
miha7456 miha7456 8 лет назад #
Хочу купить для 1.10.1
+1
Петр Петр 8 лет назад #
0
SEOrigin SEOrigin 8 лет назад #
Ссылка неправильная. Вот правильная - http://forum.searchengines.ru/showthread.php?t=821953
0
Александр I Александр I 8 лет назад #
Я в курсе. Есть договоренность.
0
Erwin Erwin 8 лет назад #
Хотелось бы узнать, а доработка будет по данном компоненту?
+1
Dost Dost 8 лет назад #
Никто не делал доработку компонента к карте сайта? У меня что то не получилось.
+2
Александр I Александр I 8 лет назад #

"Кулинарные рецепты" на карте сайта

1. Создайте файл ../components/sitemap/sm_components/sm_cooking.php со следующим содержимым:
Код PHP:
  1. <?php
  2. if(!defined('VALID_CMS')) { die('ACCESS DENIED'); }
  3. /******************************************************************************/
  4. // Карта Сайта v2.1 //
  5. // Разработка Компонентов, Плагинов и Модулей для Instant CMS: //
  6. /******************************************************************************/
  7. class cooking_map extends comMaps{
  8. public $title = "Кулинарные рецепты";
  9. public $link = "cooking";
  10. public function __construct() {
  11. $this->inDB = cmsDatabase::getInstance();
  12. $today = date("Y-m-d H:i:s");
  13. $this->total = $this->inDB->rows_count("cms_cooking_items", "published = 1 AND on_moderate = 0");
  14. $this->total = $this->total + $this->inDB->rows_count("cms_cooking_cats", "published = 1");
  15. }
  16. public function FillMapsArray($html=FALSE){
  17. $this->map_start();
  18. if (!$this->generateMap and !$html){ return FALSE; }
  19. $cats = $this->getCategoryTree("cms_cooking_cats", $this->host . "/cooking", TRUE);
  20. foreach ($cats as $cat){
  21. if ($cat['id']==1000){
  22. $cat['title'] = "Главная страница Кулинарных рецептов";
  23. $cat['seolink'] = $this->host . "/cooking";
  24. }
  25. if ($this->generateMap){ $this->set_map_url(array($cat['seolink'], "daily", "0.9")); }
  26. if ($html){ $this->set_html_cat($cat['title'], $cat['seolink'], ($cat['NSLevel']-1)*20); }
  27. $sql = "SELECT id, pubdate, title FROM cms_cooking_items WHERE category_id = '".$cat['id']."' AND published = 1";
  28. $result = $this->inDB->query($sql);
  29. if ($html){ $this->set_html_item_start(); }
  30. while($item = $this->inDB->fetch_assoc($result)){
  31. $item['pubdate'] = strtotime($item['pubdate']);
  32. if ($this->generateMap){
  33. $this->set_map_url(array(
  34. $this->host . "/cooking/item" . $item['id'] . ".html",
  35. $item['pubdate'] >= strtotime("-1 week") ? "daily" : "weekly",
  36. $item['pubdate'] >= strtotime("-1 week") ? "0.9" : "0.8",
  37. date("Y-m-d", $item['pubdate'])
  38. ));
  39. }
  40. if ($html){ $this->set_html_item($item['title'], $this->host . "/cooking/item" . $item['id'] . ".html"); }
  41. }
  42. if ($html){ $this->set_html_item_end(); }
  43. }
  44. }
  45. public function user_map_start(){ return FALSE; }
  46. public function user_re_map_start(){ return FALSE; }
  47. public function user_set_map_url($item){ return FALSE; }
  48. public function user_map_end(){ return FALSE; }
  49. public function user_genMapsList(){ return FALSE; }
  50. }
  51. ?>
2. Зайдите в админку -> Карта сайта. Вы увидите Генерирование карты для "Кулинарные рецепты": - отметьте "Разрешено" и нажмите "Сохранить".
3. Перейдите по адресу http://ваш_сайт/sitemap
4. Наслаждайтесь.
0
Андрей Андрей 7 лет назад #
Будет обновление для 10.4?
0
YMaverik YMaverik 7 лет назад #
демо не работает, и для версии 1.10.4. есть?
0
YMaverik YMaverik 7 лет назад #
демо не работает, и для версии 1.10.4. есть?
0
YMaverik YMaverik 7 лет назад #
Сорри, не увидел что продажа закрыта

Еще от автора

СтопСпам для InstantCMS первой версии
Спамеры задолбали! В теме Спамеры на сайтах Instantcms проблему обсосали на сто рядов. Очень классное решение - подтверждение регистрации по СМС.
Модуль ТОПы пользователей
Раньше модуль был бесплатный и судя по комментариям популярным. Т.к. для новых версий его постоянно приходится переделывать, модуль стал платным.
Модуль ТОПы пользователей. Бесплатный
Написать модуль ТОПы пользователей натолкнул пост на форуме ТОП комментаторов.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.