README.md 6.23 KB
Newer Older
Rolf Forst's avatar
Rolf Forst committed
1
# CMS-Basis
Rolf Forst's avatar
Rolf Forst committed
2

Rolf Forst's avatar
Rolf Forst committed
3
4
5
6
Grundlegende Vorlage und Voraussetzungen für alle WordPress-CMS-Plugins.

## Verzeichnisschema

Rolf Forst's avatar
Rolf Forst committed
7
```sh
Rolf Forst's avatar
Rolf Forst committed
8
cms-basis/
Rolf Forst's avatar
Rolf Forst committed
9
10
11
12
13
├── src/                             	Verzeichnis der Quelldateien
|   ├── sass/                           Verzeichnis der Sass-Dateien
|   |   ├── plugin.scss                 Global-Sytle
|   |   └── shortcode.scss              Shortcode-Style
|   └── js/                             Verzeichnis der JavaScript-Dateien
14
15
|       ├── gutenberg.js                Gutenberg-Library-Skript
|       ├── <blockname>-block.js        Skript zum Aufruf von Gutenberg-Library-Skript 
Rolf Forst's avatar
Rolf Forst committed
16
17
18
|       ├── shortcode.js                Shortcode-Skript
|       ├── wp-color-picker.js          WP-Color-Picker
|       └── wp-media.js                 WP-Media
19
20
├── assets/
|   ├── js/                             Verzeichnis der JavaScript-Dateien
21
22
|   |   ├── gutenberg.js                Gutenberg-Library-Skript (minifiziert)
|   |   ├── <blockname>-block.js        Skript zum Aufruf von Gutenberg-Library-Skript 
23
24
25
26
27
28
|   |   ├── shortcode.js                Shortcode-Skript (minifiziert)
|   |   ├── wp-color-picker.js          WP-Color-Picker (minifiziert)
|   |   └── wp-media.js                 WP-Media (minifiziert)
|   └──  css/                           Verzeichnis der Styles-Dateien
|       ├── plugin.css                  Global-Sytle (minifiziert)
|       └── shortcode.css               Shortcode-Style (minifiziert)
Rolf Forst's avatar
Rolf Forst committed
29
30
├── config/                             Verzeichnis der Konfigurationsdateien
|   └── config.php                      Konfigurationsdatei
Rolf Forst's avatar
Rolf Forst committed
31
32
33
├── includes/                           PHP-Skriptverzeichnis
|   ├── Main.php                        Main-Klasse (Hauptklasse)
|   ├── Settings.php                    Settings-Klasse
Rolf Forst's avatar
Rolf Forst committed
34
|   └── Shortcode.php                   Shortcode-Klasse
Rolf Forst's avatar
Rolf Forst committed
35
36
37
38
39
40
├── languages/                          Verzeichnis der Sprachdateien
|   ├── cms-basis.pot                   Vorlagedatei falls Übersetzungen in andere Sprachen nötig werden
|   ├── cms-basis-de_DE.po              Deutsche Übersetzungsdatei (.po-Datei)
|   ├── cms-basis-de_DE.mo              Deutsche Übersetzungsdatei (.mo-Datei)
|   ├── cms-basis-de_DE_formal.po       Deutsche (Sie) Übersetzungsdatei (.po-Datei)
|   └── cms-basis-de_DE_formal.mo       Deutsche (Sie) Übersetzungsdatei (.mo-Datei)
Rolf Forst's avatar
Rolf Forst committed
41
42
43
44
45
46
├── vendor/                             Composer-Verzeichnis
├── .editorconfig                       Empfohlene Editor-Einstellungen
├── .gitignore                          Git-Datei
├── gulpfile.js                         Gulp-Datei
├── package.lock.json                   Projekt-Setup
├── package.json                        Projekt-Setup (Entwicklung)
Rolf Forst's avatar
Rolf Forst committed
47
48
├── cms-basis.php                       Hauptdatei des Plugins
├── README-TEMPLATE.md                  README-Vorlage
Rolf Forst's avatar
Rolf Forst committed
49
└── README.md                           Hinweise zur Verwendung des Plugins (diese Datei)
Rolf Forst's avatar
Rolf Forst committed
50
```
Rolf Forst's avatar
Rolf Forst committed
51
52

## Anleitung
Rolf Forst's avatar
Rolf Forst committed
53

Rolf Forst's avatar
Rolf Forst committed
54
Fremdplugins können wir nur bei Erfüllung folgender Grundbedingungen auf der CMS-Instanz übernehmen:
Rolf Forst's avatar
Rolf Forst committed
55

Rolf Forst's avatar
Rolf Forst committed
56
1. Das Plugin muss auf der Basis des Plugins cms-basis entwickelt sein.
Rolf Forst's avatar
Rolf Forst committed
57
2. Bereitstellung des Plugins muss auf WordPress (https://de.wordpress.org/plugins/) bzw. auf GitHub (https://github.com/) erfolgen:
Rolf Forst's avatar
Rolf Forst committed
58
59
60
61
    - Name des Repositories kleingeschrieben (z.B. lehrstuhl-feedreader)
    - Die Verwendung der folgenden Präfixe ist zu vermeiden: "rrze-", "fau-" und "cms-"
3. Der Header des Plugins muss in folgenden Feldern angepasst werden
    - Plugin Name: Name des Plugin (Groß-/Kleinschreibung egal)
Rolf Forst's avatar
Rolf Forst committed
62
    - Plugin URI: URL des WordPress- bzw. Github-Repositories (z.B. https://github.com/RRZE-Webteam/rrze-univis)
Rolf Forst's avatar
Rolf Forst committed
63
64
    - Description: Beschreibung des Plugin. Aussagekräftige Erläuterung, wofür das Plugin da ist
    - Version: 1.0.0
Rolf Forst's avatar
Rolf Forst committed
65
66
67
        - Hauptversionsnummer (1): indiziert meist äußerst signifikante Änderung am Plugin
        - Nebenversionsnummer (1.0): bezeichnet meistens die funktionale Erweiterung des Plugins
        - Revisionsnummer (1.0.0): enthält meist Bugfixes bzw. Sicherheits- und Wartungsupdates
Rolf Forst's avatar
Rolf Forst committed
68
    - Author: Der Name des Entwicklers (kann auch ein Hiwi sein)
Rolf Forst's avatar
Rolf Forst committed
69
70
    - Author URI: wenn vorhanden, URL des Entwicklers (z.B. http://blogs.fau.de/webworking/)
    - License: GNU GPL v2
Rolf Forst's avatar
Rolf Forst committed
71
72
    - Contact Name: Der Name des Webmasters als verantwortlicher Ansprechpartner
    - Contact Email: Die Mailadresse des Ansprechpartners. Die Angabe einer fau.de-Adresse ist zwingend nötig (z.B. kontakt.name@fau.de)
Rolf Forst's avatar
Rolf Forst committed
73
4. Der Webmaster ist uns gegenüber dafür verantwortlich, dass das Plugin weiterentwickelt und aktuell gehalten wird. Im Speziellen bedeutet das:
Rolf Forst's avatar
Rolf Forst committed
74
    - Das Plugin muss als Mindestanforderung kompatibel zur aktuellen WordPress- und PHP-Version sein. Stand September 2019: WordPress-Version 5.3, PHP-Version 7.4
Rolf Forst's avatar
Rolf Forst committed
75
    - Der Webmaster ist verpflichtet, sich eigenständig über die Veröffentlichung neuer WordPress-Versionen zu informieren und das Plugin unverzüglich auf Kompatibilität damit zu überprüfen
Rolf Forst's avatar
Rolf Forst committed
76
    - Nach erfolgreicher Prüfung und ggf. Anpassungen muss die Versionsnummer zumindest an der Revisionsnummer erhöht werden und ein Commit erfolgen, damit die erfolgreiche Überprüfung für uns ersichtlich ist
Rolf Forst's avatar
Rolf Forst committed
77
5. Der Kunde muss damit rechnen, dass sein Plugin aus folgenden Gründen auf der CMS-Instanz unverzüglich von uns deaktiviert bzw. von der CMS-Instanz entfernt wird, wenn
Rolf Forst's avatar
Rolf Forst committed
78
79
80
    - Sicherheitslücken im Plugin vorliegen
    - Kompatibilitätsprobleme mit anderen auf der CMS-Instanz befindlichen Plugins oder der aktuellen WordPress- bzw. PHP-Version auftreten
    - der Webmaster der Aktualisierungspflicht des Plugins nicht nachkommt
Rolf Forst's avatar
Rolf Forst committed
81
82
    - der im Plugin genannte Ansprechpartner (Contact Name und Contact Email) kein bei uns registrierter Webmaster bzw. Universitätsangehöriger mehr ist
6. Der Webmaster ist sich bewusst, dass mit der Deaktivierung des Plugins die darin bereitgestellen Funktionalitäten nicht mehr zur Verfügung stehen.
Rolf Forst's avatar
Rolf Forst committed
83
7. Im Falle einer Deaktivierung bzw. Entfernung des Plugins erhält der Webmaster an die im Plugin hinterlegte Adresse eine E-Mail mit der Information, dass erst nach einer Behebung der Fehler und einem Update das Plugin wieder aktiviert wird.