VirtueMart добавить файл (pdf) к продукту

Я пытаюсь добавить файл PDF в свои продукты через поле ввода на странице продукта администратора в разделе описания. На данный момент я создал поле (product_file) в части представления, и оно отправляет прикрепленный PDF-файл. Мои проблемы в том, что я не знаю точно, куда форма отправляет параметры, и я не могу назначить свое поле product_file для сохранения имени в виде строки в базе данных и в то же время для сохранения файла в формате pdf в папке в основной каталог. Я работаю с Joomla 3.4.1 и Virtuemart 3.0.6.4. Любые советы высоко ценится.

p.s. Я знаю, что есть платное расширение для ВМ3, но у меня нет на это ресурсов.


person Yavor P.    schedule 14.04.2015    source источник


Ответы (1)


Вы должны создать новое настраиваемое поле со следующими настройками:

Custom Field Type: String
Title: File
Layout position: file

Затем поместите следующий код в: templates/*your_template/html/com_virtuemart/productdetails/default.php (скопировано из: components/com_virtuemart/sublayouts/customfields.php и настроенной позиции).

$product = $this->product;
$position = 'file';
$class = 'product-fields';  

if (!empty($product->customfieldsSorted[$position])) {
    $custom_title = null;
    foreach ($product->customfieldsSorted[$position] as $field) {
        if ( $field->is_hidden ) //OSP http://forum.virtuemart.net/index.php?topic=99320.0
        continue;
        ?><div class="product-field product-field-type-<?php echo $field->field_type ?>">
            <?php if (!$customTitle and $field->custom_title != $custom_title and $field->show_title) { ?>
                <span class="product-fields-title-wrapper"><span class="product-fields-title"><strong><?php echo vmText::_ ($field->custom_title) ?></strong></span>
                    <?php if ($field->custom_tip) {
                        echo JHtml::tooltip ($field->custom_tip, vmText::_ ($field->custom_title), 'tooltip.png');
                    } ?></span>
            <?php }
            if (!empty($field->display)){
                ?><div class="product-field-display"><a href="images/stories/virtuemart/pdf/<?php echo $field->display; ?>">pdf file</a></div><?php
            }
            if (!empty($field->custom_desc)){
                ?><div class="product-field-desc"><?php echo vmText::_($field->custom_desc) ?></div> <?php
            }
            ?>
        </div>
    <?php
        $custom_title = $field->custom_title;
    }
}
?>

Файл PDF должен быть добавлен в папку images/stories/virtuemart/pdf/.

person emmanuel    schedule 16.04.2015