如何通过安装脚本更新现有的cms页面

用户名

我有这个剧本

$cmsPage = Array ( 
    'title' => 'Test Page 1',
    'root_template' => 'one_column', 
    'identifier' => 'testpage1', 
    'content' => "<p>Testowa sprawa czy działa update ? oooooooooooo</p>", 
    'is_active' => 1,
    'stores' => array(1), 
    'sort_order' => 0 
);
$collection = Mage::getModel('cms/page')->getCollection()->addFieldToFilter('identifier', 'testpage1');
$page = Mage::getModel('cms/page')->load($collection->getFirstItem()->getId());
$page->setData($cmsPage)->save();

如果存在标识符为“ testpage1”的cms页面,则脚本将创建另一个具有相同标识符的页面。有没有一种方法可以检查cmspage是否存在-如果正确,请进行更新吗?

pb149

调用时,请$page->setData($cmsPage)Mage_Cms_Model_Page对象中删除所有数据,然后将其替换为$cmsPage数组中的数据您要删除的部分数据page_id来自对象的内部$_data数组。page_id对象映射到cms_page数据库表中的列的通过删除该ID,您可以使Magento运行INSERT查询而不是UPDATE

这样的事情应该起作用:

$pageId = $collection = Mage::getModel('cms/page')->getCollection()->addFieldToFilter('identifier', 'testpage1')->getFirstItem()->getId();
$page = Mage::getModel('cms/page')->load($pageId);

$cmsPage = Array ( 
    'page_id' => $pageId,
    'title' => 'Test Page 1',
    'root_template' => 'one_column', 
    'identifier' => 'testpage1', 
    'content' => "<p>Testowa sprawa czy działa update ? oooooooooooo</p>", 
    'is_active' => 1,
    'stores' => array(1), 
    'sort_order' => 0 
);

$page->setData($cmsPage)->save();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何更新现有的.plist?

来自分类Dev

如何更新现有的Office插件?

来自分类Dev

如何通过Google脚本编辑现有的Google表单项

来自分类Dev

如何通过Google脚本编辑现有的Google表单项

来自分类Dev

如何通过php脚本将项目添加到现有的json文件中

来自分类Dev

从现有的 nodejs 安装通过 apt 更改为 NVM

来自分类Dev

如何使用现有的 jmeter 脚本创建 jmeter 脚本

来自分类Dev

卓:如何通过CloudFormation更新现有的S3存储桶策略?

来自分类Dev

如何通过JSON发布操作更新现有的Rails模型对象?

来自分类Dev

如何在现有的Lubuntu安装上安装grub?

来自分类Dev

Javascript:通过jquery.get()更新的DOM元素未响应现有的页面侦听器

来自分类Dev

如何调整现有的pdf页面大小

来自分类Dev

雪花-如何获取现有的表SQL脚本

来自分类Dev

如何识别和使用现有的光纤安装?

来自分类Dev

如何在现有的 ubuntu 机器上安装 ubuntu

来自分类Dev

如何让现有的 Ubuntu 安装覆盖 Windows 分区?

来自分类Dev

更新现有的JSON

来自分类Dev

如何生成汇总报告。jtl 和 ResultsTable.csv 通过 Taurus 执行现有的 JMeter 脚本

来自分类Dev

如何通过dom元素访问现有的地图对象?

来自分类Dev

如何通过ssh(cmus)控制现有的终端程序

来自分类Dev

如何通过 API 解决现有的 PayPal 争议

来自分类Dev

如何通过 VBA 更改 PowerPoint 中现有的 Tabstop?

来自分类Dev

如何更新现有的断开连接的实体

来自分类Dev

如何使用现有的fork更新我的github库?

来自分类Dev

如何使用PowerShell更新现有的AzureRm虚拟网络?

来自分类Dev

如何识别现有的NFS或CIFS安装,是硬安装还是软安装?

来自分类Dev

通过脚本创建新事件时,覆盖现有的Google日历事件

来自分类Dev

在新计算机上安装Ubuntu,并通过用户文件传输现有的HD

来自分类Dev

如何在现有的Ubuntu安装上以双启动方式安装Windows 8

Related 相关文章

  1. 1

    如何更新现有的.plist?

  2. 2

    如何更新现有的Office插件?

  3. 3

    如何通过Google脚本编辑现有的Google表单项

  4. 4

    如何通过Google脚本编辑现有的Google表单项

  5. 5

    如何通过php脚本将项目添加到现有的json文件中

  6. 6

    从现有的 nodejs 安装通过 apt 更改为 NVM

  7. 7

    如何使用现有的 jmeter 脚本创建 jmeter 脚本

  8. 8

    卓:如何通过CloudFormation更新现有的S3存储桶策略?

  9. 9

    如何通过JSON发布操作更新现有的Rails模型对象?

  10. 10

    如何在现有的Lubuntu安装上安装grub?

  11. 11

    Javascript:通过jquery.get()更新的DOM元素未响应现有的页面侦听器

  12. 12

    如何调整现有的pdf页面大小

  13. 13

    雪花-如何获取现有的表SQL脚本

  14. 14

    如何识别和使用现有的光纤安装?

  15. 15

    如何在现有的 ubuntu 机器上安装 ubuntu

  16. 16

    如何让现有的 Ubuntu 安装覆盖 Windows 分区?

  17. 17

    更新现有的JSON

  18. 18

    如何生成汇总报告。jtl 和 ResultsTable.csv 通过 Taurus 执行现有的 JMeter 脚本

  19. 19

    如何通过dom元素访问现有的地图对象?

  20. 20

    如何通过ssh(cmus)控制现有的终端程序

  21. 21

    如何通过 API 解决现有的 PayPal 争议

  22. 22

    如何通过 VBA 更改 PowerPoint 中现有的 Tabstop?

  23. 23

    如何更新现有的断开连接的实体

  24. 24

    如何使用现有的fork更新我的github库?

  25. 25

    如何使用PowerShell更新现有的AzureRm虚拟网络?

  26. 26

    如何识别现有的NFS或CIFS安装,是硬安装还是软安装?

  27. 27

    通过脚本创建新事件时,覆盖现有的Google日历事件

  28. 28

    在新计算机上安装Ubuntu,并通过用户文件传输现有的HD

  29. 29

    如何在现有的Ubuntu安装上以双启动方式安装Windows 8

热门标签

归档