[英]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.