Php Magento:禁用布局页面模板,如3-columns.phtml等

Php Magento:禁用布局页面模板,如3-columns.phtml等,php,magento,magento-1.7,Php,Magento,Magento 1.7,我想创建整个网站的基础上只有2列。所以我想删除所有的一栏和三栏布局 我想删除这些选项,甚至从管理区域 如何执行此操作?要从管理区域删除布局选项,必须编辑核心文件。为此,请在app\code\core\Mage\Page\etc\config.xml中评论所需布局 请确保已从前端主题中删除所有已删除的布局引用 您需要重写(无论是使用app/code/local还是使用模块)Mage\u Page\u Model\u Source\u Layout::getOptions(),如下所示: /**

我想创建整个网站的基础上只有2列。所以我想删除所有的一栏和三栏布局

我想删除这些选项,甚至从管理区域


如何执行此操作?

要从管理区域删除布局选项,必须编辑核心文件。为此,请在app\code\core\Mage\Page\etc\config.xml中评论所需布局

请确保已从前端主题中删除所有已删除的布局引用

您需要重写(无论是使用app/code/local还是使用模块)Mage\u Page\u Model\u Source\u Layout::getOptions(),如下所示:

/**
 * Retrieve page layout options
 *
 * @return array
 */
public function getOptions()
{

    // Array of layout codes that are allowed
    $allowedLayoutCodes = array('empty', 'two_columns_left', 'two_columns_right');

    if ($this->_options === null) {
        $this->_options = array();
        foreach (Mage::getSingleton('page/config')->getPageLayouts() as $layout) {

            // If layoutCode in foreach loop is allowed
            if(in_array($layout->getCode(), $allowedLayoutCodes)) {
                $this->_options[$layout->getCode()] = $layout->getLabel();
                if ($layout->getIsDefault()) {
                    $this->_defaultValue = $layout->getCode();
                }
            }

        }
    }

    return $this->_options;
}

-1用于建议编辑核心文件。绝对不能编辑核心文件。请看我的答案。