首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法在Magento中将Store View值转换为默认值?

有没有办法在Magento中将Store View值转换为默认值?
EN

Stack Overflow用户
提问于 2014-09-18 22:33:13
回答 2查看 1.1K关注 0票数 1

我们已经有几年了,11,000+的产品进入了我们的Magento商店,我们不得不稍微改变一下档次。

如果Store View中使用的值(titles、enabled/disabled、descriptions)可以覆盖默认值,而不需要无休止的复制/粘贴,那么生活会更轻松。

因此,如果Store View值与默认值不同,请将其设为默认值。感谢您的帮助!

EN

回答 2

Stack Overflow用户

发布于 2014-09-19 02:54:00

这可以直接使用SQL完成,但请确保在开始之前设置维护模式和备份。

代码语言:javascript
复制
SET @default = 0;
SET @store = 1;
-- put the correct store_id here

START TRANSACTION;

INSERT INTO `catalog_product_entity_int` (entity_type_id, attribute_id, store_id, entity_id, value)
SELECT entity_type_id, attribute_id, @default, entity_id, value FROM `catalog_product_entity_int` AS local
WHERE store_id = @store
ON DUPLICATE KEY UPDATE value = local.value;
-- the "ON DUPLICATE..." part works because EAV tables have
-- a unique key for "entity_id, attribute_id, store_id"

DELETE FROM `catalog_product_entity_int`
WHERE store_id = @store;
-- it is safe to delete @store rows because all values
-- have been either copied or updated by now

COMMIT;

对所有catalog_product_entity_*表重复上述步骤。然后重建索引,您可以在站点处于SSH维护模式时执行此操作。

代码语言:javascript
复制
cd path/to/magento/shell/
php indexer.php --reindex catalog_product_attribute
票数 1
EN

Stack Overflow用户

发布于 2018-10-11 08:24:52

我编写了一个PHP脚本,遍历storeview值,如果它们不同,则将它们复制到默认作用域,然后删除本地值。

你可以在这里看到GIST:https://gist.github.com/janzikmund/a92e0a219af5e362fa1293b52b6b831e

它的注释是为了给你一个想法。在底部,UPDATE和TRUNCATE行被注释掉了,所以您应该能够在不修改任何数据的情况下首先运行它,然后当您确定取消注释这些行并转换数据时。

当然,不要忘记先做一个备份!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25915567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档