MVC 経由で Joomla2.5 コンポーネントを作成しようとしています。エントリーポイントの task=jump から view.xml.php で定義された mydisplay() メソッドにコントローラを向けたい。ありがとう。
/ROOT/components/com_api/views/api/view.xml.php
<?php
defined('_JEXEC') or die('Restricted access');
// import Joomla view library
jimport('joomla.application.component.view');
/**
* XML View class for the Api Component
*/
class ApiViewApi extends JView
{
// Overwriting JView display method
function mydisplay($tpl = null)
{
//echo JRequest::getVar('task');
//$this->get('Ister');
// Assign data to the view
$this->msg = $this->get('xCredentials');
// Check for errors.
if (count($errors = $this->get('Errors')))
{
JError::raiseError(500, implode('<br />', $errors));
return false;
}
// Display the view
parent::display($tpl);
}
}
?>
ROOT/components/com_api/api.php(エントリーポイントコントローラー)
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import joomla controller library
jimport('joomla.application.component.controller');
// Get an instance of the controller prefixed by Api
$controller = JController::getInstance('Api');
// Perform the Request task
$controller->execute(JRequest::getCmd('task'));
$controller->redirect();
?>
ROOT/components/com_api/controller.php(タスク=ジャンプのコントローラー)
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import Joomla controller library
jimport('joomla.application.component.controller');
/**
* Api Component Controller
*/
class ApiController extends JController
{
function jump()
{
//parent::display();
/* invoke mydisplay method from view.xml.php, located in views*/
}
}
task=jump を実行した後、view.xml.php で mydisplay() メソッドを呼び出すにはどうすればよいですか?