48 votes
Accepted

What is the proper way to make an AJAX call in component?

PLEASE NOTE THAT THIS ANSWER is already a few years old and was not updated. Feel free to edit / comment if you think something is no longer exact. Abstract There is almost no really official way ...
user avatar
26 votes
Accepted

Joomla 3.x extension development tutorial for a beginner developer

I will provide the list of my bookmarked links and a list with links for Joomla Development Books, with various resources all around Joomla Development. I hope they will be useful for anyone ...
user avatar
  • 19.5k
24 votes
Accepted

How to display user profile information?

Joomla: Accessing User Info - The User Object To get user information for the current user: $user = JFactory::getUser(); It will return the User Object. Here, some of the most common User Object's ...
user avatar
  • 19.5k
20 votes

What is the proper way to make an AJAX call in component?

This is a late answer for this very well answered question, but I wanted to add this cut-to-the-chase solution for those that just need a simple way to get to their components's data with an AJAX call....
user avatar
  • 7,665
17 votes
Accepted

How to develop a Joomla module?

Learning Joomla Module Development The way I learned, was by studying and customizing the core or other 3rd party modules. Modules as concept are simpler than the components (which we could say are 2 ...
user avatar
  • 19.5k
17 votes

What tools can I use to help assist me with Joomla development?

Development General Composer Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you. ...
user avatar
  • 3,208
17 votes
Accepted

Adding drag-n-drop ordering in component

There are some prerequisites and you have to do some modifications to your view template. But you don't have to develop this feature all on your own. Prerequisites You need a column ordering of type ...
user avatar
  • 3,693
16 votes

What tools can I use to help assist me with Joomla development?

Environments: Wamp (Windows) WampServer is a Windows web development environment. It allows you to create web applications with Apache2, PHP and a MySQL database. Alongside, PhpMyAdmin allows you to ...
15 votes

How to develop a Joomla module?

Have you seen the following tutorials in the joomla documentation? http://docs.joomla.org/J2.5:Creating_a_simple_module http://docs.joomla.org/J3.3:Creating_a_simple_module In particular, make sure ...
user avatar
13 votes

Best method to check if a component is installed/enabled?

I use this way: // Check for component if (!JComponentHelper::getComponent('<component name>', true)->enabled) { ..... } <component name> - without "com_" prefix
user avatar
  • 7,415
12 votes

Migrating component from 2.5 to 3.3

Even the link you have provided in your question does not provide everything single thing that need to be change when migrating an extension. There are always fairly big API differences between each ...
user avatar
  • 26.5k
12 votes
Accepted

Available fields in Joomla XML manifest

Numerous types of form field are built into Joomla, with many usefull fields like calendar, color picker, image picker, file upload, file selection etc.: Available Fields +---------------------+-------...
user avatar
  • 13.3k
11 votes

What is the proper way to make an AJAX call in component?

Valentin answer is good but is a bit overly complex if all you need to do is add 1 or 2 ajax calls to a component that is already built. It's perfectly possible to get away with not making separate ...
user avatar
  • 887
11 votes
Accepted

Add a custom button to a core backend component

Here is a draft idea using a plugin: You need to create a system plugin (I am not getting into that) and to use the event onBeforeRender. Inside you get an instance of your Toolbar and append the ...
user avatar
10 votes
Accepted

When will the JxxxLegacy classes be deprecated?

So technically you start transitioning to the new MVC classes now - there's nothing stopping you. For example com_config in Joomla core is already using the new MVC classes. However as you probably ...
user avatar
10 votes
Accepted

How to pass variables via $.ajax to a controller

You should use Joomla's JInput class https://docs.joomla.org/Retrieving_request_data_using_JInput e.g. public function add() { // Get Joomla's input object: $input = JFactory::getApplication()-&...
user avatar
  • 1,006
10 votes

What tools can I use to help assist me with Joomla development?

Testing: If you're planning on writing a significant amount of either PHP or JavaScript code then all of the standard PHP and JavaScript development tools will be useful, regardless of the fact that ...
user avatar
  • 610
9 votes
Accepted

Is there a roadmap for Joomla development?

The developers have a roadmap at this link : http://developer.joomla.org/cms/roadmap.html which essentially states that the main focus right now is to unify and streamline the development process for ...
user avatar
  • 1,079
9 votes
Accepted

Trash Joomla Article in frontend

First of all you need to pass article ID with your request. Then you can use JTable class to update the state: public function onAjaxDeletearticle() { // Get id from the request $id = ...
user avatar
  • 4,045
9 votes
Accepted

How to resolve `Strict standards` warning for different method signatures across Joomla versions

At work we try to resolve all PHP warnings, errors and strict standards violations. In situations like this, where the signatures are different, there's no way to resolve it other using two separate, ...
user avatar
  • 1,022
9 votes
Accepted

Structure folder of sql files in my component

As Milton already wrote you specify where those SQL files are in the install manifest file. There are three different locations for install, uninstall and update. <install> <sql> ...
user avatar
  • 5,527
9 votes

Tutorial for setting up PhpStorm to work with Joomla

So I just spent the day setting up PHPStorm for the purpose of component development. Although it was a bit of work, now that I've finished the setup my life is going to be SOOOO much easier. I don't ...
user avatar
9 votes
Accepted

How to restrict access to custom component views?

You can create a system plugin to handle all the request to your custom component before sending control to the component. Use onAfterRoute event to perform all the access checking. function ...
user avatar
  • 1,791
9 votes
Accepted

Display system messages inside component instead of in the template

Ok, looks like digging a bit more I found an answer to my own question. Basically I found this plugin: http://extensions.joomla.org/extensions/style-a-design/popups-a-iframes/25240 It's not exactly ...
user avatar
9 votes
Accepted

How can I use Joomla's Cache with my components view?

So far Google-searches make me presume that joomla caches your component automatically if you add display(true,...) to your controller's display method as in following example. The example also ...
user avatar
  • 208
9 votes
Accepted

How to add meta tags to a page header based on an url parameter?

Assuming that with "Read Current Url", you mean that you want to be able to get request data, then: $jinput = JFactory::getApplication()->input; $url_parameter = $jinput->get('url_param', '...
user avatar
  • 19.5k
9 votes

What tools can I use to help assist me with Joomla development?

Frontend (template, framework etc): UIKit (framework) UIKit is only a couple of years old but has become extremely popular. It's a lightweight and modular front-end framework for developing fast and ...
user avatar
  • 19.5k
8 votes
Accepted

How do you update a website once it has gone live?

Simply install the extension or template again (without uninstalling the original) by uploading it to the Extension Manager. We typically create fully installable extensions for our sites. We install ...
user avatar
8 votes
Accepted

What's the difference between JHtml:script() and $doc->addScript?

JHtml::script has additional logic included. See http://api.joomla.org/cms-3/classes/JHtml.html#method_script for the API reference By default it will detect debug setting and browser used and load ...
user avatar
  • 5,527
8 votes
Accepted

How to develop safe Joomla extension?

One main thing which you have pointed out is SQL Injection. This is one thing which a few people I've seen seem to miss completely and start developing using non Joomla coding standards and start ...
user avatar
  • 26.5k

Only top scored, non community-wiki answers of a minimum length are eligible