Переместить кнопку "Добавить новый" на вкладке продукта


Я создал пользовательский модуль, который отображает данные в таблице. Как переместить кнопку "добавить новую ставку" из заголовка модуля в сетку? Я еще ничего не пробовал, так как понятия не имею, с чего начать.

Move button

Author: Richard Parnaby-King, 2013-07-17

1 answers

Даже если я не вижу в этом смысла (но, возможно, я не настолько артистичен), это можно сделать легко. Сначала вам нужно удалить кнопку добавить из блока контейнера сетки. Это должен быть блок: {Namespace}/{Module}/Block/Adminhtml/{Entity}.php. В конце метода __construct добавьте следующую строку:

$this->removeButton('add');

Теперь вам нужно добавить кнопку рядом с кнопкой поиска. Для этого вам следует добавить метод getMainButtonsHtml в свой блок сетки. Это {Namespace}/{Module}/Block/Adminhtml/{Entity}/Grid.php

public function getMainButtonsHtml()
{
    $html = parent::getMainButtonsHtml();//get the parent class buttons
    $addButton = $this->getLayout()->createBlock('adminhtml/widget_button') //create the add button
        ->setData(array(
            'label'     => Mage::helper('adminhtml')->__('Add'),
            'onclick'   => "setLocation('".$this->getUrl('*/*/new')."')",
            'class'   => 'task'
        ))->toHtml();
    return $addButton.$html;
}

Вот и все. Счастливое выравнивание кнопок.

 12
Author: Marius, 2013-08-26 13:43:19