簡體   English   中英

如何在Magento中獲取cms頁面列表?

[英]How to get a list of cms pages in Magento?

我正在嘗試做什么

我創建了一個管理表單,用戶需要從下拉列表中選擇一個CMS頁面。

我試過的

$form->addField('cms_page_id', 'select', array(
'label'     => Mage::helper('custom/data')->__('CMS Page'),
'class'     => 'required-entry',
'required'  => true,
'name'      => 'cms_page_id',
'values'    => Mage::getSingleton('cms/page')->toOptionArray(),
'value'     => $this->getCmsPageId()
));

我們的想法是代碼從CMS模型中獲取一個選項數組。 但是“toOptionArray”是'cms / page'模型的無效函數。

我的問題

如何在Magento的管理表單中獲取CMS頁面的選項數組?

使用您的代碼,您正在加載新的cms頁面模型。 要獲取集合,請使用以下代碼和toOptionArray()至少返回一些內容:

Mage::getModel('cms/page')->getCollection()->toOptionArray()

帶有鏈接的CMS Pages數組

$cms_arr = Mage::getModel('cms/page')->getCollection()->toOptionArray();   
$cms_pages[""] = "-Select CMS Page-"; 
foreach($cms_arr as $cms){ 
    $url = $this->getUrl($cms["value"]); 
    $cms_pages[$url] = $cms["label"]; 
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM