Почему у меня не получается переопределить стандартный блок?

[16 июля 2019 г.]    Российская сборка Magento 2.52.2
Magento 2: модули и услуги
magereport.com: составление перечня необходимых для установки заплаток SUPEE
#1 Павел Петрик
  • Группа: Пользователь
  • Сообщений: 7
  • Регистрация: 26.03.2010

22.07.2011 20:08

Здравствуйте, я пытаюсь заменить файл Links.php в Mage/Checkout/Block
Создал свой модуль с помощью modulecreator. Сделал все как по инструкии, но ничего не происходит. Помогите пожплуйста.
Вот мой config.xml
<?xml version="1.0"?>
<config>
        <modules>
                <My_Toplinks>
                        <version>0.1.0</version>
                </My_Toplinks>
        </modules>
        <global>
                <block>
                        <Checkout>
								<rewrite>
                                       <links>My_Toplinks_Block_Links</links>
								</rewrite>
						</Checkout>
                </block>
        </global>
</config>


Вот собственно сам links.php из My/Toplinks/Block
    <?php
	class My_Toplinks_Block_Links extends Mage_Checkout_Block_Links
    {
		public function addCheckoutLink()
    {
        if (!$this->helper('checkout')->canOnepageCheckout() || Mage::helper('checkout/cart')->getItemsCount() < 1) {
    return $this;
} 

        $parentBlock = $this->getParentBlock();
        if ($parentBlock && Mage::helper('core')->isModuleOutputEnabled('Mage_Checkout')) {
            $text = $this->__('Checkout');
            $parentBlock->addLink($text, 'checkout', $text, true, array(), 60, null, 'class="top-link-checkout"');
        }
        return $this;
    }
	}




#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

22.07.2011 20:10

Описали ли вы ваш модуль в app/etc/modules?

#3 Павел Петрик
  • Группа: Пользователь
  • Сообщений: 7
  • Регистрация: 26.03.2010

22.07.2011 20:18

Да, вот содержимое:
<?xml version="1.0"?>
<config>
    <modules>
        <My_Toplinks>
            <active>true</active>
            <codePool>local</codePool>
        </My_Toplinks>
    </modules>
</config> 


#4 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

22.07.2011 20:20

Виден ли ваш модуль в административном разделе System -> Configuration -> Advanced?

#5 Павел Петрик
  • Группа: Пользователь
  • Сообщений: 7
  • Регистрация: 26.03.2010

22.07.2011 20:21

Да, в админке модуль виден и включен.
Кеш на сайте также обновил

#6 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

22.07.2011 20:30

Попробуйте отключить кеш и написать тег checkout внутри тега block маленькими муквами.

#7 Павел Петрик
  • Группа: Пользователь
  • Сообщений: 7
  • Регистрация: 26.03.2010

22.07.2011 20:45

Исправил, но все равно не хочет работать. Я уже все пересмотрел по несколько раз - не пойму в чем дело

#8 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

22.07.2011 20:51

Надо писать blocks, а не block.

#9 Павел Петрик
  • Группа: Пользователь
  • Сообщений: 7
  • Регистрация: 26.03.2010

22.07.2011 20:55

Респект, Дмитрий, большое спасибо. Все заработало)))

Поделиться темой: