Изображения продукта Magento новая опция - PullRequest
2 голосов
/ 07 декабря 2009

Эй, ребята, как мне добавить еще одну опцию в список изображений товара? как флажки «Исключить и удалить»

Ответы [ 2 ]

1 голос
/ 11 ноября 2010

@ vrnet Вы были почти там ... Кроме того, вам необходимо обновить:

  1. / js / mage / adminhtml / products.js (тонна изменений). По сути, вам нужно будет добавить код для JSON для обработки вашего нового поля. Мне нужно было добавить вторую метку на моем конце, и в итоге получился код метки copyPasting и изменение имен переменных в соответствии с переменной кода. Должно быть довольно прямым.

  2. (строка 66) ​​Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Media class, вам нужно будет добавить новый столбец, чтобы он загружался обратно из БД.

Если у вас есть какие-либо вопросы, напишите мне по электронной почте

0 голосов
/ 21 июля 2010

Я пытаюсь закодировать ту же функцию. Был ли у вас ответ?

Идея состоит в том, чтобы добавить флажок «Использовать как страницу» для каждого изображения в галерее изображений. Цель состоит в том, чтобы сделать карусель JS со всей картинкой, помеченной как «Использовать как страницу».

У меня есть несколько дел, но я не могу обновить данные в базе данных.

-> Таким образом, мой вопрос: как обновить данные в базе данных и получить их в флажке (0 или 1 в зависимости от флажка)?

Спасибо всем за вашу очень ценную помощь.


Вот что я сделал (1.4.1.0):

1 - Обновление таблицы catalog_product_entity_media_gallery_value

Добавлено новое поле (имя которого «страница»):

  • страница tinyint (4) НЕ ПОДПИСАНО Нет 0

2 - Внесены следующие изменения в класс Mage_Catalog_Model_Product_Attribute_Backend_Media

Строка 49:

от

$localAttributes = array('label', 'position', 'disabled');

до

$localAttributes = array('label', 'position', 'disabled', 'page');

Строка 223:

от

$data['disabled'] = (int) $image['disabled'];

до

$data['disabled'] = (int) $image['disabled'];
$data['page'] = (int) $image['page'];

Линия 301

от

$mediaGalleryData['images'][] = array(
    'file'     => $fileName,
    'position' => $position,
    'label'    => '',
    'disabled' => (int) $exclude
);

до

$mediaGalleryData['images'][] = array(
    'file'     => $fileName,
    'position' => $position,
    'label'    => '',
    'disabled' => (int) $exclude,
    'page' => (int) $exclude,
);

Линия 328

от

$fieldsMap = array(
    'label'    => 'label',
    'position' => 'position',
    'disabled' => 'disabled',
    'exclude'  => 'disabled',
);

до

$fieldsMap = array(
    'label'    => 'label',
    'position' => 'position',
    'disabled' => 'disabled',
    'exclude'  => 'disabled',
    'page'  => 'disabled',
);

3 - Внесены следующие изменения в шаблон adminhtml / default / default / template / catalog / product / helper / gallery.phtml

Строка 64

от

    <th><?php echo Mage::helper('catalog')->__('Exclude') ?></th>

до

    <th><?php echo Mage::helper('catalog')->__('Exclude') ?></th>
    <th><?php echo Mage::helper('catalog')->__('Is Page') ?></th>

Строка 77

от

<td class="cell-disable a-center"><input type="checkbox" <?php if($_block->getElement()->getReadonly()):?> disabled="disabled"<?php endif;?> onclick="<?php echo $_block->getJsObjectName(); ?>.updateImage('__file__')" /></td>

до

<td class="cell-disable a-center"><input type="checkbox" <?php if($_block->getElement()->getReadonly()):?> disabled="disabled"<?php endif;?> onclick="<?php echo $_block->getJsObjectName(); ?>.updateImage('__file__')" /></td>
<td class="cell-page a-center"><input type="checkbox" <?php if($_block->getElement()->getReadonly()):?> disabled="disabled"<?php endif;?> onclick="<?php echo $_block->getJsObjectName(); ?>.updateImage('__file__')" /></td>

Линия 105

из

до

            <td class="cell-disable"><input type="hidden" />&nbsp;</td>
            <td class="cell-page last"><input type="hidden" />&nbsp;</td>
...