Joomla! Social Networking with JomSocial

By Kwasi Boateng , Beatrice A. Boateng
    Advance your knowledge in tech with a Packt subscription

  • Instant online access to over 7,500+ books and videos
  • Constantly updated with 100+ new titles each month
  • Breadth and depth in over 1,000+ technologies
  1. Not Another Social Networking Site

About this book

JomSocial is a social publishing platform for Joomla! content management system. It allows you to connect with friends, integrate videos, follow users' activity stream, share photos, create groups, and customize your brand.

JomSocial is an out-of-the-box extension that enables a Joomla! website administrators to set up a social network with ease, and customize it to meet the needs of a site. By the end of the book, the reader will have built a good looking, fully functional social networking site using this hands-on guide.

Social networks have become ubiquitous in the 21st Century and have changed the way we communicate. No longer used to simply keep in contact with friends, they are used by multimillion dollar businesses to promote new products, discuss the latest ideas, and receive customer feedback on a much more informal platform.

This practical tutorial will guide the reader through the installation of JomSocial on a Joomla! platform, to configure it for complete integration with Joomla!, and help to walk through processes for integrating other key Joomla! plugins into JomSocial as applications for interaction in an online social networking environment. The guide wraps it all up by hooking up our JomSocial-enabled social network with Facebook and Twitter using identifiable Joomla! modules

Publication date:
July 2010


Chapter 1. Not Another Social Networking Site

This chapter introduces us to JomSocial, a Joomla! social networking extension. It covers the following:

  • An overview of social networks

  • Why you may want to create your own social network

  • Social networking principles

  • Building social networks with JomSocial

  • An overview of the JomSocial component of Joomla!

  • And a quick installation of Joomla!


Overview of social networking

Just when you think online social networks are old fads, think again. In 2009, the United States' Defense Advanced Research Projects Agency (DARPA) launched a network challenge to celebrate the 40th anniversary of ARPANET, the precursor of the Internet. On the morning of December 5, 2009, DARPA launched ten, eight-foot red weather balloons across the United States. The idea was to determine how information goes viral and moves through social networks, and how people can organize themselves through online networks. The task was for people to use online networks to find all ten weather balloons. There was a $40,000 price tag for the winner. With over 4,000 registered teams, the race was on.

The Massachusetts Institute of Technology (MIT) research team used an incentive-based social network model to encourage people to report on their balloon sightings, and within nine hours, all ten balloons were located. With some help from the Facebook and Twitter networks, and with a lot of money at stake, social networks won the day!

This event showcased the power of social networking sites and communities. It proved how effective and efficient online social networks can be. Over the last seven years, we have seen the emergence of online social networks in the form of MySpace, Facebook, Ning, and Twitter to mention just the notable ones.

MySpace ( was established in 2003 and purchased by News Corp in 2005, and Facebook (, on the other hand, was founded in 2004. Both Facebook and MySpace were developed to primarily facilitate information sharing through social networks. Ning (, set up in 2005, facilitates the creation of groups or communities within social networks. By 2006, the social networking cyberscape had evolved with the establishment of Twitter, a social networking tool for sharing information in snippets.

There is a growing interest among individuals, businesses, organizations, and communication experts in learning how to set up web-based networks. Joomla! and the JomSocial extension provide cost-effective software solutions for those interested in setting up their own social networking site for whatever reason: business, fun, or venturing into the world of online business startups.


Why create your own social network?

Wouldn't it be fulfilling to know how to build your own social networking site? Since its inception, the Internet has opened up new opportunities for setting up alternate forms of communication. Sites integrated with social networking applications are more dynamic because social networks provide some intrinsic value for the following reasons:

  • Internet users are increasingly becoming platform-agnostic ("Introduction to Mass Communication: Media Literacy and Culture", Baran, S. J. (2009), McGraw-Hill Education); we do not have preferences for where we access our media content, and social networking sites are proving to be versatile in providing all kinds of media content.

  • Social networking sites provide users with the ability to personalize the content of their accounts.

  • Social networking sites allow individuals and businesses to connect directly to friends and customers or audiences.

  • Social networks differ from regular websites in three fundamental ways:

Facebook, Twitter, and MySpace are the most popular of such social networks that are used to cater to the needs of individuals, businesses, and organizations. However, the need to integrate social networking into personal, corporate, and organizational websites independent of mammoth social networking sites, such as Facebook, Twitter, and MySpace, make Joomla! and JomSocial invaluable. Also, knowing how to set up such sites provides the opportunity for individuals and organizations to explore innovative ways of communicating.


Principles for setting up a social networking site

A social networking site should provide a mechanism for identity authentication. It should have safety and privacy tools for all users. For more details, please refer to Joint Statement on Key Principles of Social Networking Sites Safety:

Social networks are complex systems that need to:

  • Engage the user quickly—the immediate user experience is essential. The user interface has to be simple and not distracting, allowing users to add content and change user preference settings.

  • Generate new content through the implementation of dynamic applications. This fosters change and interactivity.

  • User profile section needs to be customizable to reflect a user's persona. More details can be found at "3 Principles of Social Network Design", David Skul (2007):

A JomSocial social networking site will allow us to do all of these things, and enable us to set up independent social networking sites. And where necessary, JomSocial allows a developer to seamlessly integrate content originating from other mega social networking sites such as Facebook and Twitter into our JomSocial site.


An overview of JomSocial

JomSocial was launched in 2007 by Slashes and Dots Sdn. Bhd., a company based in Malaysia. The company started by developing applications for PalmOS. After one of its products won the Palmsource Enterprise/Productivity Award in 2004, the company began developing components for the Joomla! content management system. The Slashes and Dots are also the developers of NiceTalk, MyBlog, JomWiki, and JomComment.

JomSocial is a commercial Joomla! extension. According to the license agreement, modification of the source code by developers is allowed. However, any form of distribution requires permission from Slashes and Dots (

JomSocial can be purchased through the website ( The standard version, which comes with a link back to JomSocial, is $99, and the professional version, without the JomSocial link, is $149. You can also obtain a trial version for $1 for 30 days, and pay for a full version after the trial period. The product features vary based on the type of license purchased. You may visit the JomSocial website for updated fee and license agreement information.

Building social networks with JomSocial

After a few years of development, JomSocial has become one of the leading Joomla! social networking extensions. In May 2010, JomSocial was recognized and honored as the best Joomla! application at the 2010 CMS Expo. It is a fully-customizable component, with the ability to:

  • Create and manage your own profile

  • Add applications to your profile

  • Integrate with other third-party components

  • Establish a friend system and send private e-mails to friends, invite friends to join the network, and connect with others within the network

  • Set up privacy settings for your entire profile and/or applications

  • Integrate other notable social networking sites like Facebook, and connect to Twitter and pull tweets from your Twitter account into your JomSocial profile

  • Create photo albums and video archives—users can also make comments about your media

  • Tag photos in your album

  • Archive member activities

Through the use of integrated third-party applications for Joomla!, JomSocial can be extended to include:

  • Twitter feeds

  • Blogs

  • Event listing

  • Forum posts

  • Google ads

Another great JomSocial feature is the ability to create groups.

  • Groups can have their own pages

  • The owner of the group can set the membership access level (private or public)

  • Group bulletins can be created

  • Users can subscribe to group activity streams

JomSocial provides all of the features necessary to create a social network around vibrant communities.

Social Networks on JomSocial

JomSocial has been adopted by several Joomla!-driven websites. It has become the preferred social networking extension for Joomla!. The newly-designed LINUX.COM uses it for its Linux community, as shown below:

The gibLink website ( is a social networking and marketing site that uses JomSocial for business connections and product promotions. A sample of the gibLlink website can be seen below: is a radio station aggregator. This website allows users to share their favorite radio stations and other interesting facts about themselves. A sample screenshot from this website is shown below: is a website dedicated to D-Day. Users can share their stories, pictures, audio clips, and videos about their memories of Normandy. Click on the PEOPLE link from the website's home page, to see JomSocial, as shown in the following screenshot.


Let's get started: Joomla! Installation

Throughout this book, we will build a social networking site for mobile phone applications. We will first build the site locally, and then migrate it to a remote host at If you already have a Joomla! 1.5.x-driven website, you can use the steps in the subsequent chapters to extend your site by using JomSocial.

The requirements for installing Joomla! on a localhost and on a remote server of a hosting company are similar. The minimum requirements needed for Joomla! and JomSocial to work are:

  • MySQL 4.1 or above

  • Apache 1.3 (with mod_mysql, mod_xml, and mod_zlib)

  • PHP 5 with:

    • GD library (at least v1.8 with libjpeg)

    • Curl library

    • fsockopen

    • exec

    • FFMPEG

  • We recommend that you allocate at least 64 MB of memory to PHP

For remote hosting, you need to ensure that the server environment meets the minimum requirements for installation.

Let's set up the localhost development environment.

Setting up the localhost

To create a development environment that meets the minimum installation requirements, we will use XAMPP. Other alternatives are EasyPhP and WAMP. XAMPP is a free and cross platform software package containing the Apache web server, MySQL database and Perl programming language (

  1. Go to

  2. Click on XAMPP in the menu.

  3. Scroll down and click on XAMPP for Windows. We will download xampp-win32-1.7.3.exe (the latest version, at the time of writing).


    You may have to download the appropriate version of XAMPP for your computer's operating system (Mac or Linux).

  4. Save the file to your desktop.

Installing XAMPP

Before you can install the software on your computer, you will need to have administrative privileges. Follow these steps:

  1. The XAMPP download looks like the icon shown in the following image. Click on the icon to install XAMPP.

  2. Click on Run.

  3. Click on Install. XAMPP will create a folder on your C drive. This process takes a few minutes.

  4. After the files are extracted, the XAMPP installation wizard will open a command window with the following messages:

    • Should I add shortcuts to the startmenu/desktop? (y/n): Type y and press the Enter key on your keyboard.

    • Should I locate the XAMPP paths correctly? Should I proceed? (y/x=exit setup): Type y and press the Enter key on your keyboard.

    • Should I make a portable XAMPP without drive letters? NOTE: you should use drive letters, if you want to use services. With USB sticks, you must not use drive letters. Your choice (y/n): Enter n and then press the Enter key on your keyboard.

    • Allow the system to run. When done, press Enter.

    • The default zone is displayed. We can always change the settings after setup.

    • The final message will provide us with other options to edit. Enter x and then press Enter to close the command window.


    Keep the default selections and press the Enter key on your keyboard throughout the process.

XAMPP is installed. You will see an XAMPP Control Panel shortcut on the desktop. Click on the shortcut to open the XAMPP Control Panel.


If there is no shortcut on your desktop, go through your Programs menu to find XAMPP. Click on it to activate it.

When the XAMPP Control Panel Application opens:

  • Click on the Start buttons next to Apache and MySql. Notice the highlighted text Running when you click on the buttons.

Let's review what we just did.

We have just installed a development server on our computer. Go to your C drive and you will see the xampp folder. Click on the folder to see all of the files that have been installed on your machine.

Downloading Joomla!

  1. To download and save the latest full package version (1.5.x), go to the Joomla! website ( and click on Download Joomla! Open source content management system.

  2. Create a folder in c:\xampp\htdocs and name it joomla. Extract the Joomla! files to that folder. The htdocs folder is the equivalent of a www root folder, or a public_html folder on a remote server provided by a hosting company. The Joomla! files can be seen at: c:\xampp\htdocs\joomla.


    You can either use the default file extractor on your computer to extract the files, or use an open source alternative, such as 7-Zip (

Installing Joomla! on localhost

To install Joomla! locally, we need a database. Do the following to create the database locally:

  1. Go to the XAMPP Control Panel. Click on the Admin button of MySQL. When the browser opens, type in a database name and click on Create, as llustrated in the following screenshot. In this example, our database name is joomla15.

  2. Close the window after the database has been created.

  3. Open a browser and go to http://localhost/joomla/ and press Enter. This will take us to the Joomla! Installation wizard, at the following address: http://localhost/joomla/installation/index.php.

  4. Go through the installation process. Under database configuration, enter the settings as shown in the following screenshot.

  5. Leave the default settings for FTP, as this is just a local installation.

  6. Enter the Site Name, Your E-mail, and Admin Password values, and select Install Sample Data.

  7. Go to c:\xampp\htdocs\joomla and delete the installation folder. We are ready to preview our installation locally. Point your browser to http://localhost/joomla/. Congratulations, you just installed Joomla!.



This chapter explored the importance of social networks, and why we may want to create one. We introduced JomSocial, a Joomla! extension for creating social networks. We wrapped up the chapter by creating a development environment on our computer and then installing Joomla!.

All aboard! Let's build a social networking site!

About the Authors

  • Kwasi Boateng

    Kwasi Boateng is an Assistant Professor at the School of Mass Communication in the University of Arkansas at Little Rock. He has a doctorate from The School of Media Arts and Studies (formerly the School of Telecommunications); Scripps College of Communication, Ohio University. Kwasi has research interest in new technologies in electronic communication and open source tools for online communication. He has authored various articles, book chapters, and a book on electronic media. He teaches courses on web design, motion graphics, media and culture, and the Internet regulation and policy. He has worked with students to build websites for non-profit organizations using open source content management systems, and organizes workshops to introduce high and middle school students to open source tools for online communication.

    Browse publications by this author
  • Beatrice A. Boateng

    Beatrice A. Boateng is an Assistant Professor in the department of pediatrics, College of Medicine at the University of Arkansas for Medical Sciences. She is also the co-director of faculty development in the department of pediatrics. She holds a doctorate from the Instructional Technology program, College of Education at Ohio University. Beatrice's research interest is in the millennials, instructional technology in medical education, and open sources source tools for education. She has authored articles, book chapters, and a book on technology applications in rural schools.

    Browse publications by this author
Book Title
Access this book and the full library for FREE
Access now