Joomla! 1.5のコンポーネント作成 |
![]() |
![]() |
![]() |
作者 熊川 勝 | ||||
2008年06月 12日(木曜日) 21:21 | ||||
Joomla! 1.5で、シンプルなコンポーネントを作成してみました
● シンプルなコンポーネントの場合のファイルの構成は下記の様になります[Conponent Root] このコンポーネントは、「com_joomlatest」として入ります
● 各ファイルの説明● [Conponent Root]/joomlatest.xmlの内容 <?xml version="1.0" encoding="utf-8"?> <install type="component" version="1.5.0"> <name>JoomlaTest</name> <author>Masaru Kumakawa</author> <creationDate>Jun 2008</creationDate> <copyright>(C) 2008 HSB. All rights reserved.</copyright> <license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license> <authorEmail> このメールアドレスは、スパムロボットから保護されています。アドレスを確認するにはJavaScriptを有効にして下さい </authorEmail> <authorUrl>www.hhsb.jp</authorUrl> <version>1.5.0</version> <description>Joomla! 1.5 Componet Test</description> <files> <filename>index.html</filename> <filename>joomlatest.php</filename> <filename>controller.php</filename> <folder>views</folder> </files> <administration> </administration> </install> なお、今回のサンプルは、管理側の画面を入れていないので、<administrator>の部分を空にしてありますが、この部分が無いとインストール時にエラーとなります
● [Conponent Root]/index.htmlの内容 <html><body bgcolor="#FFFFFF"></body></html>
● [Conponent Root]/controller.phpの内容 <?php defined('_JEXEC') or die( 'Restricted access' ); jimport('joomla.application.component.controller'); class JoomlaTest Controller extends JController { function display() { parent::display(); } } ?>
● [Conponent Root]/joomlatest.phpの内容 <?php defined('_JEXEC') or die('Restricted access'); require_once (JPATH_COMPONENT.DS.'controller.php'); $controller = new JoomlaTest Controller(); $controller->execute( JRequest::getCmd('task')); $controller->redirect();
● [Conponent Root]/router.phpの内容 <?php function JoomlaTest BuildRoute(&$query) { $segments = array(); var_export($query); if (isset($query['view'])) { unset($query['view']); } return $segments; } function JoomlaTest ParseRoute($segments) { var_export($segments); $vars = array(); $vars['view'] = 'test'; return $vars; } ?>
● [Conponent Root]/views/index.htmlの内容 <html><body bgcolor="#FFFFFF"></body></html>
● [Conponent Root]/views/test/index.htmlの内容 <html><body bgcolor="#FFFFFF"></body></html>
● [Conponent Root]/views/test/view.html.phpの内容 <?php defined('_JEXEC') or die( 'Restricted access' ); jimport( 'joomla.application.component.view'); class JoomlaTestViewTest extends JView { function display($tpl = null) { parent::display($tpl); } }
● [Conponent Root]/views/test/metadata.xmlの内容 <?xml version="1.0" encoding="utf-8"?> <metadata> <view title="Test"> <message><![CDATA[TYPESEARCHDESC]]></message> </view> </metadata>
● [Conponent Root]/views/test/tmpl/index.htmlの内容 <html><body bgcolor="#FFFFFF"></body></html>
● [Conponent Root]/views/test/tmpl/default.phpの内容 <?php defined('_JEXEC') or die('Restricted access'); ?> Joomla! Test Component!
● [Conponent Root]/views/test/tmpl/default.xmlの内容 <?xml version="1.0" encoding="utf-8"?> <metadata> <layout title="Test"> <message> <![CDATA[JOOMLA 1.5 COMPONENT TEST]]> </message> </layout> <state> <name>Joomla! Test</name> <description>Joomla! 1.5 Component Test</description> </state> </metadata> こちらからダウンロードできます |
||||
LAST_UPDATED2 |