Jump to content


Photo
- - - - -

Значение поля в тему письма


Best Answer SmetDenis , 09 December 2015 - 09:56

Решить это можно двумя способами
1. Создать свой элемент, который будет выводить значение поля.
2. Добавить макрос, который будет выводить то что вам нужно. Это будет только хаком.

Предлагаю второй способ, т.к он заметно проще
Обработка всех макросов происходит тут.
media\zoo\applications\jbuniversal\framework\helpers\jbordermacros.php

Добавьте в верхний список свой, например "user_city"
Далее, внизу вы найдете большую функцию, которая заменяет макрос на значение

Добавьте туда что-то вроде

        } else if ($macros == 'user_city' && $order) {
            if ($element = $order->getFieldElement('ELEMENT_ID')) { // указать свой ID
                 $data = $element->data();
                 $replace = $data['value'];
            }
        }
После этого скрипт должен научиться обрабатывать {user_city} Go to the full post


  • This topic is locked This topic is locked
2 replies to this topic

#1 RDG

RDG
  • JBZoo User (rus)
  • User rate: 0.5
  • posts: 296
  • topics: 88

Posted 08 December 2015 - 14:16

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

При офрмлении заказа у меня есть поле "Город".

Мне надо что бы значение этого поля попадало в тему письма, ну например "Заказ номер 234876 Кемерово".

Помогите пожалуйста.

 

Может что то типа Element ID надо куда то подставить того поля, что содержит город? 

 

При чём вот что нашёл. Можно теги ставить, может моё решение где то близко?

123123123123.JPG


Edited by RDG, 08 December 2015 - 14:23.

  • 0

#2 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 09 December 2015 - 09:56   Best Answer

Решить это можно двумя способами
1. Создать свой элемент, который будет выводить значение поля.
2. Добавить макрос, который будет выводить то что вам нужно. Это будет только хаком.

Предлагаю второй способ, т.к он заметно проще
Обработка всех макросов происходит тут.
media\zoo\applications\jbuniversal\framework\helpers\jbordermacros.php

Добавьте в верхний список свой, например "user_city"
Далее, внизу вы найдете большую функцию, которая заменяет макрос на значение

Добавьте туда что-то вроде
        } else if ($macros == 'user_city' && $order) {
            if ($element = $order->getFieldElement('ELEMENT_ID')) { // указать свой ID
                 $data = $element->data();
                 $replace = $data['value'];
            }
        }
После этого скрипт должен научиться обрабатывать {user_city}
  • 1
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 RDG

RDG
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0.5
  • posts: 296
  • topics: 88

Posted 09 December 2015 - 10:21

Чудо чудное, диво дивное! Денис большое спасибо вам! 


  • 1




Click to return to top of page in style!