In this first article of our tutorial series on how to create a Joomla 2.5 Content plugin, we will give you the source code for our Hello World plugin. This plugin will print "Hello World!" at the beginning of every article. As we dive further into more tutorials, we'll provide more details on what all of this code means. For now we will show you how to create the plugin, how to install the plugin, and then what it does.

Step 1: Create the Plugin Files

All Joomla 2.5 plugins contain a xml file. These xml files contain information such as who wrote the plugin and when, what files should be included with the plugin, and any plugin settings that can be adjusted. The first thing you should do is copy the following text and save it as helloworld.xml

<?xml version="1.0" encoding="utf-8"?>
<extension version="2.5" type="plugin" group="content">
        <name>plg_content_helloworld</name>
        <author>Brad Markle</author>
        <creationDate>June 18th, 2012</creationDate>
        <copyright>InMotion Hosting</copyright>
        <license>GNU General Public License</license>
        <authorEmail>bradm@inmotionhosting.com</authorEmail>
        <authorUrl>http://www.inmotionhosting.com</authorUrl>
        <version>1.0</version>
        <description>Simple Hello World Plugin that prints "Hello World" at the beginning of every article.</description>
        <files>
                <filename plugin="helloworld">helloworld.php</filename>
                <filename>index.html</filename>
        </files>
</extension>

After creating the XML file, we now need to create our php file, which does all of the work. The following code should be saved to helloworld.php

<?php

// no direct access
defined('_JEXEC') or die;

class plgContentHelloworld extends JPlugin
{
    public function onContentAfterTitle($context, &$article, &$params, $limitstart)
        {
                return "<p>Hello World!</p>";
        }
}

?>

The last file we need to create is one named index.html. You don't need to place any code in the file, you simply need to create it.

At this stage, you should have the following files:

  • helloworld.xml
  • helloworld.php
  • index.html

Compress all of these files into a zip file named helloworld.zip

Important! Keep in mind that Linux servers are case sensitive and helloworld.php is not the same as HelloWorld.php and so forth.

Step 2: Install the Plugin

Installing this plugin is like installing any other plugin. If you need any additional help, please see our article on how to install a Joomla 2.5 plugin.

Step 3: Enable and Test your new Plugin

When you initially install the plugin, it will be disabled, so be sure to enable the plugin.

hello-world-plugin-in-actionVisit any Joomla 2.5 article, and you should see "Hello World!" printed after the title, as in the following screenshot to the right.

Because we used the onContentAfterTitle event, our "Hello World" message is being shown on the content and after the title has been printed.

hide-show-intro-textPlease Note!
In order for this particular plugin to work, one more thing must be done. Because we're using the onContentAfterTitle event, we need to set the article's Show Intro Text value to Hide:

Like this Article?

Login to comment.

Your Opinion Matters

... but we need to know what you're thinking!

I'm Brad Markle, your friendly Community Support technician, and I wrote the article you're looking at now. I like to think it's perfect, but I'm sure you have some suggestions. Please, let me know what they are!

Feedback
Your Email Address
Because we'd like to talk with you!

Latest Questions

If you need some help, submit your question to our Community!
We guarantee a response within 60 minutes (8am - 9pm EST, Monday - Friday)
Ask a Question!
Recent Questions
  1. How many ways can you annoy your customers?
  2. How many ways can you annoy your customers?
  3. Warning Messages on homepage

Need more Help?

Search

Ask the Community!

Get help with your questions from our community of like-minded hosting users and InMotion Hosting Staff.

Current Customers

Chat: Click to Chat Now E-mail: support@InMotionHosting.com
Call: 888-321-HOST (4678) Ticket: Submit a Support Ticket

Not a Customer?

Get web hosting from a company that is here to help. Sign up today!