VaM

Новый модуль - Дополнительные поля покупателей

Рекомендуемые сообщения

VaM

С помощью данного модуля Вы можете легко добавлять/удалять новые поля в форму регистрации покупателя, без правки php кода.

Также данные из добавленных Вами полей будут видны при просмтре заказа в админке. 

       

После установки в Админке - Разное появится новый пункт - Дополнительные поля покупателей.

В каталоге дополнительные поля будут видны на странице регистрации клиента (create_account.php) и при редактировании данных клиента (account_edit.php).

Скачать можно в файлах: http://vamshop.ru/support/modules/wfdownloads/singlefile.php?cid=2&lid=27

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

А есть ли у дополнительного поля какое-либо название в шаблоне?

чтобы можно было в шаблоне письма- написать: дополнительное поле, такое то.

и чтобы оно приходило только администратору..либо и администратору и покупателю- на худой конец

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Пока что нет, в письмо не добавляются эти поля.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

а у них вообще есть какое-либо обозначение? я бы сам вставил. тем более у меня одно единственное поле.

или может как-то можно сгенерить для него переменную?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Есть небольшая проблемка на данном этапе в установщике, из-за которой я не могу добавить такую возможность в zip архив с модулем.

Если хочешь, можешь руками добавить вывод полей в шаблон письма.

Сделай следующее:

1. Открой файл /admin/customer_extra_fields.php

Замени:


      $contents[] = array('text' => '<br>' . TEXT_FIELD_NAME . $field_inputs_string);     
  $contents[] = array('text' => '<!--<br>' . TEXT_FIELD_INPUT_TYPE . '<br>' . xtc_draw_radio_field('fields_input_type', 0, ($fInfo->fields_input_type==0) ? true : false) . TEXT_INPUT_FIELD . '<br>' . xtc_draw_radio_field('fields_input_type', 1, ($fInfo->fields_input_type==1) ? true : false) . TEXT_TEXTAREA_FIELD);
      $contents[] = array('text' => '<br>' . TEXT_FIELD_REQUIRED_STATUS . '<br>' . xtc_draw_radio_field('fields_required_status', 0, ($fInfo->fields_required_status==0) ? true : false) . 'false<br>' . xtc_draw_radio_field('fields_required_status', 1, ($fInfo->fields_required_status==1) ? true : false) . 'true');
      $contents[] = array('text' =>  TEXT_FIELD_SIZE . '<br>' . xtc_draw_input_field('fields_size',$fInfo->fields_size));
  $contents[] = array('text' => '--><br>' . TEXT_FIELD_STATUS_EMAIL . '<br>' . xtc_draw_radio_field('fields_required_email', 0, ($fInfo->fields_required_email==0) ? true : false) . 'false<br>' . xtc_draw_radio_field('fields_required_email', 1, ($fInfo->fields_required_email==1) ? true : false) . 'true');
      $contents[] = array('align' => 'center', 'text' => '<br><input type="submit" class="button" value="' . BUTTON_SAVE .'"> <a class="button" href="' . xtc_href_link(FILENAME_EXTRA_FIELDS, 'page=' . $_GET['page'] . '&fID=' . $_GET['fID']) . '">' . BUTTON_CANCEL . '</a>');
[/code] На:
[code]
      $contents[] = array('text' => '<br>' . TEXT_FIELD_NAME . $field_inputs_string);     
  $contents[] = array('text' => '<!--<br>' . TEXT_FIELD_INPUT_TYPE . '<br>' . xtc_draw_radio_field('fields_input_type', 0, ($fInfo->fields_input_type==0) ? true : false) . TEXT_INPUT_FIELD . '<br>' . xtc_draw_radio_field('fields_input_type', 1, ($fInfo->fields_input_type==1) ? true : false) . TEXT_TEXTAREA_FIELD);
      $contents[] = array('text' => '<br>' . TEXT_FIELD_REQUIRED_STATUS . '<br>' . xtc_draw_radio_field('fields_required_status', 0, ($fInfo->fields_required_status==0) ? true : false) . 'false<br>' . xtc_draw_radio_field('fields_required_status', 1, ($fInfo->fields_required_status==1) ? true : false) . 'true');
      $contents[] = array('text' =>  TEXT_FIELD_SIZE . '<br>' . xtc_draw_input_field('fields_size',$fInfo->fields_size));
  $contents[] = array('text' => '<br>' . TEXT_FIELD_STATUS_EMAIL . '<br>' . xtc_draw_radio_field('fields_required_email', 0, ($fInfo->fields_required_email==0) ? true : false) . 'false<br>' . xtc_draw_radio_field('fields_required_email', 1, ($fInfo->fields_required_email==1) ? true : false) . 'true');
      $contents[] = array('align' => 'center', 'text' => '<br>--><input type="submit" class="button" value="' . BUTTON_SAVE .'"> <a class="button" href="' . xtc_href_link(FILENAME_EXTRA_FIELDS, 'page=' . $_GET['page'] . '&fID=' . $_GET['fID']) . '">' . BUTTON_CANCEL . '</a>');
2. Открой /send_order.php Ищи:

$smarty->assign('csID', $order->customer['csID']);
[/code] Добавляй после:
[code]
  $it=0;
$semextrfields = xtc_db_query("select * from " . TABLE_EXTRA_FIELDS . " where fields_required_email = '1'");
while($dataexfes = xtc_db_fetch_array($semextrfields)) {
$cusextrfields = xtc_db_query("select * from " . TABLE_CUSTOMERS_TO_EXTRA_FIELDS . " where customers_id = '" . (int)$_SESSION['customer_id'] . "' and fields_id = '" . $dataexfes['fields_id'] . "'");
$rescusextrfields = xtc_db_fetch_array($cusextrfields);
$extrfieldsinf = xtc_db_query("select fields_name from " . TABLE_EXTRA_FIELDS_INFO . " where fields_id = '" . $dataexfes[fields_id] . "' and languages_id = '" . $languages_id . "'");
$extrfieldsres = xtc_db_fetch_array($extrfieldsinf);
$extra_fields .= $extrfieldsres['fields_name'] . ' : ' .
$rescusextrfields['value'] . "\n";
$smarty->assign('customer_extra_fields', $extra_fields);
  }
и теперь открывай шаблон письма /templates/шаблон/main/russian/order_mail.txt и, например, после:

{if $csID}Код покупателя:{$csID}{/if}
[/code] Добавляй:
[code]
{if $customer_extra_fields}{$customer_extra_fields}{/if}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

спасибо. респект. буду проверять

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Я проверял, у меня работает, т.е. в письме приходят поля.

Но если что не так, пиши.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

периодически стало выскакивать..через раз:

ERROR_NO_PAYMENT_MODULE_SELECTED и поле не приходит.

может скинешь файлы в готовом виде? может я что-то не так скопировал отсюда

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

А ты в Админке - Инструменты - Дополнительные поля покупатеелей отредактировал поля, поставил true в Отправлять поля в письме!?

А ошибка ERROR_NO_PAYMENT_MODULE_SELECTED где выводится?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

да не знал, что там есть такое- посмотрел сейчас. у меня в админке нет такой настройки- про отправлений полей в письме.

ошибка выводилась несколько раз- в момент подтверждения заказа. а потом все вдруг стало нормально. то есть через раз, непонятно из-за чего.

теперь даже файлы прежние сложно вернуть, поэтому и прошу- готовые скинуть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Отправил по почте

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

спасибо. да поставил. только почему то не нашел в дополнительных полях- где отправлять их? или это в другом месте в админке?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Попробуй удалить поле в админке и добавить снова.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
medium

У меня видимо такие же проблемы с этим модулем.

Кстати, тоже нужна отправка по мылу полей ,но до этого пока не дошел.

Так вот, в настройках модуля (Админка - Разное - Допполя) есть только имя модуля. А судя по БД и функциям - должы настраиваться еще параметры для каждого допполя покупателя:

         

  fields_input_type  тип поля         

  fields_status  статус           

  fields_required_status обязательное для заполнения или нет.

  fields_size  int(5)  размер

  fields_required_email  обязаетльный мейл

у меня ничего подобногов админке нет!

Может еще гдето чтото установить надо?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Да, эти поля есть в базе, но они пока не используются.

Я перенёс этот модуль из osCommerce, правада не все возможности перенёс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
medium

У тебя была такая фраза:

А ты в Админке - Инструменты - Дополнительные поля покупатеелей отредактировал поля, поставил true в Отправлять поля в письме!?

У меня тоже этого поля нет, как вы решили тот вопрос?

И еще вопрос - раз уж я влез в эту тему - что мне проще сделать для создания возможности регистрации юрлица - дорабатывать этот модуль, или втупую забивать новые поля в customers?

Подскажи плиз с точки зрения более опытного юзера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Ну я на первой странице написал как сделать что б было это поле и как отправлять в письме поля.

Не знаю, по мне лучше этот модуль использовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
medium

Я внес изменения с первой страницы, но настройки "отправлять поля в письме" так и не появилось.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

После того как внём изменения, удали поля существующие и добавь снова.

Во вновь добавленных полях будет такая опция.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
geval

поставил 1.2 версию, там сделал всё также.

однако всё приходит- НО, стали не приходить по почте адрес клиента и адрес доставки..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

А может ты в шаблоне письма что-то лишнее удалил?

или в файле send_order.php ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
medium

Глюк: при удалении клиента информация в допполях остается мусором.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

Да модуль глючный, не спорю.

Я просто не успеваю пока, не доходят руки исправить его.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
petvv

Скачал этот модуль, загружаю, нажимаю установить, он мне пишет:

Не могу найти : Электронный адрес: {$EMAIL}.

в файле: z:/home/qqq.ru/www/templates/vamshop/mail/russian/order_mail.txt

<addcode> #24

Это у меня коэффициент кривизны рук >> 0 или как. Вот файл z:/home/qqq.ru/www/templates/vamshop/mail/russian/order_mail.txt

{$address_label_customer}

{if $PAYMENT_METHOD}Способ оплаты: {$PAYMENT_METHOD}{/if}

Номер заказа: {$oID}

Дата: {$DATE}

{if $csID}Код покупателя:{$csID}{/if}

Телефон: {$PHONE}

Электронный адрес: {$EMAIL}

----------------------------------------------------------------------

Уважаемый {$NAME}!

Вы оформили заказ в нашем интернет-магазине.

{$PAYMENT_INFO_TXT}

{if $COMMENTS}

Ваши комментарии:

{$COMMENTS}

{/if}

Вы заказали следующие товары

----------------------------------------------------------------------

{foreach name=aussen item=order_values from=$order_data}

{$order_values.PRODUCTS_QTY} x {$order_values.PRODUCTS_NAME}{if $order_values.PRODUCTS_MODEL neq ''} ({$order_values.PRODUCTS_MODEL}) {/if} {$order_values.PRODUCTS_PRICE}

{if $order_values.PRODUCTS_SHIPPING_TIME neq ''}Время доставки: {$order_values.PRODUCTS_SHIPPING_TIME}{/if}

{if $order_values.PRODUCTS_ATTRIBUTES !=''}{$order_values.PRODUCTS_ATTRIBUTES}{/if}

{/foreach}

{foreach name=aussen item=order_total_values from=$order_total}

{$order_total_values.TITLE}{$order_total_values.TEXT}

{/foreach}

{if $address_label_payment}

Адрес покупателя

----------------------------------------------------------------------

{$address_label_payment}

{/if}

Адрес доставки

----------------------------------------------------------------------

{$address_label_shipping}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты