こんにちは、製品画像リストにオプションをもう 1 つ追加するにはどうすればよいですか? チェックボックスの除外と削除など
2 に答える
@vrnetあなたはほとんどそこにいました...さらに、更新する必要があります:
/js/mage/adminhtml/products.js (大量の変更)。基本的に、新しいフィールドを処理するには、JSON のコードを追加する必要があります。最後に 2 番目のラベルを追加する必要があり、最終的にラベル コードをコピーして貼り付け、変数名をコード変数と一致するように変更しました。かなり簡単なはずです。
(66 行目) Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Media クラスの場合、新しい列を追加して、DB から読み込まれるようにする必要があります。
ご不明な点がございましたら、メールでお問い合わせください
同じ機能をコーディングしようとしています。答えはありましたか?
アイデアは、画像ギャラリーの各画像に「ページとして使用」チェックボックスを追加することです。目標は、すべての画像が「ページとして使用」としてチェックされた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" /> </td>
<td class="cell-page last"><input type="hidden" /> </td>