Ein REDAXO-Addon zum erweiterten Verwalten von Kategorien (Struktur, Medienpool) mit Kopier-, Verschiebe- und Löschfunktionen.
- Rekursives Kopieren von Kategorien inklusive aller Unterkategorien und Artikel
- Rekursives Löschen von Kategorien mit allen zugehörigen Inhalten
- Hierarchische Darstellung der Kategorie-Struktur mit visueller Einrückung über
getTree()
- Sichere Validierung von Verschiebe-Operationen (verhindert zirkuläre Abhängigkeiten)
- Kopieren von Artikelinhalten (Slices) von einem Artikel in einen anderen
- Media-Kategorien verschieben zwischen verschiedenen Hierarchieebenen
- Vollständige PHPDoc-Dokumentation aller Methoden und Parameter
- Type Hints für alle Parameter und Rückgabewerte
- Statische Code-Analyse mit PHPStan (rexstan)
- Konfigurierbare Suffixe beim Kopieren von Kategorien
- Automatische Suffix-Entfernung nach dem Kopieren von Artikeln
- SQL-Injection-Schutz durch konsequente Verwendung von Prepared Statements
- Eingabevalidierung bei allen Benutzereingaben
- Fehlerbehandlung mit aussagekräftigen Exception-Meldungen
- Addon im REDAXO-Backend unter "Add-ons" installieren
- Addon aktivieren
- Optional: Konfiguration anpassen (z.B. Suffix für kopierte Kategorien)
Die Verwendung über das REDAXO-Backend wird empfohlen. Zusätzlich können die folgenden PHP-Funktionen direkt im Code verwendet werden:
use FriendsOfRedaxo\StructureManager\StructureManager;
// Kategorie mit ID 5 in Kategorie mit ID 10 kopieren
StructureManager::copyCategory(5, 10);
// Mit optionalen Parametern
StructureManager::copyCategory(5, 10, null, 'Neuer Name', 1);
// Kategorie mit ID 5 rekursiv löschen
StructureManager::deleteCategory(5);
use FriendsOfRedaxo\StructureManager\MediaCategoryManager;
$sql = rex_sql::factory();
// Kategorie von ID 3 nach ID 7 verschieben
MediaCategoryManager::moveMediaManagerCategory($sql, 3, 7);
Alexander Walther für Version 2.x Daniel Steffen für Version 1.x
- Vollständige Überarbeitung der Code-Basis
- Hinzufügung von Type Hints und PHPDoc
- Sicherheitsverbesserungen durch Prepared Statements
- Original-Version von novinet GmbH & Co. KG
- Basis-Funktionalitäten für Kategorie-Verwaltung