Mercurial > piecrust2
annotate docs/docs/04_content-model.md @ 532:c3c1171679de 2.0.0b1
prepare: Fix the RSS template.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Wed, 29 Jul 2015 08:58:51 -0700 |
parents | a694b78db0b1 |
children | d8d2b504306a |
rev | line source |
---|---|
308
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
1 --- |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
2 title: Content Model |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
3 --- |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
4 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
5 PieCrust is a CMS, _i.e._ a _Content Management System_. It looks, by default, |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
6 like a simple blog engine, but it can really handle any arbitrary set of |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
7 content. You need however to define what that content is. This is the _content |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
8 model_. |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
9 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
10 The [default content model][def] is what you get out of the box. It defines a |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
11 simple blog site where you can have pages and posts. |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
12 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
13 To create more complex or customized websites, you can define another content |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
14 model by specifying [sources][], [routes][], and [taxonomies][] in the [site |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
15 configuration][siteconf]: |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
16 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
17 * [Sources][] are how you tell PieCrust where to find your content. It defines |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
18 in what sub-directories it will find what kind of pages, with what kind of |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
19 naming convention, and what kind of metadata. In theory, sources can also |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
20 provide pages from other places than the file-system -- like a network |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
21 connection or a ZIP file or a database or whatever. |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
22 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
23 * [Routes][] define how the content returned by the sources is exposed to your |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
24 visitors. This defines both the URLs for that content, and the place on disk |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
25 where it will be baked to. |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
26 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
27 * [Taxonomies][] define special types of metadata on which PieCrust will create |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
28 index pages. You can generally define any type of metadata on your pages in a |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
29 completely free-form way, without having to declare anything, but in some |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
30 situations -- like blog post categories -- you want PieCrust to create a page |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
31 that lists all pages assigned with each category. |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
32 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
33 |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
34 [def]: {{docurl('content-model/default-model')}} |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
35 [sources]: {{docurl('content-model/sources')}} |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
36 [routes]: {{docurl('content-model/routes')}} |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
37 [taxonomies]: {{docurl('content-model/taxonomies')}} |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
38 [siteconf]: {{docurl('general/website-configuration')}} |
a694b78db0b1
docs: A whole bunch of drafts for content model and reference pages.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
39 |