1. Drupal in 3 hours
(php, MySQL, CSS)
Tomislav Hengl
ISRIC — World Soil Information, Wageningen University
Internal training, 16 May 2011, Wageningen
2. Programme
BLOCK 1 (45 mins): Introduction to Drupal (design, main
principles, basic and extended functionality, theming and
customization);
BLOCK 2 (30 mins): Technical issues behind Drupal —
php, MySQL, CSS;
BLOCK 3 (20 mins): Installing Drupal and first steps;
BLOCK 4 (45 mins): Using Drupal to manage
international research groups and events
(geomorphometry.org);
BLOCK 5 (45 mins): Using drupal to collect and serve soil
data (soilprofiles.org);
Internal training, 16 May 2011, Wageningen
3. Disclaimer
This course focuses on using Drupal; you will NOT learn
how to script in php.
1
Download and install programs, follow exercises.
Internal training, 16 May 2011, Wageningen
4. Disclaimer
This course focuses on using Drupal; you will NOT learn
how to script in php.
The idea is to help you find your way (documentation,
tutorials) and make first steps.
1
Download and install programs, follow exercises.
Internal training, 16 May 2011, Wageningen
5. Disclaimer
This course focuses on using Drupal; you will NOT learn
how to script in php.
The idea is to help you find your way (documentation,
tutorials) and make first steps.
You can follow this training actively1 or passively.
1
Download and install programs, follow exercises.
Internal training, 16 May 2011, Wageningen
6. Disclaimer
This course focuses on using Drupal; you will NOT learn
how to script in php.
The idea is to help you find your way (documentation,
tutorials) and make first steps.
You can follow this training actively1 or passively.
This is NOT an R training course.
1
Download and install programs, follow exercises.
Internal training, 16 May 2011, Wageningen
7. The open source movement
Open Source solutions2 :
Operating systems: Linux
Databases: SQL
Scientific writing: LTEX
A
Spatial analysis: GRASS GIS, SAGA GIS
Statistical computing: R
Content management: Drupal
2
http://www.gnu.org/philosophy/fsfs/rms-essays.pdf
Internal training, 16 May 2011, Wageningen
8. Drupal — basic facts
Drupal is a OS CMS written in PHP (created by Dries
Buytaert).
It is used as a back-end system for at least 1.5% of all
websites worldwide3 .
There is an active community of users and developers
(DrupalCon Events).
Probably more suited for Academic work than e.g.:
WordPress, WikiMedia and/or Plone;
Three major parts: (1) Content (MySQL database), (2)
Functionality (Modules), (3) Style (Themes).
3
http://en.wikipedia.org/wiki/Drupal
Internal training, 16 May 2011, Wageningen
9. Dries Buytaert
Internal training, 16 May 2011, Wageningen
10. Google trends
Internal training, 16 May 2011, Wageningen
13. Audiences
Passive end-users (they do not even know that they use
Drupal!);
Active end-users (they need to know how to create content);
Website administrators (they need to know how to install,
customize, extend and fix functionality);
Developers (they need to know PHP and other programming
languages);
Support staff (they need to know how to fix problems);
Internal training, 16 May 2011, Wageningen
14. PHP
PHP4 is a general-purpose language for web development
(scripts).
PHP script =⇒ Web server =⇒ HTML content
Installed on more than 20 million websites and 1 million web
servers.
PHP has hundreds of base functions and thousands more via
extensions.
4
‘Personal Home Page Tools’.
Internal training, 16 May 2011, Wageningen
15. PHP example
<html>
<head>
< t i t l e>L a s t u p d a t e d PHP S c r i p t</ t i t l e>
</head>
<?
$ l a s t m o d i f i e d = f i l e m t i m e ( ”e x a m p l e 7 . php3 ” ) ;
p r i n t ( ”L a s t M o d i f i e d ” ) ;
p r i n t ( date ( ”m/ j / y h : i ” , $ l a s t m o d i f i e d ) ) ;
?>
</body>
</ html>
Internal training, 16 May 2011, Wageningen
16. CSS examples
<html>
<head>
<s t y l e type=” t e x t / c s s ”>
body { background −image : u r l ( ' p a p e r . g i f ' ) ; }
</ s t y l e>
</head>
<body>
<h1>H e l l o World !</h1>
</body>
</ html>
Internal training, 16 May 2011, Wageningen
17. Where to get help?
The big idea of FOSS is that you try to learn things yourself!
There are many open access Tutorials.
I often teach myself things by watching videos and slides.
You might buy some of the extensive Drupal books.
You might hire some web-programming guru that specializes
in Drupal (the creator?).
Internal training, 16 May 2011, Wageningen
18. Teach-yourself
Internal training, 16 May 2011, Wageningen
20. Software
Google Chrome or Firefox web browser;
FileZilla file transfer to server;
WinEdt code editing;
R download content from a website;
Internal training, 16 May 2011, Wageningen
21. Requirements
Disk space / RAM (FTP access);
Web server (Apache, MySQL);
PHP support;
Read/write access;
Internal training, 16 May 2011, Wageningen
22. Video tutorial
Internal training, 16 May 2011, Wageningen
23. Migration of content
There are several possibilities:
Migrate from a passive website to a CMS;
Migrate from a CMS to CMS5 ;
Migrate from a server to a server (backup_migrate);
5
E.g” http://drupal.org/node/43178
.:
Internal training, 16 May 2011, Wageningen
24. Drupal modules
Internal training, 16 May 2011, Wageningen
25. Set-up an ODBC driver
Internal training, 16 May 2011, Wageningen
29. Web forms
Internal training, 16 May 2011, Wageningen
30. Final notes
Drupal is one of the fastest growing OS CMS.
It has an extensive society that have contributed over 8k
modules.
It is stable, reliable and secure (although there are some
smaller threats).
You can teach yourself Drupal (PHP). . . the issue is only how
much and what.
Internal training, 16 May 2011, Wageningen
31. Literature (advanced)
Using Drupal by Angela Byron
Learning Drupal 6 Module Development by Matt Butcher.
Pro Drupal Development by John K. VanDyk and Matt
Westgate.
Internal training, 16 May 2011, Wageningen