【问题标题】:Magento - programmatically save static block contentMagento - 以编程方式保存静态块内容
【发布时间】:2012-06-17 07:56:45
【问题描述】:

我有一个静态块,我想通过一个通过 cron 运行的脚本来更新它。

我发现了如何以编程方式创建或检索块,但不知道如何编辑现有块。

这适用于检索块:

// Retrieve the layout object
$layout = Mage::getSingleton('core/layout');

// Generate a CMS block object
$block = $layout->createBlock('cms/block');

// Set the block ID of the static block
$block->setBlockId('my_block_id');

// Write the static block content to screen
echo $block->toHtml();

我想我在这里遗漏了一些简单的东西,但是在这个块上执行 setContent() 然后 save() 只会导致“Invalid method Mage_Cms_Block_Block::save”

【问题讨论】:

    标签: php magento static-block


    【解决方案1】:

    按区块ID:

    Mage::getModel('cms/block')->load($id)
      ->setData('content', 'Example content')
      ->save();
    

    按标识符:

    Mage::getModel('cms/block')
      ->getCollection()
      ->addFieldToFilter('identifier', 'my_block_id')
      ->load()
      ->setData('content', 'Example content')
      ->save();
    

    【讨论】:

      【解决方案2】:
      $identifier = 'footer_links';
      Mage::getModel('cms/block')
          ->load($identifier, 'identifier')
          ->setData('content', 'Your new block content')
          ->save()
      ;
      

      或者如果你知道区块ID:

      $id = 1;
      Mage::getModel('cms/block')
          ->load($id)
          ->setData('content', 'Your new block content')
          ->save()
      ;
      

      【讨论】:

      • 谢谢,这很好用,diNord 只是打败了你,所以我会给他接受!
      【解决方案3】:

      使用 magento 脚本更新和添加静态块

      function createBlock($blockData) {
      
      $block = Mage::getModel('cms/block')->load($blockData['identifier']);
      $block->setTitle($blockData['title']);
      $block->setIdentifier($blockData['identifier']);
      $block->setStores(array($blockData['storeId']));
      $block->setIsActive($blockData['active']);
      $block->setContent($blockData['content']);
      $block->save();
      

      }

      请参考我的博客一步一步的解释

      http://www.pearlbells.co.uk/how-to-create-and-update-the-static-blocks-using-magento-script/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-05
        • 1970-01-01
        • 2023-03-17
        • 1970-01-01
        • 2012-12-07
        • 2011-10-17
        • 1970-01-01
        • 2015-05-09
        相关资源
        最近更新 更多