OC v3.х Назначение менеджера для клиента

anonames

Созидатель (II)
Сообщения
11
Симпатии
2
Баллы
41
Пытаюсь слепить что то подобное своими рукам, если руки золотые то не важно из какого места они растут...
"Настраиваемым полем" вывел в карточке клиента текстовое поле "Менеджер"
Делал все по примерам, так как вывод происходит из массива - пока не умею с ними работать.
В контроллер добавил вывод значения кастомного поля по ID в переменной manager

PHP:
/* Custom Field Manager */

$custom_fields = array();
            $custom_fields[] = json_decode($result['custom_field'], true);
            foreach ($custom_fields as $id ) {
            $manager = $id[1];
            }

            $this->load->model('customer/custom_field');

/* Custom Field Manager */

            $data['customers'][] = array(
             'manager'        => $manager,

/* Custom Field Manager */

в шаблон списка клиентов вывел новым столбцом
PHP:
<td class="text-left">{{ customer.customer_group }}</td>
<td class="text-left">{{ customer.manager }}</td> <!-- Custom Field Manager -->
<td class="text-left">{{ customer.status }}</td>

Так прикрепляем Менеджера:
В текстовое поле, в карточке клиента, вписываю "Виновного" и в списке клиентов выводится этот же текст.
Имейте в виду что это поле по умолчанию отобразится и в кабинете клиента. Можно отключить кому это
ненужно или запретить редактировать.
По ангиологии можно добавить нужную информацию телефон и e-mail для связи.
Не нашел подробной инструкции как работать с этими "Настраиваемым полем", делал все методом "научного тыка"
видел как с их помощью делают целые анкеты и выводят куда угодно инфу из них. Так что тема не раскрыта функционал богатый.

Не могу вывести поля типа select просто не умею работать с многомерными массивами может кто подскажет как? или даст направление.
 
Для вывода значений полей типа select из массива в OpenCart можно использовать следующий подход.

Сначала необходимо получить массив с данными о настраиваемых полях для текущего клиента. Это можно сделать с помощью метода getCustomFields() модели model_customer_customer.

Например:

Скрытое содержимое. Вам нужно войти или зарегистрироваться.

Здесь $customer_id - это ID текущего клиента.

После этого можно получить значение поля типа select по его ID. Для этого нужно найти соответствующий элемент в массиве $custom_fields и получить его значение. Например, если ID поля типа select равен 2, то значение можно получить так:

Скрытое содержимое. Вам нужно войти или зарегистрироваться.

Здесь $select_options будет содержать массив с вариантами выбора для поля типа select.
Чтобы вывести значение выбранного варианта, можно использовать следующий код:

Скрытое содержимое. Вам нужно войти или зарегистрироваться.

Здесь $select_value будет содержать текстовое значение выбранного варианта поля типа select.

Надеюсь, это поможет вам вывести значения полей типа select из массива в OpenCart.
 
Назад
Верх