Поковырявшись с данным модификатором, получилось сделать все указанное по аналогии, спасибо за этот пример! На память сюда пошаговое решение выложу.
Для продуктов, в /site.ru/admin/catalog/controller/product.php Нужно найти этот код:
$data['products'][] = array(
и перед ним вставить:
$this->load->model('setting/store');
$data['stores'] = $this->model_setting_store->getStores();
$data['product_store'] = $this->model_catalog_product->getProductStores($result['product_id']);
$product_store_list = '';
if (!empty($data['product_store'])) {
if (in_array(0, $data['product_store'])) { $product_store_list = $this->language->get('text_default'); };
foreach ($data['stores'] as $store) {
if (in_array($store['store_id'], $data['product_store'])) { ($product_store_list != '') ? $product_store_list .= ','.$store['name']: $product_store_list = $store['name']; };
};
};
А после него вставить
'stores' => $product_store_list,
Далее в /site.ru/admin/view/template/catalog/product_list.tpl в нужное место вывести
<?php echo $product['stores']; ?>
В категориях /site.ru/admin/catalog/controller/category.php найти
$output[$result['category_id']] = array(
И перед этим кодом вставить
$this->load->model('setting/store');
$data['stores'] = $this->model_setting_store->getStores();
$data['category_store'] = $this->model_catalog_category->getCategoryStores($result['category_id']);
$category_store_list = '';
if (!empty($data['category_store'])) {
if (in_array(0, $data['category_store'])) { $category_store_list = $this->language->get('text_default'); };
foreach ($data['stores'] as $store) {
if (in_array($store['store_id'], $data['category_store'])) { ($category_store_list != '') ? $category_store_list .= ','.$store['name']: $category_store_list = $store['name']; };
};
};
А после него вставить
'stores' => $category_store_list,
Далее в /site.ru/admin/view/template/catalog/category_list.tpl в нужное место воткнуть
'stores' => $category_store_list
Эти примеры выводят имена магазина.
Для вывода вместо названия магазинов ихние id для контроллера товаров вставить заместо прежнего кода этот вариант:
$this->load->model('setting/store');
$data['stores'] = $this->model_setting_store->getStores();
$data['product_store'] = $this->model_catalog_product->getProductStores($result['product_id']);
$product_store_list = '';
if (!empty($data['product_store'])) {
if (in_array(0, $data['product_store'])) { $product_store_list = '0'; };
foreach ($data['stores'] as $store) {
if (in_array($store['store_id'], $data['product_store'])) { ($product_store_list != '') ? $product_store_list .= ','.$store['store_id']: $product_store_list = $store['store_id']; };
};
};
И для списка категорий соответственно
$this->load->model('setting/store');
$data['stores'] = $this->model_setting_store->getStores();
$data['category_store'] = $this->model_catalog_category->getCategoryStores($result['category_id']);
$category_store_list = '';
if (!empty($data['category_store'])) {
if (in_array(0, $data['category_store'])) { $category_store_list = '0'; };
foreach ($data['stores'] as $store) {
if (in_array($store['store_id'], $data['category_store'])) { ($category_store_list != '') ? $category_store_list .= ','.$store['store_id']: $category_store_list = $store['store_id']; };
};
};
Это то что у меня заработало на ocstore 2.3