Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

readme.md

(simple) Sitemap Plugin

A plugin for Kirby 3 CMS that generates an sitemap.xml and HTML sitemap.

⚠️ Warning: there are config breaking changes between version 1. * and 2. *

Commercial Usage

This plugin is free but if you use it in a commercial project please consider

Installation

Download

Download the files and place them inside site/plugins/sitemap.

Composer

composer require schnti/sitemap

Git Submodule

You can add the plugin as a Git submodule.

$ cd your/project/root
$ git submodule add https://github.com/schnti/kirby3-sitemap.git site/plugins/sitemap
$ git submodule update --init --recursive
$ git commit -am "Add Kirby Sitemap plugin"

Run these commands to update the plugin:

$ cd your/project/root
$ git submodule foreach git checkout master
$ git submodule foreach git pull
$ git commit -am "Update submodules"
$ git submodule update --init --recursive

Options

Config options

You can set the following default options in your config.php:

'schnti.sitemap.xml.sites.blacklist'      => ['error', 'sitemap', 'thankyou'],
'schnti.sitemap.xml.sites.whitelist'      => ['home', 'impressum', 'datenschutzerklaerung'],
'schnti.sitemap.xml.sites.prio'           => [],
'schnti.sitemap.xml.templates.blacklist'  => [],
'schnti.sitemap.xml.templates.whitelist'  => [],
'schnti.sitemap.xml.showUnlistedSites'    => false,
'schnti.sitemap.xml.showOnePagerModules'  => false,
'schnti.sitemap.xml.showTags'             => false,

'schnti.sitemap.html.sites.blacklist'     => ['error', 'sitemap', 'thankyou'],
'schnti.sitemap.html.sites.whitelist'     => ['home', 'impressum', 'datenschutzerklaerung'],
'schnti.sitemap.html.sites.prio'          => [],
'schnti.sitemap.html.templates.blacklist' => [],
'schnti.sitemap.html.templates.whitelist' => [],
'schnti.sitemap.html.showUnlistedSites'   => false,
'schnti.sitemap.html.showOnePagerModules' => false,
'schnti.sitemap.html.showTags'            => false,

'schnti.sitemap.json.sites.blacklist'     => ['error', 'sitemap', 'thankyou'],
'schnti.sitemap.json.sites.whitelist'     => ['home', 'impressum', 'datenschutzerklaerung'],
'schnti.sitemap.json.sites.prio'          => [],
'schnti.sitemap.json.templates.blacklist' => [],
'schnti.sitemap.json.templates.whitelist' => [],
'schnti.sitemap.json.showUnlistedSites'   => false,
'schnti.sitemap.json.showOnePagerModules' => false,
'schnti.sitemap.json.showTags'            => false

.sites.blacklist

An array of Kirby page IDs who are excluded from the sitemap.

.sites.whitelist

An array of Kirby page IDs who are included if their status is unlisted.

.sites.whitelist

.templates.blacklist

An array of intended template names whose pages are excluded from the sitemap.

.templates.whitelist

An array of intended template names whose pages are included if their status is unlisted.

.showUnlistedSites

If true, all unlisted sites are also included.

.showOnePagerModules

If you are using the Kirby Modules from Thomas Günther this plugin hides automatically the "modules" page from the sitemap.

If showOnePagerModules is true the OnePager Modules are shown as anker navigation links.

.showTags (for experts)

If true, for example blog categories or tags are listed as sub page navigation links.

Internal the $page->children()->listed()->pluck('tags', ',', true) and url($p->url(), ['params' => ['tag' => urlencode($tag)]]) function is used.

How to use it

sitemap.xml (for search engines)

Visit the sitemap as XML: http://example.com/sitemap.xml

There is no actual file generated.

sitemap.json (for tools)

Visit the sitemap as JSON: http://example.com/sitemap.json

There is no actual file generated.

HTML sitemap (for humans)

Use this simple tag which lets you output an HTML sitemap.

In your text file you can use it as follows:

(sitemap: )

About

No description, website, or topics provided.

Resources

License

Languages

You can’t perform that action at this time.