Magento静态CMS块存储在哪里?

时间:2011-02-08 11:51:00

标签: php mysql magento

我无法在数据库中定位静态CMS块。他们在哪儿?

我需要知道的原因是,当我将数据库和我的主题文件从本地安装移动到我的在线dev-install时,该块不会更新,我需要为每个安装重新创建它们。

后续问题是,如何以编程方式创建它们?

编辑:如果有人发现问题不清楚,我知道如何在Magento后端制作静态块。问题是它们存储在Magento数据库/文件系统中的哪个位置?

2 个答案:

答案 0 :(得分:20)

块存储在数据库表cms_block中。但是,如果要以编程方式创建它们,则无需知道。

$newBlock = Mage::getModel('cms/block')
          ->setTitle('This is the title')
          ->setContent('This is the content')
          ->setIdentifier('an-identifier')
          ->setIsActive(true)
          ->setStores(array(1)) // see Sergy's comment
          ->save();

答案 1 :(得分:7)

它们在db表cms_block中就像发条geek所说的那样,但请注意,如果你通过sql将它们添加到db中(例如使用模块安装脚本),你还需要添加新创建的将id和商店ID阻止到表cms_block_store,否则该块将不会出现。