Drupal Basics

Post on 20-Dec-2014

1.655 views 2 download

Tags:

description

 

Transcript of Drupal Basics

Drupal BasicsMay 30, 2012

By Sean Fitzpatrick

Sean Fitzpatrick | sean@lishost.org

Welcome

We're going to talk about Drupal We're going to keep it pretty basic You should leave with enough curiosity to experiment

on your own This is not a Drupal vs. Wordpress smackdown, but

we will be making some comparisons

Sean Fitzpatrick | sean@lishost.org

Introductions

Who am I? What is LISHost? What do we do?

Sean Fitzpatrick | sean@lishost.org

Scope of the workshop

We're going to try to cover the basics I am assuming most of you are beginners If you are a total beginner, I apologize for going

fast and using technical terms If you are not a total beginner, I apologize for

going slow and using basic terms

Sean Fitzpatrick | sean@lishost.org

What is Drupal?And why is it awesome for library sites?

Open source content management framework “Allows you to create and maintain many different

types of websites without needing to know any coding languages” – http://drupal.org/node/258

No prescribed configurations, but many features common to library sites are easily available in Drupal

Sean Fitzpatrick | sean@lishost.org

Why Drupal?

Lots of stuff available for typical library sites: News Feeds Calendar Taxonomies Image handling (such as galleries) Search Comments and other social functionality

Sean Fitzpatrick | sean@lishost.org

Drupal 6 or Drupal 7?

It's a shame I even put this slide in here. Just use Drupal 7.

Sean Fitzpatrick | sean@lishost.org

Core, Contrib, and Theme

These three components are the basis of an open framework for building beautiful bespoke websites.

Drupal is like a Lego kit. Skilled developers have already made the building blocks - in the form of contributed modules - that you need to create a site that suits your needs, whether that is a news site, an online store, a social network, blog, wiki, or something else altogether.

From http://drupal.org/getting-started/before/overview

Sean Fitzpatrick | sean@lishost.org

Drupal core

Talks to the database (so you don't have to) Provides some basic functionality for organizing

content Builds content into web pages Gives some basic options for a front end (theme) (i.e, Drupal core gives you a basic, dynamic website)

Sean Fitzpatrick | sean@lishost.org

Contributed modules

Thousands of modules extend Drupal's core This makes anything possible. (“There's a module for

that...”) Modules have already done all the “heavy lifting” And all this comes with benefits and challenges

Sean Fitzpatrick | sean@lishost.org

Theme

Theme layer presents content and markup to the browser Rendered with PHP And HTML, JS, CSS, etc Drupal offers lots of template files and overrides

Sean Fitzpatrick | sean@lishost.org

Good and Bad

Ultimate flexibility Future extendability Scalability

vs Learning Curve Staff time

Sean Fitzpatrick | sean@lishost.org

Learning curve?

I believe the “learning curve” inexperienced people associate with Drupal pertains to site building and back-end development. This is irrelevant for day-to-day content managers.

Sean Fitzpatrick | sean@lishost.org

Technology stack

Web Server: Apache or Microsoft IIS PHP: 5.2 or higher Database Server: MySQL - 5.0 or higher, PostgreSQL

- 8.3 or higher, or SQLite (Microsoft SQL Server and Oracle are supported by an additional module)

Sean Fitzpatrick | sean@lishost.org

Personnel and skill sets Project manager Information designer Copywriters (don't tell me you're going to migrate...) Web designer Developer – could be two – front- and back-end IT/Systems guy

Sean Fitzpatrick | sean@lishost.org

Let's stop for some questions

Sean Fitzpatrick | sean@lishost.org

Installation From scratch...

provision server Install apache, mysql, php, some other packages Installing Drush is a good idea for command line people Download Drupal Set directory permissions Create a database Run the installation script

Sean Fitzpatrick | sean@lishost.org

Post install: Dream big, code little

Installing Drupal is pretty trivial. Then the real work starts.

By selecting great contributed modules and learning how to implement them, you can achieve amazing functionality without any programming.

Similarly, some themes offer a lot of robust configuration options for creating beautiful sites without writing any code.

Sean Fitzpatrick | sean@lishost.org

Content types and Views

Content types are extended with custom fields. Fields store data in the database. Lots of data types

are available, such as dates, files, location coordinates, and so forth.

The Views module (contrib) is a tool set for building complex queries with a graphical UI (no coding).

Sean Fitzpatrick | sean@lishost.org

API and theme libraries

You can go a long way without programming, but big, complex sites need custom development.

Drupal offers a rich API for extending functionality. Similarly, base themes and theme functions allow for

implementing any kind of front-end design.

Sean Fitzpatrick | sean@lishost.org

Buzzword compliance

HTML5, CSS3 Mobile-first Responsive design SASS/Compass Etc.

(I pretty much only follow buzzwords from the front-end dev world)

Sean Fitzpatrick | sean@lishost.org

Third-party content

Drupal has some amazing tools for integrating third-party content (try the Feeds module) RSS, XML, CSV, SQL Evanced ILS ???

Sean Fitzpatrick | sean@lishost.org

Users and Workflows

Custom user roles/permissions by module (no pre-defined roles to limit flexibility)

Simple publishing and editing for small institutions. Ability to create complex workflows to scale up for

large institutions. (Check out the Rules module.)

Sean Fitzpatrick | sean@lishost.org

Security

Yes, sites get hacked. Keep modules up-to-date (especially security

updates). Keep other stuff up-to-date. Be careful about permissions. Keep track of users, logs, spam, etc.

Sean Fitzpatrick | sean@lishost.org

Scalability

Oh yeah, some big library sites too.

Sean Fitzpatrick | sean@lishost.org

Additional Resources drupal.org/documentation groups.drupal.org api.drupal.org Drupal4Lib

(http://listserv.uic.edu/archives/drupal4lib.html) #drupal (irc) info@lishost.org Print?