Гастроэнтерологический центр Уфимцева К.А. +7(351)222-40-22

Шоткод свободного времени

Шоткод свободного времени2018-06-21T16:58:25+00:00
Файл csv

2c227c28-6ea5-11e8-0094-525400842091,Дарджания Нана Вахтанговна,»педиатр, врач-гастроэнтеролог детский»,000000002,17-00,13.06.2018,10%
2c434278-6ea5-11e8-0094-525400842091,Дарджания Нана Вахтанговна,»педиатр, врач-гастроэнтеролог детский»,000000002,18-00,13.06.2018,10%
2ce25b74-6ea5-11e8-0094-525400842091,Сулимова Елена Викторовна,»педиатр»,000000017,17-30,13.06.2018,10%

Поля файла
  1. Уникальный id предложения. На сайте он используется в
    • html для формирования формы записи по каждому предложению: чтобы форма была уникальной для возможности свернуть/развернуть на экране по id элемента через чекбокс.
    • Для записи на прием с сайта, т.к. этот id записывается в файл при записи из формы (это я накодил сам).
  2. ФИО врача. Сейчас оно нужно для двух целей:
    1. Вывести в ГП ссылку на страницу врача
    2. Разместить ФИО в самом горящем предложении.
      Поиск врача на сайте: нужно взять ФИО, то что идет после «Врач: » найти пользователя в пользователях из группы «Сотрудники»
  3. Направление услуг.
    Раньше мы брали направление на странице врача, сейчас этот алгоритм нужно убрать, потому что врач может оказывать услуги по разным направлениям, а нам надо знать точное направление публикуемого ГП, т.е. теперь в самом ГП нужно вывести вот это значение.
  4. Код услуги.
    Код, по которому будет определяться где будет выводиться шорткод на страницах в кастомных типах выбранных далее в параметрах. В постах есть доп поле koduslugi_gp, по этому полю нужно найти пост, в котором и  будет выводиться данное ГП.
    Если пост с кодом на сайте не найден  содержащийся в файле, то необходимо написать письмо на адрес пользователя с id 1, в письме написать: «код услуги ХХХХ для ГП на сайте не найден.
  5. Время — публикуется в ГП
  6. Дата — публикуется в ГП
  7. Скидка — публикуется в ГП

Параметры

  • max_uslugi — максимальное количество направлений услуг, которые нужно вывести, по значению поля «Код услуги»);
  • max_gp_uslugi — максимальное количество выводимых ГП по каждому направлению;
  • max_gp_user — максимальное количество выводимых ГП для одного врача в одном направлении (в файле врача может не быть, тогда этот параметр не должен учитываться);
  • cpt — CPT из которых брать информацию, через запятую (service, napravlenie)
  • place  —  в зависимости от места вывода будет разная выборка
    • пусто — не влияет, выводить все ГП
    • current_author — выводить ГП, если  шорткод выводится на странице врача, который указан в ГП, а сами ГП вывести только те, в которых указан данный врач.
    • current_post — выводить ГП, если значение поля «Код услуги» koduslugi_gp у поста, на котором выводится шорткод  равно значению из файла.
  • header_text
    • Значение заголовка шорткода
  • uslugi_group
    • yes — вывести горящие предложения сгруппированные по услугам (т.е. начала выводим заголовок «Гастроэнтерология». затем  ГП1 по гастро, ГП2 по гастро…, потом опять заголовок «Терапия» и  далее ГП по терапии)
    • no — без группировки по услугам
  • username
    • yes — выводить имя сотрудника
    • no — не выводить имя сотрудника
  • uslugi_gp_name
    • yes — выводить наименование услуги из файла
    • no — не выводить

Выборка

  • Сгруппировать ГП по направлению услуги (один врач может разные услуги оказывать) согласно
    • Значению код услуги из файла;
    • Параметру max_uslugi;
    • Параметру cpt;
  • Выбрать ГП согласно параметрам:
    • max_uslugi
    • max_gp_uslugi
    • max_gp_user
  • Ели на сайте не найден пост, у которого доп поле «Код» услуги совпадает с значением в файле, это влияет только на то, что в ГП не будет ссылки на услугу, а наименование все равно вывести из файла.

Сортировка

  1. Направления отсортировать по полю «Сортировка для ГП» order_gp (чем меньше число, тем ближе к началу);
  2. ГП отсортировать по времени, ближайшее время вначале, более позднее время далее.
  3. ВАЖНО: Если горящие предложения выводятся без группировки по коду услуги, то все равно сами ГП нужно отсортировать по приоритету из услуги (поле «Сортировка для ГП»). Это нужно для того, чтобы мы в любом случае выводили ГП например сначала по гастроэнтерологии, потом по педиатрии… даже если названия «Гастроэнтерология», «Терапия» не выводятся.

Вывод информации

1) Заголовок

Заголовок, появляется в том случае, если найдены ГП

2) Услуги

Наименования(названия постов), найденные по полю «Код услуги» в файле, т.е.

Гастроэнтерология

  • ГП по гастро 1
  • ГП по гастро 2
  • ….

Терапия

  • ГП по терапии 1
  • ГП по терапии 2

3) Горящее предложение

  • Скидка view_gp 10%; (если для данного ГП найден пост, вывести значение доп поля view_gp «Формулировка для ГП»)
  • Направление (ссылка на пост, который найден по доп полю «Код услуги»);
  • ФИО врача (ссылка на страницу врача);
  • Дата и время (если сегодня, то выводим Сегодня);
  • Записаться (оставить такой же код как сейчас есть в шорткоде, он использует ID из файла для записи его в файл)

 

Как будет выглядеть:

Горящие предложения

Гастроэнетрология

Терапия

И т.д….

Сейчас так выглядит