Login / Logout


Views for Joomla

Module with Query Builder

"The Views module provides a flexible method for Drupal site designers to control how lists and tables of content are presented. This tool is essentially a smart query builder that, given enough information, can build the proper query, execute it, and display the results."
From Drupal page - Read full text

After one of my coworkers showed me the Drupal module I started wondering if there is a smilar Joomla module and figured there does not seem so.

Therefore, I decided to make one.

This module has a query builder. You set SQL query, set what to display, layout it and style it if necessary. Views for Joomla is basically for Joomla developers but is capable of doing the setup by copying the module parameter & paste it even if you do not know much about SQL or Joomla itself.

Views for Joomla can be a gallery module, slider module or a module displaying something from the third party component. With Views for Joomla you can store all the contents as article (if your Joomla site provides a search functionality you may need a custimised search plugin to filter some articles from the search result page).

That way you do not need to manage the content with the module manager meaning you can avoid spending time to explain which manager to update the content to your client.

If you know jQuery, the layout feature and a little bit of PHP, you can implement a jQuery image gallery plugin to your Joomla site like this:

  1. Take care of the conflict between Mootools and jQuery (you can use this Joomla extension for example)
  2. Create a category called like "Gallery"
  3. Add articles having an image to display as the gallery
  4. Create a new layout file in the folder templates/xxx/html/mod_views25 (xxx is your template folder name)
  5. Chuck in the jQuery plugin file somewhere (e.g. templates/xxx/html/mod_views25)
  6. Load the js file in the layout file
  7. Add some javascript logic and HTML structures in the layout file
  8. Create Views for Joomla module as using the layout file and displaying the articles categorised to the category


Flexibility - To be able to avoid having to use other 3rd party extensions to display the contents. After having used Joomla for about 4 years I kind of feel messy about Module Manager having many different 3rd party extensions.

Ease - To reduce the development time (investigation time to use 3rd party extensions).

Share - To enable non-tech users to do setup.


  • To enable to create SQL with some various data (e.g. Request data, User data).

    This way let us put Query field like SELECT * FROM #__abc WHERE id = {get:id} AND user_id = {user_id} AND created > {date:ymd}
  • To enable to add/update the layout file within the module manager.
  • Examples, Examples and Examples.
  • To enable Query field to have URI to fetch data from somewhere (e.g. Twitter Feed, Result from Twitter Search API). Inspired by Symphony CMS.

    This functionality may increase the page load. Hope Joomla cache functionality will work when I work on this feature.
  • To create a search plugin that avoids including the article(s) for this module.

    This plugin is a must for the website having a search inputbox because if your website uses a gallery with the combination of Joomla articles and this extension, Joomla will display the aricle(s) in the search result page.

    There is an extension which does that like this one, but it would be a good idea to provide the functionality as a part of this extension in time. 


To use Views for Joomla you need to install a module and a plugin.



I have made Drupal module that let you use subquery for Views - Download Views Subquery Module

About the Author

Hiro Nozu

Hiro Nozu is a web developer who specializes in building CMS websites with Joomla. He has been in the field for over 10 years, and has been loving every minute of it. Check out some of his past work. He developed the extension Easy Search after the 3 months of involvement in the CMS at iFactory.

Comments (0)

Leave a comment

Please login to leave a comment. Optional login below.