Skip to main content
Drupal SiteBuilder

Main navigation

  • Home
User account menu
  • Log in

Breadcrumb

  1. Home

Everything is a node

Gerald and Fred
Why do it this way?

You click "Create Content." Drupal asks you what kind. You fill in the fields. You save it. A page appears.

You think you just built a web page.

You didn't.

What you built is a record. Drupal calls it a node. Understanding the difference between a record and a page is possibly the single most useful thing you can take away from this entire book, so let's stay here for a moment.

Think about a spreadsheet. You have used a spreadsheet. Everyone has used a spreadsheet. A spreadsheet has rows and columns and sheets. Each row is one thing — one customer, one event, one product, one article. Each column is one piece of information about that thing — a name, a date, a size, a status, a shoe size. The row is the record. The columns are called fields in Drupal. 

If we are thinking spread sheets - The sheet is the content type, the fields in a content type are the columns in your spreadsheet. A Drupal Node is a row in your spreadsheet.

That is the long and short of the whole story.

When you created that content, you weren't painting a page. You were adding a row to a very sophisticated database that happens to know how to show you a page when you need one. The page is the default view of the record. It is not the record itself.

This distinction matters enormously, and here is why.

Gerald's nephew gave Gerald a website. On that website, each page was a page — the content and the display were baked together. To change how something looks he had to touch the content. To reorganize the site he had to touch the content. The content and the page were the same thing, which feels simple until the day you need them to be different things.

In Drupal they are always different things.

That same node — that same row in the spreadsheet — can be displayed in any format you need without touching the record itself. A card in a grid. A row in a table. An entry in a calendar. A pin on a map. A line in an RSS feed. An item in an API response. All of that from the same node, the same record, the same data sitting quietly in the database being useful in as many ways as you ask it to be.

There is a concept called headless Drupal - I don't recommend it - but a Drupal database is used as a back end for multiple different front end displays - and perhaps not even a website.

As we continue our Drupal Journey remember - it's just a fancy spreadsheet when ever you start to get confused.

How to do it:

When you click "Create Content" and choose a content type, Drupal creates a new node of that type. Behind the scenes it assigns it a node ID — a unique number that never changes and never gets reused. That ID is the record's permanent address in the database, regardless of what the URL looks like on the front end.

Every node has a set of standard properties: a title, an author, a creation date, a published status, and a content type. Everything else — the body text, the image, the event date, the location, the category — lives in fields that were defined when the content type was built.

When you save a node, Drupal stores the record and generates a default page at a path like /node/42 — the 42 being the node ID. You can give it a cleaner URL alias, but /node/42 will always work. The node exists whether anyone is looking at the page or not.

To see your nodes as data rather than as pages, explore the Views module. The default Content administration page at /admin/content is itself a View — a simple table of nodes with filters and sortable columns. It is, in fact, a spreadsheet. Drupal has been showing you a spreadsheet this whole time.

And if you genuinely need your content in Excel — perhaps for a board report, a volunteer list, or to show Gerald that his data is not trapped — the Views Data Export module can produce it. A proper spreadsheet, with proper columns, from the same nodes your website is already using.

The data is the data. The display is always negotiable.

Chapter Weight
2

content list

Nobody Needs a Website
Gerald and Fred
Editor, Management, Site Builder

Six Different Jobs
Gerald and Fred
Editor, Management, Site Builder

Everything is a node
Gerald and Fred
Site Builder

What is a Content Type
Gerald and Fred
Management, Site Builder

What can you see in the View?
Gerald and Fred
Management, Site Builder

Why are lists to "Taxing"
Gerald and Spike
Management, Site Builder

Having a picnic with Fields
Gerald and Fred
Editor, Site Builder

He was hit by a beer truck.
Hit by a Beer Truck
Management

Who needs this site
Janet and Thomas
Management, Site Builder

You Need Your Own Box
Gerald and Fred
Site Builder

You Need Your Own Box
Gerald and Fred
Management

What To Buy
Gerald and Fred
Site Builder

Using an AI assistant
an assistant
Site Builder

Using an AI assistant
an assistant
Management

Getting Ubuntu onto a USB Drive
Fred and Thomas
Site Builder

Installing Ubuntu on Your Dev Box
Gerald and Fred
Site Builder

Connecting to Your Dev Box with Bitvise
Janet and Thomas
Site Builder

Giving Your Dev Box a Permanent Address
Gerald and Fred
Site Builder

Your First Linux Commands
Gerald and Janet
Site Builder

Powered by Drupal