EXT:t3s_discogs

Etwas für Vinyl-Fans! 

Neben Schallplatten (Vinyl) und CDs akzeptiert Discogs praktisch jedes physische Audiomedium, das jemals kommerziell oder offiziell für die Öffentlichkeit produziert wurde.

Präsentiere deine Discogs-Sammlung mit Cover-Bildern, Titellisten, Mitwirkenden und Community-Bewertungen auf deiner TYPO3-Website.

 

Requirements

TYPO3 >= 14.3
PHP >= 8.2
Ein Discogs-Konto mit einem persönlichen API-Token
Die Vorlagen erfordern Bootstrap 5.3

Settings

1. Erstelle einen Discogs-Benutzer-Token

  • Melde dich bei discogs.com an
  • Gehe zu Einstellungen → Entwickler
  • Klicke auf "Neuen Token generieren"
  • Kopiere den Token und bewahre ihn sicher auf
  • Direkter Link: www.discogs.com/settings/developers

2. Füge das Inhaltselement hinzu

  • Öffne eine Seite im Backend
  • Füge ein neues Inhaltselement vom Typ “Discogs-Sammlung” ein
  • Gebe im Reiter “Plugin" Folgendes ein:
    - Discogs-Benutzername (wie in deinem Profil-URL angegeben)
    - Discogs-Benutzer-Token (aus Schritt 1)
    - Konfiguriere Spalten, Sortierung und andere Optionen nach Wunsch

Installation

Über Composer (empfohlen)

composer require t3s/t3s-discogs

Über das TYPO3 Extension Repository (TER)

Installiere über den TYPO3 Extension Manager:

Oder lade es direkt von extensions.typo3.org/extension/t3s_discogs herunter.

Plugin-Einstellungen (FlexForm)

EinstellungBeschreibungStandard
usernameDein Discogs-Benutzername-
tokenPersönlicher API-Token-
perPageAnzeigen pro Seite (12 / 24 / 48 / 100)24
columnsBootstrap-Raster-Spalten (2 / 3 / 4 / 6)4
sortSortierfeld (Datum/Interpret / Titel / Jahr / Format)Datum
sortOrderSortierreihenfolge (aufsteigend / absteigend)absteigend
viewModeAls Raster oder Liste anzeigenRaster
disableCacheBei jeder Anfrage neue Daten abrufennein

API-Antworten werden über das TYPO3-Caching-Framework zwischengespeichert (FileBackend, Cache-Gruppe “pages”):

- Collection lists werden für 1 Stunde zwischengespeichert

- Release details werden für 24 Stunden zwischengespeichert, da sich Stammdaten selten ändern

Um eine Aktualisierung zu erzwingen, leere den TYPO3-Seiten-Cache.
Das Caching kann pro Plugin-Instanz über die FlexForm-Einstellung “disableCache” deaktiviert werden.

 

Discogs-API-Ratenbegrenzungen

Authentifizierte Anfragen sind auf 60 pro Minute begrenzt. 
Bei aktiviertem Caching bleibt die normale Nutzung deutlich innerhalb dieser Grenze.

Um übersichtliche, leicht lesbare URLs für die Detailansicht und die Paginierung zu erhalten, füge folgendes in die Datei config/sites/<your-site>/config.yaml deiner Website ein:

routeEnhancers:
  T3sDiscogsShow:
    type: Extbase
    limitToPages:
      - 12  # UID of the page with the plugin
    extension: T3sDiscogs
    plugin: Collection
    routes:
      - { routePath: '/release/{releaseId}', _controller: 'Discogs::show', _arguments: {'releaseId': 'releaseId'} }
      - { routePath: '/page/{page}', _controller: 'Discogs::list', _arguments: {'page': 'page'} }
    defaultController: 'Discogs::list'

Dadurch entstehen URLs wie:

/my-collection/release/2548209
/my-collection/page/2

Parameter aus cHash ausschließen

Füge folgendes in die Datei “config/system/additional.php” ein, um zu verhindern, dass TYPO3 diesen URLs einen cHash-Parameter anhängt:

$GLOBALS['TYPO3_CONF_VARS']['FE']['cacheHash']['excludedParameters'][] = 'tx_t3sdiscogs_collection[releaseId]';
$GLOBALS['TYPO3_CONF_VARS']['FE']['cacheHash']['excludedParameters'][] = 'tx_t3sdiscogs_collection[action]';
$GLOBALS['TYPO3_CONF_VARS']['FE']['cacheHash']['excludedParameters'][] = 'tx_t3sdiscogs_collection[controller]';
$GLOBALS['TYPO3_CONF_VARS']['FE']['cacheHash']['excludedParameters'][] = 'tx_t3sdiscogs_collection[page]';