如何获取基于 magento 中特定主题的 cms 页面列表?
How to get list of cms pages based on a particular theme in magento?
我已经为单个商店视图的两个主题创建了 cms 页面。
我想在前端显示特定于主题的所有 cms 页面链接。
即只有那些在特定主题中使用的 cms 页面链接应该出现。
我已经使用下面的函数来提取所有的 cms 页面..
public function getCMSPages(){
$storeId = $this->helper('core')->getStoreId();
$cms = Mage::getModel('cms/page')->getCollection()
->addFieldToFilter('is_active',1)
->addStoreFilter($storeId);
$url = Mage::getBaseUrl();
$html = "";
foreach($cms as $cmspage):
$page = $cmspage->getData();
if($page['identifier'] == "no-route" || $page['identifier'] == "enable-cookies" || $page['identifier'] == "empty"){
/* do nothing */
} else {
if($page['identifier'] == "home"){
$html .= "<li><a href=\"$url\" title=\"".$page['title']."\">".$page['title']."</a></li>\n";
} else {
$html .= "<li><a href=\"$url".$page['identifier']."\" title=\"".$page['title']."\">".$page['title']."</a></li>\n";
}
}
endforeach;
return $html;
}
如何只获取特定主题的 cms 页面?
您可以在此字段上添加主题过滤器custom_theme
$storeId = $this->helper('core')->getStoreId();
$cms = Mage::getModel('cms/page')->getCollection()
->addFieldToFilter('is_active',1)
->addFieldToFilter('custom_theme','default/default')
->addStoreFilter($storeId);
我已经为单个商店视图的两个主题创建了 cms 页面。
我想在前端显示特定于主题的所有 cms 页面链接。
即只有那些在特定主题中使用的 cms 页面链接应该出现。
我已经使用下面的函数来提取所有的 cms 页面..
public function getCMSPages(){
$storeId = $this->helper('core')->getStoreId();
$cms = Mage::getModel('cms/page')->getCollection()
->addFieldToFilter('is_active',1)
->addStoreFilter($storeId);
$url = Mage::getBaseUrl();
$html = "";
foreach($cms as $cmspage):
$page = $cmspage->getData();
if($page['identifier'] == "no-route" || $page['identifier'] == "enable-cookies" || $page['identifier'] == "empty"){
/* do nothing */
} else {
if($page['identifier'] == "home"){
$html .= "<li><a href=\"$url\" title=\"".$page['title']."\">".$page['title']."</a></li>\n";
} else {
$html .= "<li><a href=\"$url".$page['identifier']."\" title=\"".$page['title']."\">".$page['title']."</a></li>\n";
}
}
endforeach;
return $html;
}
如何只获取特定主题的 cms 页面?
您可以在此字段上添加主题过滤器custom_theme
$storeId = $this->helper('core')->getStoreId();
$cms = Mage::getModel('cms/page')->getCollection()
->addFieldToFilter('is_active',1)
->addFieldToFilter('custom_theme','default/default')
->addStoreFilter($storeId);