2

こんにちは、製品画像リストにオプションをもう 1 つ追加するにはどうすればよいですか? チェックボックスの除外と削除など

4

2 に答える 2

1

@vrnetあなたはほとんどそこにいました...さらに、更新する必要があります:

  1. /js/mage/adminhtml/products.js (大量の変更)。基本的に、新しいフィールドを処理するには、JSON のコードを追加する必要があります。最後に 2 番目のラベルを追加する必要があり、最終的にラベル コードをコピーして貼り付け、変数名をコード変数と一致するように変更しました。かなり簡単なはずです。

  2. (66 行目) Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Media クラスの場合、新しい列を追加して、DB から読み込まれるようにする必要があります。

ご不明な点がございましたら、メールでお問い合わせください

于 2010-11-10T22:11:45.090 に答える
0

同じ機能をコーディングしようとしています。答えはありましたか?

アイデアは、画像ギャラリーの各画像に「ページとして使用」チェックボックスを追加することです。目標は、すべての画像が「ページとして使用」としてチェックされたJSカルーセルを作成することです。

いくつかのことを実行しましたが、データベース内のデータを更新できません。

--> だから私の質問は: データベース内のデータを更新し、チェックボックス (チェックボックスに応じて 0 または 1) でデータを取得する方法は?

大変貴重なご協力ありがとうございます。


これが私がやったことです(1.4.1.0):

1- テーブルcatalog_product_entity_media_gallery_valueを更新

新しいフィールド (名前は「ページ」) を追加しました:

  • ページ tinyint(4) UNSIGNED いいえ 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>
于 2010-07-21T08:22:41.473 に答える