Home

Primary links

  • top o the deck
  • Drupal for Beginners
  • about
  • links
  • give me some sugar

Drupal stuff

  • EDAM
  • STARDOM
  • Question Bank
  • Drupal musings
  • Drupal tips
Home Easy Drupal Admin Manual (EDAM) Organizing Your Content Placing Content on pages

Key stuff on this site

Easy Drupal Admin Manual (EDAM)

SEO, Traffic and Revenue: Drupalace's Online Manual (STARDOM)

Drupal for Beginners

Subscribe to posts by RSS or email

Subscribe to Drupal Ace by RSS feed RSS feed 

Subscribe to Drupal Ace by Email

Donate towards my web hosting bill! Get a great host!

Share and save

Share/Save

Random piece of content

!How to hide a node title?

Manuals on this site

  • Easy Drupal Admin Manual (EDAM)
    • Welcome to Your Site
    • First Steps: Please Read!
      • Understanding These Instructions
      • Important Terminology!
      • Best Practices for Site Admins
    • Super Quick Guide (for the experienced and the brave)
    • Logging In
    • Your Administrator Tools
    • Setting Site Basics
      • Setting Site Information
      • Configuring Your Theme
    • Creating Content
      • Node Types
      • Create a Page Node
      • Create a Story Node
      • Create a Blog Entry Node
      • Making Images and Other Files Available
      • Using Text and Image Editors
    • Organizing Your Content
      • Terms, Vocabularies, and Taxonomy: "Tagging" Your Content
        • Taxonomy Suggestions
      • Menus, Links, and Paths: Navigating the Site
        • Content Paths and URLs
        • Creating Links
        • Working with Menus: Administration Form (Drupal 6)
        • Working with Menus: Administration Form (Drupal 5)
        • Creating Menu Items on the Fly
        • Placing Menus on Your Pages
      • Placing Content on pages
        • Creating a page from a Single Node
        • Creating a page from a List of Nodes
        • Setting the Front Page
      • Working with Blocks
    • Maintenance Stuff
      • Maintenance and Construction Notices
    • Other Fun Things
      • Changing Color of Garland Theme
      • Free Aliases!
  • SEO, Traffic and Revenue: Drupalace's Online Manual (STARDOM)
    • Set a Clear Goal
    • Make a Good Site
      • Put out the Welcome Mat
      • Make Great Content
      • Build a Great Brand
      • Make Navigation Easy
      • Tune Site Performance
    • Drive Traffic
      • Promote your Site
      • Get Found with SEO
    • Build a Community
      • Build an Offsite Community
    • Monitor and Improve
    • One-Page Checklist
    • Drupal and the Blogging Starter Checklist
      • Drupal and the Blogging Starter Checklist, Part 1
      • Drupal and the Blogging Starter Checklist, Part 2
      • Drupal and the Blogging Starter Checklist, Part 3
      • Drupal and the Blogging Starter Checklist, Part 4
      • Drupal and the Blogging Starter Checklist, Part 5
      • Drupal and the Blogging Starter Checklist, Part 6
      • Drupal and the Blogging Starter Checklist, Part 7

Recent comments

  • It worked

    adding $GLOBALS['tempUser'] = $user; worked but I find it worth noting that I had to delete...

  • very good document...

    very good documentation for beginners!!!!!! thanks!!

  • del penitential 62

    strike out abject
    eliminate penitent 5

  • Chat

    Thank you a lot about very beneficial to my work was very useful thank you

  • Drupal Resources f...

    I would start learning from the "Diving In" section above. That links to the good beginners'...

more

SEO & Traffic!

STARDOM

Creating a page from a List of Nodes

  • admin
  • content
  • Drupal

You'll often want to make a page not from a single node, but from a list of several nodes. I haven't yet come across a technical Drupal word for such a page, so I'll call it a 'node-list page'.

Node-list pages and the Drupal Way

There are several ways to make a node-list page. What's important is to first understand the way you don't do this in Drupal. You don't create an empty "container" page – say, a blank page with the path product_catalog – and then say, "I want this node and this node and this node to appear on that page". That's a common misunderstanding among new Drupal admins, though it's a very understandable one: It does seem a logical way to do things, and some content management systems do have you do things just that way.

Drupal has you do something else: It has you specify the criteria for selecting multiple nodes – for example, "all nodes tagged with the Term 'product'", or "all Blog entries posted in 2007". That's all you do. Drupal then creates a list from those selected nodes and creates a page around that list.

That's at least the general rule (the front page provides a special case, discussed below). At first glance, it may seem limiting: You can't just pick this node and this node and this node and tell them to appear on a certain page; you have to give Drupal some criteria for picking those nodes, which means you have to find – or create – something in common among those nodes (like node type, Terms, posting dates, etc.).

But it's more powerful than it is limiting. When you want a catalog page to list all 100 of your products, the thing that you can do – give Drupal a single instruction to build the page product_catalog from all nodes tagged with the Term 'product' – is a lot better than the thing that you can't do – laboriously edit 100 product nodes to tell each one that you want it to appear on the product_catalog page. It's strong mojo.

Ways to make a node-list page

Creating a node-list page based on taxonomy

This is the business of having Drupal call up all nodes tagged with a Term (like 'products'), and has already been covered in multiple steps. Here they are together:

1. Get the path(s) for the desired Term(s). See Content Paths and URLs.

2. Create the link to the Term(s). See Creating Links.

3. Place the link in a menu or wherever desired. See Working with Menus: Administration Form.

As an example, you might create a node-list page by creating a menu item that links to a path like taxonomy/term/49+58. That's a perfect example of creating a page that doesn't even exist as a 'page' in the way that other web platforms might see a page. Rather, you created a link with instructions to Drupal to make a page, not a link to a page per se.

Creating a node-list page of Blog entries

Drupal has a built-in easy way to list all blog postings, under the assumption that this is something you're likely to want to do. As above, the path is key; place that path as a link in a menu item, and you've got an easy way to create a page which will list any and all published Blog entries.

Path for all published Blog entries:

<your site domain>/blog

Path for all published Blog entries by a specific user (for sites with multiple users):

<your site domain>/blog/<user name>

Creating a node-list page based on other criteria

You can build a list of nodes based on node type, date, author, and countless other factors, or some complex combination of those, allowing really useful tricks. The secret weapon here is an add-on function called Views.

Building a View is a rich-enough topic that it'll get its own page here shortly.

Creating a node-list page on your front page

Many sites use the front page to list a number of nodes, or short excerpts from a number of nodes. This is easy to do in Drupal, which treats the front page in a special way. You can make your front page a node-list page in one of two ways:

1. Take any path from the above – a path to a taxonomy Term, to a blog, or to a View – and set that path as the default front page.

2. Set no special path as the default front page. Rather, on the Edit form for all nodes you'd like to appear on the front page, check 'Promoted to front page' under 'Publishing options'. (This is an exception to the Drupal Way of "building" a node-list page via instructions; it's a method, like some other content management systems use, of telling specific nodes to appear on a specified page. Drupal offers this option only for the front page!)

For details on both of the above, see Setting the Front Page.

Share/Save
‹ Creating a page from a Single Node up Setting the Front Page ›
  • Printer-friendly version
  • Quote
Muhabbet's picture

Chat

Submitted by Muhabbet (not verified) on Thu, 2010-08-19 04:49.

Thank you a lot about very beneficial to my work was very useful thank you

  • reply
  • quote
hyuntal's picture

Doesn't work for me

Submitted by hyuntal (not verified) on Sun, 2010-02-21 00:33.

.... yeahç! it doesn't work for me...

  • reply
  • quote
Unknown Drupaloid's picture

good one post

Submitted by Unknown Drupaloid (not verified) on Sat, 2009-11-14 00:13.

good one post

  • reply
  • quote

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd><br><p>
  • You may quote other posts using [quote] tags.
  • Lines and paragraphs break automatically.
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options


Relevant Content

The Drupal Ace logo has dealt these content suggestions from the deck.

  • Working with Menus: Administration Form (Drupal 6)
  • Working with Menus: Administration Form (Drupal 5)
  • Taxonomy Suggestions
  • Creating a page from a Single Node
  • Placing Menus on Your Pages
  • Creating Menu Items on the Fly
  • Content Paths and URLs

Learn Drupal, hands-on

Get the beginner-friendly ebook that teaches community site building via a live case study.

Drupal 6 Ultimate Community Site Guide

Read the review

Drupal mini tip

Site visitors seeing your ugly error messages on the screen (along with details of your Drupal installation path)? Once your site goes from dev to launch, you probably want to have errors recorded in the log but not splashed across the screen. Head to the handy Error Reporting settings found at admin/settings/error-reporting. 

It's a deal!

Dreamhost dealsDrupal Ace presides over his domain, proudly ensconced in his DreamHost eyrie. Won't you join me?

Promo code deal!

Just enter the code 49ER when you register for an account, and save $49 off the already-low price. No strings!

Read my hosting service review

Powered by Drupal, an open source content management system

Copyright 2007 and forever after. Made with Drupal, of course. On OS X, of course. Served up by DreamHost. DreamHost

RoopleTheme