3.6 KiB
3.6 KiB
Configuration Examples
Reference: configurations.md
Per-Directory Manifests
Root directory manifest (.wp-materialize.json):
{
"categories": { "content": ["Systems", "Infrastructure"], "inherit": true },
"tags": { "content": ["automation", "wordpress"], "inherit": true },
"author": { "content": ["editorial"], "inherit": true },
"renderer": "pandoc",
"hard_line_breaks": true,
"block_html": true,
"subdirectories": { "content": ["design", "notes"], "inherit": true },
"files": {
"post.md": {
"title": "Explicit Title",
"categories": { "content": ["Overrides"], "inherit": false },
"tags": { "content": ["extra"], "inherit": true }
},
"essay.md": {
"use_heading_as_title": { "level": 1, "strict": true },
"renderer": "py-gfm",
"hard_line_breaks": false,
"block_html": false,
"created_on": "2025-01-10 09:30",
"last_modified": "2025-02-14 16:45"
}
}
}
Subdirectory manifest (design/.wp-materialize.json):
{
"categories": { "content": ["Design"], "inherit": true },
"tags": { "content": ["ui"], "inherit": true },
"subdirectories": { "content": [], "inherit": false },
"files": {
"system.md": {
"use_heading_as_title": { "level": 1, "strict": true }
}
}
}
Minimal (Directories Only)
{
"wordpress_root": "/var/www/wordpress",
"repo_storage_dir": "/home/user/wp-materialize-repos",
"renderer": "default",
"hard_line_breaks": false,
"block_html": false,
"git_repositories": [],
"directories": [
{
"name": "local-notes",
"path": "/home/user/notes",
"root_subdir": "wordpress"
}
]
}
Git Repositories + Directories
{
"wordpress_root": "/var/www/wordpress",
"repo_storage_dir": "/home/user/wp-materialize-repos",
"renderer": "default",
"hard_line_breaks": false,
"block_html": false,
"git_repositories": [
{
"name": "content-repo",
"url": "https://github.com/example/content-repo.git",
"branch": "main",
"root_subdir": "posts"
},
{
"name": "docs-repo",
"url": "git@github.com:example/docs-repo.git",
"branch": "main",
"root_subdir": null
}
],
"directories": [
{
"name": "local-notes",
"path": "/home/user/notes",
"root_subdir": "wordpress"
}
]
}
Single Git Repository
{
"wordpress_root": "/var/www/wordpress",
"repo_storage_dir": "/home/user/wp-materialize-repos",
"renderer": "default",
"hard_line_breaks": false,
"block_html": false,
"git_repositories": [
{
"name": "content-repo",
"url": "https://github.com/example/content-repo.git",
"branch": "main",
"root_subdir": "posts"
}
],
"directories": []
}
Timestamp Behavior Example
git_repositoriesentries use git commit timestamps forcreated_on/last_modifiedinference.directoriesentries use filesystem timestamps even if the path is inside a git repo.
Scaffold Command Examples
Create a placeholder config:
wp-materialize new --config
wp-materialize new --config /path/to/config.json
Create a dummy manifest:
wp-materialize new --manifest /path/to/content
Add a file to a manifest:
wp-materialize add-file /path/to/content/post.md
wp-materialize add-file /path/to/content/post.md /path/to/content
wp-materialize add-file /path/to/content/post.md --current
Add a directory to a manifest:
wp-materialize add-subdir /path/to/content/notes
wp-materialize add-subdir /path/to/content/notes /path/to/content
wp-materialize add-subdir /path/to/content/notes --current