What is Elgg? How to install Elgg on a VPSie SSD Server?
Elgg is an open-source platform for building social sites, particularly social networking websites. This sentence may necessitate some parsing, so let’s start with the simple fact it is free to open-source software (FOSS). The nonprofit Elgg Foundation manages its development, and programmers worldwide donate code to create Elgg better.
Elgg is utilized to construct social sites. It has social networking in its DNA and provides all of the previous section’s social features. Think of the buzzwords you connect with on social websites: blogging, sharing, tagging, friending, or tweeting. Elgg does all that.
Elgg is a stage that provides the building blocks for creating great social websites. Even though you may set up Elgg and instantly start using it as a social network site, most of you will want to personalize it. Those of you that aren’t programmers can download plugins to change the look and texture or add new capabilities. For the developers, virtually every component of Elgg can be customized by writing new plugins.
The recommended VPSie server configuration for conducting Elgg is known as a LAMP stack, stands for Linux, Apache, MySQL, and PHP, and will be the most common hosting environment on the which Internet. Linux is your operating system, Apache the server, MySQL the database, and PHP is the host scripting language. Elgg can also run on other operating systems such as Windows or Mac OS X and other web servers.
With a few essential experiences setting up internet software, you can go from downloading Elgg to having a working social networking website in 10 minutes. Once it is set up, you will spend some time evaluating it, analyzing various plugins and themes, designing your website, and building new plugins (if you are a developer). This book serves as your guide to the procedure of creating a site like one of those shown in the following screenshot:
The Elgg Engine.
The Elgg system is split into two components: a core engine and plugins which extend that engine. The machine includes the basic building blocks required for a social site. It also provides the framework for developers to create new social tools through plugins. Here’s a quick overview of what the Elgg engine does on your website.
The Elgg engine handles basic user account creation and management. Registration, logging in, password resets, and email speech changes are all driven for you by the motor. Elgg also supports external authentication so that websites can integrate user accounts with other services. For example, some plugins utilize this capability to log in using their credentials from Facebook or Twitter.
Users who wish to control who has access to their data and the Elgg engine do so through a unified consent system. Every bit of content in Elgg has an entry-level assigned to it. It may be a blog post, a movie, or an individual profile element. The engine gives users tremendous flexibility to see their information through easy privacy controls and custom access lists.
The engine has all the hooks, so you can perform anything out of tweaking the default theme to composing a new one. You have control over every line of HTML, each design, each CSS statement. Chapter 9, Theming Elgg, describes how to theme Elgg.
It’s no fun to share your most recent vacation photos without people commenting on them. Elgg includes a built-in linking system applied to some machine content, whether sites, bookmarks, or videos. This is great for plugin writers since they don’t need to write any code to manage comments. It’s also useful for you as the commenting system works and looks the same manner through the site.
Your customers might not all speak the same language, and you may need your website to encourage their native languages. The Elgg engine can load separate language files based on user preference. By default, Elgg’s engine and the bundled plugins have English language documents. People in the Elgg community have generated translations for languages, ranging from German to Chinese to Basque.
A challenge for any social site is the way to keep people coming back. Another option is supplying RSS feeds so that consumers can monitor activity on your site. The Elgg engine can turn almost any page into an RSS feed. Do you want site-wide action? There’s a feed for that. How about the latest posts in a group forum? There is a feed for that. Are you looking to remain updated on the most recent comments on a blog post? There is a feed for this, too. Look for the orange feed icon near the top of the sidebar menu or on your internet browser’s location bar.
The majority of all Twitter’s traffic comes from mobile and desktop customers. How does this work? Twitter provides a web services API to write applications like Tweet Deck, which interfaces with Twitter. The applications can pull the latest tweets from Twitter and can post fresh tweets for your consumer. Elgg includes a framework for building web services APIs similar to people of Twitter or Flickr. Think of all of the possibilities: desktop customers for notifications, mobile customers for sharing photographs, mashups that use your website’s data.
Niche social network
James would like to create a social networking website for tango dancers around the globe. He wants his users to have the ability to upload tango music and playlists. They can upload videos of tango dance and speed them. Each city may have its group where members may discuss tango-associated pursuits. The groups should have a calendar that lists the coming dances and places for people to post photographs of previous events. James also wants to pull in posts from tango bloggers from his website and redistribute them as a feed to make it effortless for people to follow what people are saying locally. He, naturally, wants a slick motif that elicits the emotion of this dance.
James has selected Elgg to conduct his site. He sees a file-sharing plugin with an extension for playing MP3s on the web page since he looks through what plugins are available. He decides to rename the default blog plugin to playlists to produce and comment on them. James is delighted when he sees a movie plugin that uses the Kaltura video site as the backend. This usually means the videos won’t be stored on his server, decreasing his storage requirements.
He uses the Elgg group’s plugin for the city-focused groups combined with plugins that provide an event calendar and a photo gallery. He likes that the gallery plugin includes photo tagging and hopes the tagging notifications give people a reason to return to the website. He needs to figure out how to pull in the website feeds of tango bloggers. He discovers a plugin that displays RSS feeds user profile pages, but it requires extra development to allow it to do exactly what he wants. He appears to have a buddy with PHP experience and using somewhat free development help; he has an aggregated tango feed.
Together with theming, he has two choices: either download a free theme and modify it to match his requirements or arrangement with a web designer to build one for him. James determines the visual interface is overly important to skimp on and utilizes a freelance programmer.
Deploying the website
The only real thing left is compelling people to utilize his website. James has been innovative. By resyndicating the website feeds, he’s won the bloggers’ favor who link back to his website. Besides, he recruited a few well-known dancers from critical cities to combine. James’s final step is to contract a developer to make an invitational system plugin. Each member receives a limited number of invites, and also the only way to join is to find an invitation. This helps to create a buzz about the brand-new site.
From this instance, you see how James used Elgg and that growing and creating a social network site is more than software. A common mistake is spending a lot of time building a site and forgetting about the challenges of getting people to use it.
Four of those plugins mentioned are distributed with Elgg: document sharing, MP3 player (audio plugin), blogging, and classes. The Kaltura collaborative movie plugin by Ivan Vergés, the event calendar plugin by Kevin Jardine, the Tidypics photograph gallery plugin from the Tidypics group, and the Simple pie RSS feed plugin by Cash Costello is available from the plugin on the Elgg website.
Imagine a theoretical company named Acme Corporation. Acme has deployed software on their intranet to encourage cooperation among their workers. They’re utilizing MediaWiki because of their wiki and SharePoint for document sharing. Management and the workers aren’t satisfied with the current alternative. They still feel that it is tough to locate the right person with the right experience for a job, quickly organize ad hoc teams, or form communities of practice that cut across organizational borders. They need software to connect the present intranet software while supplying the social functionality required to address the cited limitations.
Designing and building the site
The collaborative software group decides to create a prototype with Elgg to appraise a social networking option. The first requirement is that the consumers need to log in using their Active Directory credentials. Luckily, there’s an LDAP plugin accessible, and using a little bit of configuration, it’s up and running. The second requirement is encouraging the creation of communities of practice. The group plugin distributed with Elgg provides this capability, and it is triggered on the development server.
On the list are consumer profiles to assist with the struggle of finding experience. The profile plugin that accompanies Elgg has labeled profile fields, but the development group felt they needed a much more powerful and extensible profile capability. A third-party plugin that extends the profile plugin to supply profile types and much more customizable profile fields was found on the Elgg community plugin repository.
Integration with MediaWiki and SharePoint are the remaining requirements. Another firm released a MediaWiki plugin that pulls content from this wiki and makes it accessible within Elgg. This was a fast solution. However, integration with SharePoint proves to be more difficult. The developers end up tying in upgrades on documents in SharePoint to the activity stream provided by Elgg. Now users can get updates on anything occurring in the wiki, SharePoint, or Elgg in 1 place.
A few of the programmers have been utilizing Twitter so that they attempt out Elgg’s microblogging plugin. The team enjoys its ease of use and the capability to share quick status updates, so they decide to incorporate it into the manufacturing system.
Deploying the site
Before making the site accessible, the development team determines to create accounts for all employees first. They write a plugin that extends the LDAP plugin that captures all users from the Active Directory server, generates the reports, and fills in some profile fields. To speed the new program’s adoption, particular communities that would benefit from the group’s capacity are targeted. Very soon, there is an active group for Java programmers with shared code snippets and conversation threads on unit testing, distributed versioning systems, and many other topics.
Core plugins mentioned were all groups, the wire (microblogging), and profile. The MediaWiki integration plugin composed by the MITRE Corporation can be available there. The LDAP plugin can be found from Elgg’s GitHub accounts (https://github.com/Elgg).
Mr. Harris teaches middle school history and wishes to utilize collaborative technology for a group project thought he has. He needs a web-based application that’s simple to establish and requires minimal setup. Mr. Harris wants the students to split up into groups, research a historical figure, then create an online profile for this person. The profile will include biographical information and status updates, and blogs written from the historical figure’s view. He also wants the students to utilize the website to collect resources and collaborate on the writing process.
He determines the tools he needs are blogging, groups, bookmarking, and collaborative document editing. Another requirement is that the students will need to get it at home and school, but nobody else on the Web ought to see the information. One last requirement is it must be cheap–preferably free.
Mr. Harris was at a summit on online cooperation in the classroom also recalls Elgg being said. As he looks through the plugins, he sees all the tools that he needs. Blogging, groups, profiles, status updates, and social bookmarking are all available.
The teams will use the social bookmarking plugin to store and share online tools. The groups will employ the webpages plugin to collect the information they’ve accumulated, both Internet and publication based, in one place before they create the profile write the blog posts. Mr. Harris enjoys the webpages plugin records that have been working on every web page so that he can see who’s contributing to it.
The final piece is creating the website a walled garden so that only pupils and faculty employees can log into and see the data. Luckily, Elgg got its beginning from the instructional arena and has this feature built-in. Because Elgg is a free, open-source program, Mr. Harris could do all of this without any cost other than his time.
Mr. Harris creates a spreadsheet with all the students’ information and utilizes the importer plugin to create accounts. The students like working in an environment that feels like Facebook and are comfortable with these tools. A few of the blog posts that they wrote are quite entertaining.
The webpages, groups, blog, bookmarks, profile, and cable (for consumer status) plugins are all bundled plugins spread with Elgg. The consumer importer plugin can be found from the Elgg GitHub account.
There are several resources available on the Internet that will help you use Elgg. The majority of these live on the elgg.org domain name that the Elgg Foundation runs.
The Elgg community site (http://community.elgg.org) provides a place for Elgg users and programmers to socialize. You will find group forums where people can ask questions and share expertise. The plugin repository in the community website has a vast number of plugins that programmers have contributed.
A great place to go for instruction on Elgg is the wiki at http://docs.elgg.org. It covers the installation process, administering an Elgg site, and generating plugins using Elgg’s API. The wiki also includes a list of websites based on Elgg that may inspire Elgg’s possibility. Remember that it is a wiki so that you can add to it.
The Elgg project uses Trac for bug tracking and managing release milestones (http://trac.elgg.org). The most recent development version of the code is located on GitHub (http://github.com/Elgg). For the Elgg programmer community to communicate, try out the Google group (http://groups.google.com/group/elgg-development) along with the Elgg IRC channel: #elgg on the free node. To keep yourself updated with the Elgg development team’s latest efforts, follow the elgg blog at http://blog.elgg.org and the @elgg Twitter accounts.
A few words of advice
If you are considering a different social network CMS please consider OSSN Opensource-Socialnetwork.org our fasvorite social network website makerr/CMS.
Practical advice is gained from experience in construction, creating, maintaining, and administering Elgg websites throughout the book. Before you begin installing Elgg in the next chapter, take a little bit of time to browse the general but essential information below.
As you work through the upcoming few chapters, you will see things you’d like to modify or add. Jot those down in your notes so that you have a listing of possible customizations to prioritize when you’re finished.
As you try out Elgg, you’re likely to be using the tools listed above. You will find exciting tutorials or hints about Elgg that you won’t have to use at the moment. Save links to those tools –if through browser bookmarks or web-based sites such as Delicious. Additionally, as you browse the Internet, you’re likely to encounter attributes or design elements you enjoy on other sites. Conserve those so that they could serve as inspiration as you design your website.
It is tempting to visit the Elgg community site, download 10 or 20 plugins, and set up all them at once. This is not a good idea. If one of the plugins causes a problem with your website, you will not know what the poor one is. It is much better to install and test 1 plugin at a time.
Whether looking for advice on how to do something or help repair a problem, the first stop is your Elgg wiki. Search there or check out the FAQs. If you don’t find your response, visit the Elgg community website. Search the forums to see if anyone has asked the same question before. If not, choose the group which best matches your issue (often the Technical Support group) and ask your question. Make sure you use a descriptive title and supply plenty of information.
How to install Elgg on a VPSie (VPS Server)
If you want to finish the installation fast, download the script packages in the background, use this method.
Note: Before starting the installation, make sure ionCube Loaders are enabled. For that, go to WHM and click on Tweak Settings. Please ensure that the Ioncube loader is selected for the backend copy of PHP. Now SSH to your server and enter the following commands:
wget -N http://files.softaculous.com/install.sh
chmod 755 install.sh
Full Softaculous Installation Information
- A server with cPanel (follow separate instructions for another website control panel)
- If you have a firewall, then please allow access to download all packages from *.softaculous.com
Note: Please allow access to the following domains to your firewall as these are the mirrors used to download the script packages.
126.96.36.199 # api.softaculous.com
188.8.131.52 # s1.softaculous.com
184.108.40.206 # s2.softaculous.com
220.127.116.11 # s3.softaculous.com
18.104.22.168 # s4.softaculous.com
22.214.171.124 # s7.softaculous.com
Note: Before starting the installation, make sure ionCube Loaders are enabled. You may refer to the following guide Enable_Ioncube_cPanel. Please ensure that the Ioncube loader is selected for the backend copy of PHP. Now SSH to your server and enter the following commands:
wget -N http://files.softaculous.com/install.sh
chmod 755 install.sh
Now go to WHM > Plugins (Add-Ons on older versions than 11) > Softaculous – Instant Installs.
You should now see the installation was successful for Softaculous, and you can now go ahead and install Elgg with softaculous using 1 or 2 clicks.