wikijs-metabot/README.md

63 lines
1.9 KiB
Markdown
Raw Normal View History

2022-09-23 10:05:34 +00:00
# WikiJs Metabot
Ein Skript was die Page-Listings auf [https://wiki.ctdo.de](https://wiki.ctdo.de)
2022-09-23 15:44:23 +00:00
automatisch befüllt
2022-09-23 10:05:34 +00:00
## Verwendung
2022-09-23 15:44:23 +00:00
Um auf einer Wiki-Seite ein Page-Listing hinzuzufügen muss in den Metadaten der Seite der Inhalt von
`metapage.js.html` als Skript gesetzt werden.
Dann kann an der gewünschten Stelle ein HTML-Element folgender Form eingefügt werden:
2022-09-23 10:05:34 +00:00
2022-09-23 15:44:23 +00:00
```html
<ul class="pagelist" data-query="QUERY"></ul>
2022-09-23 10:05:34 +00:00
```
2022-09-23 15:44:23 +00:00
Dabei muss `QUERY` eine Parameterliste für die `PageQuery::list`-Methode der WikiJs-GraphQL-API
sein. Folgende Parameter werden unterstützt:
2022-09-23 10:05:34 +00:00
```text
limit: Int
orderBy: Enum CREATED | ID | PATH | TITLE | UPDATED
orderByDirection: Enum ASC | DESC
tags: [String]
locale: String
creatorId: Int
authorId: Int
```
### Beispiele
Liste aller Seiten die mit den Tags `top` und `new` versehen sind:
2022-09-23 15:44:23 +00:00
```html
<ul class="pagelist" data-query="tags: ['top', 'new']"></ul>
2022-09-23 10:05:34 +00:00
```
Liste der 10 zuletzt bearbeiteten Seiten:
2022-09-23 15:44:23 +00:00
```html
<ul
class="pagelist"
data-query="orderBy: UPDATED, orderByDirection: DESC, limit: 10"
></ul>
2022-09-23 10:05:34 +00:00
```
### Details
- Mehrere Parameter müssen mit einem Komma getrennt werden
- Mehrere Tags im `tags`-Parameter müssen ebenfalls mit Komma getrennt werden
2022-09-23 15:44:23 +00:00
- Parameter vom Typ `String` müssen in einfache Anführungszeichen `'` eingeschlossen werden
2022-09-23 10:05:34 +00:00
- Parameter vom Typ `Int` und vom Typ `Enum` müssen ohne Anführungszeichen angegeben werden
## Features und Einschränkungen
2022-09-23 10:21:02 +00:00
Seiten deren Pfad mit einem Unterstrich `_` beginnt werden als versteckt interpretiert und nicht in
Page-Listings angezeigt.
Das wird beispielsweise auf der Topictreff-Seite verwendet damit das Topic-Template nicht unter den
neuen Topics aufgelistet wird.
2022-09-23 10:21:02 +00:00
Bei gesetzten Limits kommt es vor, dass weniger Seiten als angegeben aufgelistet werden.
2022-09-23 15:44:23 +00:00
Das scheint ein Bug im WikiJs zu sein wodurch manche Seiten nicht in dem Ergebnis zurückgegeben aber
trotzdem gezählt werden.