drupal

Alive, Kicking, and Speaking in Barcelona

Some of you may have noticed (who am I kidding? there is no "you" reading this site regularly...) that I've been gone awhile; my previous post here was in May. Well, I just got married and so have been, ah, rather busy. :-) I am finally back from the land of endless planning and greatly looking forward to DrupalCon 2007 in Barcelona. Besides all the Drupal excitement, this will also be my first trip with my wife (I keep emphasizing that word assuming it will eventually seem real) since our wedding; the official honeymoon isn't until later this year.

More relevantly, I'll be giving a variety of presentations at DrupalCon 2007:

Web seminar: Using Images with Drupal

On June 21, 2007 at 1pm US/Eastern, I’ll be giving an online seminar titled Using Images with Drupal. Drupal has a wide variety of methods and modules for uploading, storing, and displaying images. This seminar will help you decide which approaches best meet the needs of your site. It covers:

  • Creating image nodes with the Image module.
    • Associating Image nodes to posts with Image Attach.
    • Embedding images in content with Image Assist.
  • Adding image fields to custom node types.
    • Using multiple images and/or multiple image fields.
    • Automatically formatting image fields with the imagecache module.
    • Controlling image field display.
  • Showing multiple images on a page with dynamic “previous/next” links.
  • Using Views to display images in node lists.
  • Associating images with categories with Taxonomy Image.

This event will be live with interactive audio, screen casting, and Q&A. Space is limited. Register now at http://druplinars.com/using-images-drupal.

Free web seminar: Intro to Drupal: Installation and Basics

On June 15, 2007 at 1pm US/Eastern, I’ll be giving a free online seminar titled Introduction to Drupal: Installation and Basics. This seminar is an introduction to Drupal for first-timers. It covers:

  • Installation
  • Creating and managing content pages
  • Basic site-building features: modules, comments, menus, sidebar blocks, categories, and more
  • User accounts and access control
  • Defining custom object types with the Content Construction Kit (CCK)
  • Displaying lists and summaries of content with Views

This seminar will help you decide if Drupal is the right website solution for you and provides the foundation for all other seminars offered at Druplinars.com.

This event will be live with interactive audio, screen casting, and Q&A. Space is limited. Register now at http://druplinars.com/introduction-to-drupal.

Instructors wanted! See http://druplinars.com/teach for details.

Schema API in Drupal 6

The Schema Project has achieved a major milestone: The Schema API 1 has been committed for inclusion in Drupal 6 core. The Schema API allows modules to declare their database tables in a structured array (similar to the Form API) and provides API functions for creating, dropping, and changing tables, columns, keys, and indexes. Thanks to Frando for co-authoring the patch with me and the numerous people who helped review and test it.

Documentation for the Schema API is still being written; the work in progress is available at http://drupal.org/node/146843.

Some of the benefits of the Schema API are:

  • No more separate CREATE TABLE or ALTER TABLE statements for each database. Module developers only need to create a schema structure and/or use the Schema API functions, and Drupal takes care of the rest. This makes writing install and update functions much simpler.
  • Since the API makes it equally easy for module developers to support all databases, Drupal's support for PostgresQL will improve substantially. Also, as new database engines such as Oracle, SQLite, or Microsoft SQL Server are supported, modules using the Schema API will automatically work with them.
  • Several advanced capabilities, such as incremental database updates, a simple and consistent CRUD API, form scaffolding, simpler CCK and Views, schema and data validation, become much easier to implement in future enhancements.

Free web seminar: Site building in Drupal

I just launched http://druplinars.com, a new site that offers online training seminars for the Drupal community.

On May 10, 2007 at 1pm US/Eastern, I'll be giving a free seminar titled "Site building with Drupal: CCK, Views, E-Commerce, and more." It will a behind-the-scenes tour of how to build a site like Druplinars.com using the powerful features of core and contributed Drupal modules (CCK, Views, E-Commerce, imagecache, Persistent Login, securepages, and more) and also showing when custom coding is necessary. This event will be live with interactive audio, screen casting, and Q&A.
Space is limited.

Instructors wanted! See http://druplinars.com/teach for details.

Schema Project status report

The Drupal Schema project has seen substantial progress since my previous post. The Schema module is nearly ready for experimental use by module developers wanting to eliminate CREATE TABLE statements and for the integration of additional database back-ends. We are hoping at least some of its capabilities can make it into Drupal 6 core but, even if not, it will soon provide significant benefits to the community. The code is currently available in the contributions repository.

The primary accomplishments so far are:

  • Creation of the database table definition array structure.
  • Support for converting table definitions into CREATE TABLE statements.
  • The ability to inspect the live database in order to:
    • Automatically generate table definition array structures for existing tables, making conversion to Schema simple, and
    • Compare the live database against the union of all declared tables, identifying mismatches that probably indicate bugs.
  • Support for all existing core and CCK tables.
  • Equal support for MySQL and PostgresSQL and a clear path to supporting additional databases.

The Schema Project: Database abstraction, reflection, and migration

Almost a year after first discussing the idea on the Drupal developer’s mailing list I am finally ready to announce the Drupal Schema project. The goal of the project is to provide a database schema abstraction layer for Drupal. The benefits of the project will include more reliable compatibility with a greater range of database

Site-relative links with Drupal 4.7+

Versions of Drupal before 4.7 included a <base> in the header that pointed to the top-level URL for the site. On this site, for example, it would have looked like:

<base href="http://jaspan.com/">

CCK, imagefield, imagecache, and contemplate snafu

I'm not a huge fan of the Drupal "contemplate" module (see below), but Jeff Robbins recently recommended it to me so I decided to give it a try. I'm using it with a CCK type that has an imagefield field and I'm using imagecache to control the appearance of the image. I have a separate imagecache preset for the body and teaser view and use the imagefield settings that allow me to select which preset I want to use in each view. I think this setup is fairly typical but it turns out not to work.

Should drupal.org provide a secure "Remember Me" login checkbox?

Yes
76% (34 votes)
No
16% (7 votes)
Unsure
9% (4 votes)
Total votes: 45