Moodle gives you the power to create and customize feature-rich plug-ins. If you can write Moodle plug-ins, you can make it do just about anything. From making the site easier to administer, to new features, to completely changing the way it looks; plug-ins are the method Moodle offers to customize and extend its functionality.
This book will show you how to build all sorts of Moodle plug-ins: admin plug-ins, Blocks, Activities, Grading components, Reports, Fliters that change the way your site works and looks. You will develop standard Moodle plug-ins such as Activities, Filters, and Blocks by creating functioning code that you can execute in your own Moodle installation. Writing modular plug-ins for Moodle will be a large focus of this book.
This book will take you inside Moodle and provide you with the ability to develop code the Moodle way .
This book will expose you to all of the core code functions in Moodle, in a progressive, understandable way. You will learn what libraries are available, what the API calls are, how it is structured and how it can be expanded beyond the plug-in system.
You will begin by getting an understanding of the basic architecture that Moodle uses to operate in. Next you will build your first plug-in; a block. You will carry on building other Moodle plug-ins, gaining knowledge of the Moodle way of coding, before plunging deeper into the API and inner libraries. Lastly, you will learn how to integrate Moodle with other systems using a variety of methods.
When you have completed, you will have a solid understanding of Moodle programming and knowledge of how to extend its functionality in whatever way you want.
A practical guide to creating feature-rich extensions for your website using Moodle plug-ins
What you will learn from this book :
Add activities and grading components to keep a track of students progress automatically
Create Moodle Filters to process and filter the contents of the database
Customize the look and feel of your Moodle site using powerful plug-ins
Customize Moodle reports to assess the performance of a student easily
Allow integration with third-party systems such as HR and student information systems to access any data directly
Automate notifications for any updates in the courses
Customize forms to be filled by students using formlib library
Extend Moodle beyond its boundaries using web services and explore the features of SOAP-based and XMM-RPC-based web services
The author s experience as a Moodle developer enables him to combine a simple, descriptive how-to approach with enthusiastic insights into the rich potential of customizing Moodle according to your needs.
The chapters gradually build up your skills and by the end of the book you will be confident enough to customize Moodle on your own.
Who this book is written for
This book is written for technologists who are interested in expanding Moodle's functions through programming, either for their own organizations or to contribute to the open source project.
You should be familiar with Moodle's basic technologies: PHP, MySQL ,and HTML/CSS.