E-book details

Elgg 1.8 Social Networking. Create, customize, and deploy your very own social networking site with Elgg with this book and

Elgg 1.8 Social Networking. Create, customize, and deploy your very own social networking site with Elgg with this book and

Cash Costello

Ebook
As an updated version of the first ever Elgg book, this is an excellent resource for those interested in Elgg development due to its attention to detail, clearly written style and knowledgeable author.

- Dave Tosh, Elgg co-founder.

In his book, Cash Costello makes full use of his skills in development and communication to tackle the complex subject of Elgg social networking. This easy-to-read guide gives end users, new developers, and old pros alike a solid base to start their venture into social media with Elgg. I highly recommend it as a useful and enjoyable read.

- Brett Profitt, Elgg Lead Developer

The web is becoming increasingly social as millions of people use it to blog, share, post, 'friend', 'unfriend' (which was made the Oxford word of the year in 2009), comment, and chat. Elgg ñ your award-winning open source social networking engine ñ is tailor-made to create any social networking or social media website you can imagine.

If you want to create a social networking website from scratch using Elgg, then this book is exactly what you need.Elgg 1.8 Social Networking covers everything you need to know about building a social networking site with Elgg. It begins with instructions for installing Elgg, continues with a guided tour of its capabilities, and finishes with practical advice on deploying Elgg on a production server. And in between, it is packed with information on configuring and customizing Elgg through plugins and themes.This book is a learn-by-doing guide to creating your own social networking site. It includes three sample case studies on how Elgg could be used as an e-learning tool, an intranet application for organizations, and a niche social networking site. Step by step it takes you through the installation, configuration, and customization of Elgg. Valuable advice is sprinkled throughout the book to enable you to build your site like an expert.

For developers, this book provides a multitude of options. First, there is a tutorial-based section that systematically teaches you how to build plugins. Soon you will have ten plugins for use on your site in addition to all the knowledge you have gained. Second, if you prefer a quick overview, this book has an appendix that describes Elgg using the terminology and design patterns common in web development. Third, if you are interested in creating a theme, it also includes a design tutorial and a catalog of Elgg's view templates.

The book then goes on to describe what is involved in running a production website. It has sections on selecting a hosting provider, configuring and tuning the server, backing up the site, and dealing with spammers.
  • Elgg 1.8 Social Networking
    • Table of Contents
    • Elgg 1.8 Social Networking
    • Credits
    • Foreword
    • About the Author
    • About the Author of 1st edition
    • About the Reviewers
    • www.PacktPub.com
      • Support files, eBooks, discount offers and more
        • Why Subscribe?
        • Free Access for Packt account holders
    • Preface
      • What this book covers
      • What you need for this book
      • Who this book is for
      • Conventions
      • Reader feedback
      • Customer support
        • Downloading the example code
        • Errata
        • Piracy
        • Questions
    • 1. Social Networking and Elgg
      • Social features
        • Profiles
        • Relationships
        • Content sharing
        • Activity and notifications
        • Groups
        • Communication
      • What is Elgg?
      • The Elgg engine
        • User management
        • Privacy controls
        • Theming
        • Commenting
        • Tagging
        • Widgets
        • Internationalization
        • Feeds
        • Web services
      • The power of plugins
        • Bundled plugins
        • Third-party plugins
        • Themes
        • Building your own plugins
      • Case studies
        • Niche social network
          • Designing and building the site
          • Deploying the site
          • Plugins mentioned
        • Corporate intranet
          • Designing and building the site
          • Deploying the site
          • Plugins mentioned
        • Educational collaboration
          • Designing and building the site
          • Deploying the site
          • Plugins mentioned
      • Elgg resources
        • Elgg community
        • Elgg wiki
        • Developer resources
      • A few words of advice
        • Take notes
        • Save resources
        • Be methodical
        • Finding help
      • Summary
    • 2. Installing Elgg
      • Preparing the server
        • Checking requirements
        • Downloading the latest version
        • Extracting the files
        • Moving files to your web server directory
        • Configuring the server
        • Create the database
      • Run Elggs installer
        • Loading the database
        • Configure Elgg
        • Creating the admin account
        • All done!
      • Summary
    • 3. A Tour of Your First Elgg Site
      • Getting around
      • Registering users
      • User profiles and avatars
        • Profile information
        • Avatar
        • Profile widgets
      • Friends
      • Activity stream
      • Tools
        • Blogs
        • Bookmarks
        • Files
        • Groups
        • Pages
        • Messages
        • The wire
      • User settings
        • Your settings
        • Tools
        • Notifications
      • Administration
        • Activating plugins
        • Site categories
        • Custom profile fields
        • Default widgets
        • Site pages
        • Reported content
      • Customizing your site
        • User registration and authentication
        • Widgets
        • Friendship model
        • Roles
        • Help and support
      • Summary
    • 4. Sharing Content
      • Blogs
        • Creating a blog post
          • Embedding photos and files
          • Publishing
        • Finding and viewing
          • Search
          • Lists of blog posts
          • RSS feeds
          • Widget
        • Commenting
        • Use cases
        • Customizations
      • Bookmarks
        • Adding a bookmark
          • Bookmarklet
        • Viewing
        • Use cases
      • File
        • Uploading a file
        • Viewing
        • Use cases
        • Customizations
      • The wire
        • Posting
        • Viewing
        • Twitter integration
        • Use cases
        • Customizations
      • Summary
    • 5. Communities, Collaboration, and Conversation
      • Groups
        • Creating a group
        • Group profile
        • Membership
        • Discussion forum
        • Group tools
        • Finding groups
        • Use cases
        • Customizations
      • Pages
        • Creating pages
        • Viewing
        • Use cases
        • Customizations
      • Messages
        • Inbox
        • Composing
        • Customizations
      • Message board
        • Customizations
      • Summary
    • 6. Finding and Using Plugins
      • Plugin administration
        • Filtering and sorting
        • Plugin dependencies
        • Plugin settings
      • Finding plugins
        • Browsing the repository
        • Searching
        • Evaluating before downloading
          • Look at the plugin overview
          • Read the comments
          • Check the history
        • Custom plugins
      • Installing plugins
        • Test server
        • Copying the code
        • Activating and configuring
          • Invalid plugin?
        • Troubleshooting
      • Themes
        • Finding and installing themes
          • Free themes
        • Commercial themes
        • Custom themes
        • Installing themes
      • Major community plugins
        • Tidypics
          • Plugin profile
          • Administration
          • Uploading photos
          • Viewing photos
          • Tagging photos
        • Event calendar
          • Plugin profile
          • Administration
          • Site calendar
          • Group calendar
        • Profile Manager
          • Plugin profile
          • Adding profile fields
          • Configuring the profile fields
          • Plugin settings
      • Summary
    • 7. Creating Your First Plugin
      • What you need to know
      • Elgg developer resources
      • Setting up your development environment
        • Editing code
        • Configuring your site
      • Hello, World!
        • Plugin skeleton
          • Create your plugin directory
          • Plugin manifest
          • Start script
          • Activating the hello world plugin
        • Register for the init, system event
        • Adding a new route
        • Creating a web page
        • Update routing
        • Add to the site menu
        • Extending the page handler
        • Add a sidebar menu
        • Language support
        • Personalizing the content
        • Organizing your content into views
          • A greeting view
          • A stats view
        • Review
      • Debugging
        • Debugging to the log
        • Debugging to the screen
        • Debugging PHP through an IDE
        • Firebug and other browser development tools
        • Elgg developer tools
          • Inspect
          • Theming sandbox
      • Summary
    • 8. Customization through Plugins
      • Lesson 1: Changing wording
        • Problem
        • Solution
        • Example
          • Step 1: Create the plugin structure
          • Step 2: Find the language strings
          • Step 3: Override the language string
        • Exercise
      • Lesson 2: Modifying a section of a page
        • Problem
        • Solution
        • Example
          • Step 1: Find the view to override
          • Step 2: Create the plugin structure
          • Step 3: Edit the logo view
          • Step 4: Style the header
        • Exercise
      • Lesson 3: Adding new content to a page
        • Problem
        • Solution
        • Example
          • Step 1: Find the view to extend
          • Step 2: Create the plugin structure
          • Step 3: Build our view
          • Step 4: Make the tips random
        • Exercise
      • Lesson 4: Doing something when X happens
        • Problem
        • Solution
        • Example
          • Step 1: Find the event
          • Step 2: Create the plugin structure
          • Step 3: Write the function that sends the e-mail
        • Exercise
      • Lesson 5: Creating a custom widget
        • Problem
        • Solution
        • Example
          • Step 1: Create the plugin structure
          • Step 2: Create the widget edit view
          • Step 3: Create the widget content view
        • Exercise
      • Lesson 6: Giving your users options
        • Problem
        • Solution
        • Example
          • Step 1: Create the plugin structure
          • Step 2: Add user settings
          • Step 3: Create the toolbar view
          • Step 4: Add CSS
        • Exercise
      • Lesson 7: Adding JavaScript
        • Problem
        • Solution
        • Example
          • Step 1: Create the plugin structure
          • Step 2: Load the JavaScript file
          • Step 3: Add CSS and JavaScript initialization
        • Exercise
      • Lesson 8: Changing how Elgg does X
        • Problem
        • Solution
        • Example
          • Step 1: Create the plugin structure
          • Step 2: Create the index page
          • Step 3: Define the views
          • Step 4: Add the CSS
          • Step 5: Add a plugin setting
        • Exercise
      • Lesson 9: Collecting and storing data
        • Problem
        • Solution
        • Example
          • Overview
          • Step 1: Create the plugin structure
          • Step 2: Create the main help page
          • Step 3: Create the categories
          • Step 4: Add an administration page
          • Step 5: Create the form body
          • Step 6: Create the save action
          • Step 7: Create the help category page
          • Step 8: Create the help object view
          • Step 9: Add the help sidebar
          • Step 10: Add CSS for the topic listing page
          • Step 11: Finish the main help page
        • Exercise
      • Summary
    • 9. Theming Elgg
      • What you need to know
      • Theming basics
        • Elgg's default theme
          • HTML
          • CSS
          • JavaScript
          • Graphics
        • Views system
          • What is a view?
          • Extending a view
          • Overriding a view
          • Template language
          • Caching
          • The viewtype
          • Tools
        • CSS framework
          • Creating abstractions of common visual patterns
          • Customizing objects through extension classes
        • Adding external JavaScript and CSS
        • Menu system
          • Registering a menu item
          • Rendering a menu
      • Comparing theming in WordPress to Elgg
      • Building a theme
        • Plugin structure
        • Layout
          • Default layout
          • Page header
          • Page body layout
          • Page footer
        • Moving the search box
        • Styling the sidebar module
        • Moving the site menu to the topbar
      • Creating a mobile theme
        • Plugin structure
        • Layout
        • CSS
      • Summary
    • 10. Moving to Production
      • Selecting a server
        • Performance considerations
          • Competing for resources
          • Usage patterns
          • General guidelines for server selection
        • Hosting options
          • Shared hosting
          • Virtual Private Server
          • Dedicated server
          • Cloud hosting
          • Hosting company selection
      • Configuring a server
        • Apache
        • PHP
        • MySQL
        • Cron
        • E-mail
      • Managing the site
        • Backup
          • Code
          • Database
          • Files
          • Server configuration
          • Restoring
        • Log rotation
        • Spam
          • Registration
          • Detecting spammers
        • Web analytics
        • Daily tasks
          • Monitoring user registration
          • Reviewing reported content
          • Responding to feedback
          • Community management
      • Testing, upgrading, and moving a site
        • Testing
          • Mirroring the production site
          • Test plan
        • Upgrading
        • Moving a site
      • Performance
        • Benchmarking
          • Monitoring and data collection
            • Data
            • Tools
          • Stress testing
            • Data
            • Tools
        • Easy performance gains
        • Advanced performance tuning and scaling
          • Caching
          • Multiple servers
          • Resources
      • Reporting bugs
        • Steps to reproduce the problem
        • Elgg or plugin?
        • Reporting the bug
      • Summary
    • A. Developer's Quick Start Guide
      • Overview of Elgg as a framework
        • What is Elgg?
        • Object-oriented or procedural?
        • Does it use the Model-View-Controller pattern?
        • Convention or configuration?
        • Is it extensible?
        • What template engine is used?
      • A Model-View-Controller perspective of Elgg
        • Overview
        • Controllers
        • Model
        • Views
      • Routing
        • Code location
      • Actions
        • Code location
      • Page handlers
        • Code location
      • Framework booting
        • Code location
      • Data model
        • Entities
          • Type and subtype
          • GUID
          • Owner
          • Container
          • Access
          • Database
        • Relationships
        • Extenders
          • Database
        • Retrieval functions
        • Code location
      • Views
        • View templates
        • Page shells and layout
        • View type
        • Overriding and extending views
        • Special views
        • Code location
      • Events and hooks
        • Elgg events
        • Plugin hooks
        • Code location
      • Plugins
        • Initialization
        • Plugin order
        • Conventions
      • Themes
        • Code location
      • Activity stream
        • Code location
      • Notifications
        • Code location
      • Internationalization and localization
        • Code location
      • Lightning round
        • Authentication
        • Caching
        • Configuration
        • Debugging and logging
        • JavaScript
        • Menus
        • Private settings
        • Search
        • Security
        • Session handling
        • Unit tests
        • Web services
        • Widgets
      • Summary
    • B. Views Catalog
      • Using views
      • Page structure
        • Shells
        • Layouts
        • Elements
          • Topbar
          • Header
          • Sidebar
          • Footer
          • Owner block
          • Status messages
          • Comments
          • Search box
        • Components
          • Gallery
          • Image block
          • List
          • Module
      • Navigation
        • Breadcrumbs
        • Pagination
        • Menus
          • Topbar menu
          • Site menu
          • Page menu
          • Footer menu
          • User hover menu
          • Entity menu
        • Tabs
      • Forms
        • Input
          • Access
          • Buttons
          • Checkboxes
          • Date
          • Drop-down selector
          • File upload
          • Hidden input
          • Large textarea
          • Password
          • Radio buttons
          • Textbox
          • User pickers
        • Output
          • Date
          • E-mail address
          • Link
          • Tag cloud
          • Tags
          • Text
        • The form
      • Users, groups, and objects
      • Activity stream
      • Likes
        • Like this
        • List users
      • Widgets
      • Administration
      • Summary
    • Index
  • Title: Elgg 1.8 Social Networking. Create, customize, and deploy your very own social networking site with Elgg with this book and
  • Author: Cash Costello
  • Original title: Elgg 1.8 Social Networking. Create, customize, and deploy your very own social networking site with Elgg with this book and ebook
  • ISBN: 9781849511315, 9781849511315
  • Date of issue: 2012-02-01
  • Format: Ebook
  • Item ID: e_3cir
  • Publisher: Packt Publishing