Skip to content

The recommended structure of a spreadsheet

One header row, one row per item, a stable ID column and one column per piece of information: a layout that works for WordPress posts and Joomla articles.

  • 3 min read
  • Updated October 13, 2026
On this page

A spreadsheet that imports well follows a few simple rules. None of them is a requirement you could not work around, but together they make every later import easier.

The layout#

ID Title Slug Body Category Tags Image Status Publish date
HLJ-401 Comino Blue Lagoon by boat by-boat-comino-blue-lagoon <p>…</p> Destinations > Malta comino, anchoring p01.png Published 2026-09-01 09:00
HLJ-402 Xlendi Bay by boat by-boat-xlendi-bay <p>…</p> Destinations > Malta gozo, diving p02.png Draft 2026-09-02 09:00
  1. Row 1 is the header. One name per column, all different (column headers). A column without a name is called by its position, such as Column C, which changes when a column is added before it. A file without one can be read with its columns named by position, but names are safer (files without a header row).
  2. One row is one item: one post, one page, one article. Do not spread an item over several rows, and do not use blank rows or subtotal rows between items; blank rows are skipped, but a row with some text in it is an item.
  3. One column is the item's ID: a value that stays the same for that item in every file you ever upload. It is what makes next week's file update the item instead of creating it again (choosing the record ID).
  4. One piece of information per column. Title, body, category and tags each have their own column, so each can be mapped to its own field.
  5. A column for everything that differs between rows. If every row has the same status or author, you do not need a column: set it once as a fixed value in the configuration. If it differs per row, a column lets you control it.

Which columns do you need?#

Only what your destination requires, plus what you want to control. The destination decides what is required: WordPress needs a Title; Joomla needs a Title and a Category. Everything else is optional (required and optional columns).

A useful set for posts or articles:

Column What goes in it See
ID A stable identifier record ID
Title The headline title and slug
Slug / Alias The URL name, if you want to control it title and slug
Body The text, plain or HTML HTML in cells
Summary A short excerpt content and HTML
Category One category, or a path such as Destinations > Malta categories
Tags Several, separated by a comma tags
Image A file name from your ZIP, or a web address where images come from
Status Published, Draft, … status, dates and authors
Publish date A date and time text, numbers and dates
Author A person's name on the site status, dates and authors

Columns that Content Uploader does not use are harmless: the file's page lists them as not used.

Keep it stable from week to week#

The configuration remembers your columns by name. Keep the names the same from one file to the next, add new columns freely, and remember the rule for changing them: if a column the configuration uses is missing or renamed, the file is not processed and the page says which column is missing (when the columns change).

Several kinds of content#

If you publish different kinds of content (articles and pages, or two sites), keep a separate spreadsheet and configuration for each. A configuration publishes to one site and one content type.

Examples#

The example spreadsheets show these layouts with real data you can import into a test site.

Was this article helpful?