web-dev-qa-db-ja.com

コンポーネントビューページにjoomlaのデフォルトツールバーを追加する

私はjoomla 2.5と3の両方のmvcコンポーネントを開発しています。多くのコンポーネントで、管理者側の設定ページの上部に新規、編集、公開、ゴミ箱、オプションなどのjoomlaのデフォルトのコマンドボタンを追加しました。例えば。コンポーネント->ウェブリンク->リンクページに行くと、右上にあるコマンドボタンについて話している。

では、コンポーネントの設定ページにコマンドボタンを追加するにはどうすればよいですか?クリックすると、それぞれのアクションが実行され、それぞれのビューが表示されます。たとえば、「新規」ボタンをクリックすると、MVCコンポーネントのエントリの追加ビューがそのまま表示されます。

それで、管理者側のコンポーネントの設定ページに完全に機能するjoomlaのコマンドボタンを追加するにはどうすればよいでしょうか。

10
dev-m

ベストプラクティスは、Viewクラス内にaddToolBar()メソッドを作成し、次にJToolBarHelperクラスを使用してコマンドボタンを作成することです。

_protected function addToolBar()
{
  JToolBarHelper::addNew('yourcontroller.add');
  JToolBarHelper::editList('yourcontroller.edit');
}
_

したがって、これらは指定されたコントローラーでタスク/関数「add」/「edit」を呼び出します。次に、ビューの$this->addToolBar()メソッドでdisplay()を呼び出すだけです。

リファレンス コンポーネントのツールバーの作成

12
Dmitry Rekun

ボタンを表示するビューに送信するフォームがあることを確認する必要があります。フォーム名はadminFormにする必要があります。フォームにはtaskという名前の非表示フィールドと動的に生成されたトークンも必要です。私は頭の上からAPIを思い出すことはできませんが、JHtml::_('form.token');のようなもの(私が間違っている場合は、誰かがこれを修正してください)

これでうまくいきます。

5
Mathew Lenning