Miniaturki

  • routy:
    /routes/vendor/idir/web/thumbnails.php
    /routes/vendor/idir/admin/thumbnails.php
  • kontrolery:
    N1ebieski\IDir\Http\Controllers\Web\ThumbnailController
    N1ebieski\IDir\Http\Controllers\Admin\Thumbnail\ThumbnailController


# Opis

Dla adresu strony www przypisanego do wpisu może zostać utworzona miniaturka. iDir domyślnie wykorzystuje do tego celu usługę PagePeeker. System może pobierać miniaturki bezpośrednio od operatora przy każdym requeście, jak również jednorazowo z możliwością ich cachowania na własnym serwerze. Moderator ma możliwość odświeżenia miniaturki z poziomu listy wpisów w panelu administracyjnym.

# Konfiguracja

Wstępnie iDir posiada już zdefiniowaną konfigurację konieczną do korzystania z PagePeeker. Ustawienia dostępne są z poziomu pliku .env w głównym folderze z aplikacją.

Adres API do wyświetlania miniaturek:

IDIR_DIR_THUMBNAIL_URL=http://free.pagepeeker.com/v2/thumbs.php?size=x&url=

Adres API do odświeżania miniaturek:

IDIR_DIR_THUMBNAIL_RELOAD_URL=http://free.pagepeeker.com/v2/thumbs.php?size=x&code=&refresh=1&url=


# Konfiguracja cache

W celu cachowania miniaturek na własnym serwerze należy uzupełnić dodatkową konfigurację w pliku .env:

Adres do wyświetlania miniaturek z cache:

IDIR_DIR_THUMBNAIL_CACHE_URL=https://localhost/thumbnails?url=

Adres do odświeżania miniaturek w cache:

IDIR_DIR_THUMBNAIL_API_RELOAD_URL=http://localhost/api/thumbnails/reload?url=

Gdzie "localhost" należy podać domenę własnej strony.

Unikalny klucz w formacie dowolnego 32-znakowego stringa:

IDIR_DIR_THUMBNAIL_KEY=

Klucz zapobiegnie "podkradaniu" miniaturek z cache przez inne, nie uprawnione do tego strony.

Czas przechowywania miniaturki w cache (w dniach):

IDIR_DIR_THUMBNAIL_CACHE_DAYS=365


# Używanie jednej aplikacji iDir jako hosta miniaturek z cache dla innych aplikacji

W takim wypadku należy we wszystkich aplikacjach podać adresy kierujące do tego samego miejsca. Klucz również musi być identyczny.

# Implementacja innego operatora miniaturek

Z racji tego iż API operatorów miniaturek opiera się na endpointach typu GET istnieje możliwość podstawienia w wyżej wymienionej konfiguracji adresów do API innych operatorów. Wystarczy, że spełniają podobny wymóg co do podania adresu strony-miniaturki na końcu adresu. Przykład - zamiast:

IDIR_DIR_THUMBNAIL_URL=http://free.pagepeeker.com/v2/thumbs.php?size=x&url=

Należałoby wstawić:

IDIR_DIR_THUMBNAIL_URL=http://inny-operator-miniaturek.com/tutaj-reszta-adresu&zmienna-get-strony-miniaturki=


# Placeholder miniaturki

W przypadku braku odpowiedzi ze strony API operatora miniaturek, iDir domyślnie zwraca domyślną miniaturkę placeholder znajdujący się w lokalizacji:

/public/images/vendor/idir/thumbnail-default.png