Как в письме о заказе администратору вывести названия полей?

  • 3 Ответов
  • 89 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

Shelendor

  • Новичок
  • *
  • 3
  • 0
Здравствуйте.

Впервые столкнулся с Joomla и VirtueMart и никак не могу решить возникший вопрос.

Дано: Joomla! 2.5.28 + VirtueMart 2.6.16

Через Пользовательские поля добавлены поля Подъезд, Этаж и Номер квартиры, заполняемые покупателем при оформлении заказа. В письме, приходящем администратору, данные выводятся, но названий полей нет. Т.е. получаем вот такое



Т.е. информация выводится в письме, но названий полей нет и что такое 6, 1 и 18 понять невозможно.

Как я понял, за эту часть письма отвечает файл /components/com_virtuemart/views/invoice/tmpl/mail_html_shopperaddresses.php

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

Но код этого файла выглядит так:
Код
// Check to ensure this file is included in Joomla!
defined('_JEXEC') or die('Restricted access');
?>
<table class="html-email" cellspacing="0" cellpadding="0" border="0" width="100%">  <tr  >
<th width="50%">
    <?php echo JText::_('COM_VIRTUEMART_USER_FORM_BILLTO_LBL'); ?>
</th>
<th width="50%" >
    <?php echo JText::_('COM_VIRTUEMART_USER_FORM_SHIPTO_LBL'); ?>
</th>
    </tr>
    <tr>
<td valign="top" width="50%">

    <?php

    foreach ($this->userfields['fields'] as $field) {
if (!empty($field['value'])) {
?><!-- span class="titles"><?php echo $field['title'] ?></span -->
        <span class="values vm2<?php echo '-' . $field['name'] ?>" ><?php echo $this->escape($field['value'])?></span>
<?php if ($field['name'] != 'title' and $field['name'] != 'first_name' and $field['name'] != 'middle_name' and $field['name'] != 'zip') { ?>
    <br class="clear" />
    <?php
}
    }

    }
    ?>

</td>
<td valign="top" width="50%">
    <?php
    foreach ($this->shipmentfields['fields'] as $field) {

if (!empty($field['value'])) {
    ?><!-- span class="titles"><?php echo $field['title'] ?></span -->
    <span class="values vm2<?php echo '-' . $field['name'] ?>" ><?php echo $this->escape($field['value'])?></span>
    <?php if ($field['name'] != 'title' and $field['name'] != 'first_name' and $field['name'] != 'middle_name' and $field['name'] != 'zip') { ?>
        <br class="clear" />
<?php
    }
}
    }

    ?>
</td>
</tr>

Я не вижу здесь вообще кода, отвечающего за поля Этаж, Подъезд и Номер квартиры, но в любом случае не могу понять, как вывести названия соответствующих полей. Подскажите, пожалуйста, куда копать. Спасибо.

*

Shelendor

  • Новичок
  • *
  • 3
  • 0
Интересно, ответ на вопрос настолько очевиден, что всем лень отвечать, или настолько сложен, что никто не знает ответ? :)

*

robert

  • Профи
  • ********
  • 4002
  • 371
Ответ и не очевиден и не сложен.
1. Обе версии Joomla и VM - древние, не у каждого они есть, чтобы код посмотреть.
2. У вас магазин, значит делаете бизнес и должны знать, что просто так не будут помогать вам (или вашему работодателю, если вы - не хозяин) делать деньги.
Сделайте
Код: php-brief
echo '<pre>';
print_r($this->userfields['fields']);
print_r($this->shipmentfields['fields']);
echo '</pre>';
exit();
и посмотрите, что в них.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.

*

Shelendor

  • Новичок
  • *
  • 3
  • 0
Ответ и не очевиден и не сложен.
1. Обе версии Joomla и VM - древние, не у каждого они есть, чтобы код посмотреть.
2. У вас магазин, значит делаете бизнес и должны знать, что просто так не будут помогать вам (или вашему работодателю, если вы - не хозяин) делать деньги.
Сделайте
Код: php-brief
echo '<pre>';
print_r($this->userfields['fields']);
print_r($this->shipmentfields['fields']);
echo '</pre>';
exit();
и посмотрите, что в них.

Спасибо, сейчас попробую. По поводу же остального - знакомый попросил посмотреть. В данном случае у меня нет работодателя и я не хозяин :) Просто с конкретным вопросом разобраться пытаюсь. Joomla вообще не моя тема, мне как-то с Друпалом проще и, видимо, я к особенностям его сообщества привык. Так что извиняюсь.