现在的情况:
我有一个直播系统,它运行得很好。我没有测试系统。
我们的直播系统是一个多家商店,在一个网站上有几个商店的浏览量。
问题:
我需要再添加一个商店视图,并在这个livesystem中处理这个问题。如何限制对此商店视图的访问,使任何客户,无论是否登录,都无法看到此商店?这有可能吗?
我只需要一个管理员(我)来访问这个商店视图。
当然,我可以在其他的实体店禁用所有的储物柜,但我不认为这是解决我的问题的好办法。:)
发布于 2011-08-09 14:56:31
如果不希望在语言下拉选择字段中显示当前编辑的存储(视图),请执行以下操作:
customer-group
:
发自:
<?php if(count($this->getStores())>1): ?>
<div class="form-language">
<label for="select-language"><?php echo $this->__('Your Language:') ?></label>
<select id="select-language" title="<?php echo $this->__('Your Language') ?>" onchange="window.location.href=this.value">
<?php foreach ($this->getStores() as $_lang): ?>
<?php $_selected = ($_lang->getId() == $this->getCurrentStoreId()) ? ' selected="selected"' : '' ?>
<option value="<?php echo $_lang->getCurrentUrl() ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option>
<?php endforeach; ?>
</select>
</div>
<?php endif; ?>至:
<?php
// StoreView-Ids we dont want to show on frontend
$stores = array(3);
// Set admin group id with access to the above storeviews
$frontendAdminGroupId = 5;
// Get current user group id
$currentGroupId = $this->helper('customer')->getCurrentCustomer()->group_id;
?>
<?php if(count($this->getStores())>1): ?>
<div class="form-language">
<label for="select-language"><?php echo $this->__('Your Language:') ?></label>
<select id="select-language" title="<?php echo $this->__('Your Language') ?>" onchange="window.location.href=this.value">
<?php foreach ($this->getStores() as $_lang): ?>
<?php foreach ($stores as $_adminStore) : ?>
<?php /* Admin Store! */?>
<?php if($_adminStore == $_lang->getId() ) : ?>
<?php if($currentGroupId == $frontendAdminGroupId) : ?>
<?php $_selected = ($_lang->getId() == $this->getCurrentStoreId()) ? ' selected="selected"' : '' ?>
<option value="<?php echo $_lang->getCurrentUrl() ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option>
<?php endif; ?>
<?php else: ?>
<?php /* Normal User! */?>
<?php $_selected = ($_lang->getId() == $this->getCurrentStoreId()) ? ' selected="selected"' : '' ?>
<option value="<?php echo $_lang->getCurrentUrl() ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option>
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
</select>
</div>
<?php endif; ?>您还必须编辑签出和magento的任何其他部分,其中显示了存储视图的select字段,这只是一半的解决方案。祝你好运:-)
发布于 2011-08-09 14:36:07
如果您使用,您将得到一个临时站点,您可以在那里进行这些更改,然后再将它们推向生产。
或者,您可以像上面所说的@Anton那样创建一个开发站点。您可以使用Magento的导出功能将更改移到。不是一个完整的数据库转储/导入。这样你就不会失去任何客户和订单信息。
https://stackoverflow.com/questions/6993936
复制相似问题