で注文リストビューにカスタムアイコンを追加します。私は、オーダーのリストビューに新しいボタンを追加したいと思いますが、私はそれを行う方法を見当がつかない:はPrestaShopの
私はそれをしたいです新しいアップグレードでは削除されません。
編集:この新しいボタンは新しいブラウザウィンドウを開き、PrestaShopの機能とは完全に独立しています。しかし、私はこのツールバーの行に入れたいと思います。
ありがとうございました!
で注文リストビューにカスタムアイコンを追加します。私は、オーダーのリストビューに新しいボタンを追加したいと思いますが、私はそれを行う方法を見当がつかない:はPrestaShopの
私はそれをしたいです新しいアップグレードでは削除されません。
編集:この新しいボタンは新しいブラウザウィンドウを開き、PrestaShopの機能とは完全に独立しています。しかし、私はこのツールバーの行に入れたいと思います。
ありがとうございました!
オーバーライドで実行できます。あなたのoverrides/controllers/admin/
フォルダにAdminOrdersController.php
と呼ばれるファイルを作成し、次の行を追加します。これは迅速なモックアップであることを
<?php
class AdminOrdersController extends AdminOrdersControllerCore
{
public function initPageHeaderToolbar()
{
parent::initPageHeaderToolbar(); // this will assign native icons
// This is where you add you custom icon
$this->page_header_toolbar_btn['my_custom_icon'] = array(
'href' => self::$currentIndex.'&mycustomaction&token='.$this->token,
'desc' => $this->l('My custom action', null, null, false),
'icon' => 'process-icon-save'
);
}
public function initProcess()
{
parent::initProcess();
if (Tools::getIsset('mycustomaction')) {
if ($this->tabAccess['view'] === '1') {
$this->display = 'mycustomaction';
$this->action = 'mycustomaction';
}
else
$this->errors[] = Tools::displayError('You do not have permission to edit this.');
}
}
public function initContent()
{
parent::initContent();
if ($this->display == 'mycustomaction')
$this->content.= $this->renderMyCustomAction();
}
public function renderMyCustomAction()
{
// this is where you render your custom page.
}
}
注意を。それはinitContent
、あなただけのアイコンは、新しいページを開くだけinitPageHeaderToolbar
方法を残し、右href
属性を提供したい場合は、あなたがinitProcess
を削除することができ
UPDATE
:)が、動作するはずですし、 renderMyCustomAction
方法。他の誰かが役に立つと思ったら元の返信に残しておきます。
現在、あなたの質問は広すぎます。このボタンの目的を説明してください。 –