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 ...
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 ...
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 ...
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....
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 ...
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.
...
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 ...
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 ...
Community wiki
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 ...
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
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 ...
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
+---------------------+-------...
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 ...
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 ...
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 ...
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()-&...
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 ...
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 ...
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 = ...
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, ...
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>
...
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 ...
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 ...
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 ...
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 ...
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', '...
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 ...
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 ...
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 ...
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 ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
development × 360joomla-3.x × 158
component × 102
plugin × 58
extensions × 33
php × 32
joomla-api × 32
module × 24
joomla-2.5 × 23
custom-component × 23
mvc × 19
templates × 12
database × 12
mysql × 10
joomla-3.3.x × 10
form × 10
joomla-3.4 × 8
jquery × 8
ajax × 8
system-plugin × 8
jform × 7
javascript × 6
user × 6
custom-module × 6
cms × 6