Archived

Difference between revisions of "Developing a MVC Component/Developing a Basic Component"

From Joomla! Documentation

< Archived:Developing a MVC Component
m (left out 1.6 and 1.7; we only use 2.5)
m (→‎Introduction: eliminate heading)
(4 intermediate revisions by 3 users not shown)
Line 2: Line 2:
 
{{Chunk:Developing a Model-View-Controller (MVC) Component for Joomla!2.5 - Contents}}
 
{{Chunk:Developing a Model-View-Controller (MVC) Component for Joomla!2.5 - Contents}}
  
== Introduction ==
 
 
This tutorial is part of the [[Developing a Model-View-Controller (MVC) Component for Joomla!2.5]] tutorial.
 
This tutorial is part of the [[Developing a Model-View-Controller (MVC) Component for Joomla!2.5]] tutorial.
  
Line 121: Line 120:
 
</source>
 
</source>
 
</span>
 
</span>
 
== Zips ==
 
Download the zip file for this Part:
 
[http://www.leyar.com/joomlaorg/part01.zip]
 
  
 
== Navigate ==
 
== Navigate ==
  
[[Developing a Model-View-Controller (MVC) Component for Joomla!2.5 - Part 02|Next: Adding a view to the site part]]
+
[[J2.5:Developing_a_MVC_Component/Adding_a_view_to_the_site_part|Next: Adding a view to the site part]]
  
 
== Contributors ==
 
== Contributors ==

Revision as of 17:49, 31 August 2013

This page has been archived. This page contains information for an unsupported Joomla! version or is no longer relevant. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.


This tutorial is part of the Developing a Model-View-Controller (MVC) Component for Joomla!2.5 tutorial.

The first basic component[edit]

Let's create a Hello World! component.

Public display[edit]

With your favorite file manager and editor, create a file yoursite/components/com_helloworld/helloworld.php containing

Hello world

You can test this basic component by putting index.php?option=com_helloworld in your browser address (don't forget to prefix this address with your Joomla!2.5 installation path) after installing this component.

Administrator management[edit]

With your favorite file manager and editor, create a file yoursite/administrator/components/com_helloworld/helloworld.php containing

Hello world administration

You can test this basic component by putting administrator/index.php?option=com_helloworld in your browser address after installing the component.

Packaging an installation zip file[edit]

If you have used Joomla before reading this tutorial, you have noticed that extensions are installed using a compressed file containing all the things which are needed for installing and uninstalling them.

With your favorite file manager, create a directory (outside your Joomla installation directory) containing

admin/sql/updates/mysql/0.0.1.sql is an empty file allowing to initialise schema version of the com_helloworld component.

admin/sql/updates/mysql/0.0.1.sql

Create a compressed file of this directory or directly download the archive and install it using the extension manager of Joomla. You can test this basic component by putting index.php?option=com_helloworld or administrator/index.php?option=com_helloworld in your browser address. You can also notice that the Hello World! component is visible in the administrator site of your Joomla installation under the Components menu.

helloworld.xml

<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="2.5.0" method="upgrade">

	<name>Hello World!</name>
	<!-- The following elements are optional and free of formatting constraints -->
	<creationDate>November 2009</creationDate>
	<author>John Doe</author>
	<authorEmail>john.doe@example.org</authorEmail>
	<authorUrl>http://www.example.org</authorUrl>
	<copyright>Copyright Info</copyright>
	<license>License Info</license>
	<!--  The version string is recorded in the components table -->
	<version>0.0.1</version>
	<!-- The description is optional and defaults to the name -->
	<description>Description of the Hello World component ...</description>

	<update> <!-- Runs on update; New in 2.5 -->
		<schemas>
			<schemapath type="mysql">sql/updates/mysql</schemapath>
		</schemas>
	</update>

	<!-- Site Main File Copy Section -->
	<!-- Note the folder attribute: This attribute describes the folder
		to copy FROM in the package to install therefore files copied
		in this section are copied from /site/ in the package -->
	<files folder="site">
		<filename>index.html</filename>
		<filename>helloworld.php</filename>
	</files>

	<administration>
		<!-- Administration Menu Section -->
		<menu>Hello World!</menu>
		<!-- Administration Main File Copy Section -->
		<!-- Note the folder attribute: This attribute describes the folder
			to copy FROM in the package to install therefore files copied
			in this section are copied from /admin/ in the package -->
		<files folder="admin">
			<!-- Admin Main File Copy Section -->
			<filename>index.html</filename>
			<filename>helloworld.php</filename>
			<!-- SQL files section -->
			<folder>sql</folder>
		</files>
	</administration>

</extension>

site/helloworld.php

Hello World

admin/helloworld.php

Hello World administration

index.html common to all folders

<html><body bgcolor="#FFFFFF"></body></html>

Navigate[edit]

Next: Adding a view to the site part

Contributors[edit]