Meta tagi

Głowna konstrukcja meta tagów odbywa się z poziomu plików:

  • dla strony:
    /resources/views/vendor/idir/web/layouts/layout.blade.php
  • dla panelu administracyjnego:
    /resources/views/vendor/idir/admin/layouts/layout.blade.php


# Tytuł, opis i słowa kluczowe

  • tytuł:
    <title>{{ $getMeta(array_merge($title, [config('app.name')]), ' - ') }}</title>
  • opis:
    <meta name="description" content="{{ $getMeta(array_merge($desc, [config('app.desc')]), '. ') }}">
  • słowa kluczowe:
    <meta name="keywords" content="{{ mb_strtolower($getMeta(array_merge($keys, [config('app.keys')]), ', ')) }}">

Metoda getMeta() przyjmuje 2 parametry:

  • pierwszy łączy tablicę wyrażeń przekazanych z widoku z głównym tytułem/opisem/słowami kluczowymi aplikacji
  • drugi określa separator, domyślnie dla tytułu jest to myślnik, dla opisu kropka, dla słów kluczowych przecinek

Wyrażenia w formacie tablicy przekazywane są przez poszczególne pliki widoku. Przykładowo podstrona wpisu, czyli plik widoku /resources/views/vendor/idir/web/dir/show.blade.php przekazuje:

@extends(config('idir.layout') . '::web.layouts.layout', [
    'title' => [
        $dir->title,
        $comments->currentPage() > 1 ?
            trans('icore::pagination.page', ['num' => $comments->currentPage()])
            : null
    ],
    'desc' => [$dir->short_content],
    'keys' => [$dir->tag_list],

czyli:

  • do "meta title" przekazany zostaje tytuł wpisu, po myślniku informacja o aktualnej stronie (wpis może mieć paginowane komentarze)
  • do "meta description" przekazany zostanie skrócony opis wpisu pozbawiony formatowania
  • do "meta keywords" przekazana zostanie lista tagów zdefiniowanych dla wpisu

# Konfiguracja

Z poziomu pliku .env w głównym folderze z aplikacją można ustawić kilka głównych ustawień.

  • nazwa aplikacji (używana między innymi w meta tagach oraz w footerze):
    APP_NAME="iDir - nowoczesny katalog stron"
  • skrócona nazwa aplikacji (używana między innymi w navbarze):
    APP_NAME_SHORT=iDir
  • opis aplikacji (używany między innymi w meta tagach oraz w footerze):
    APP_DESC="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin nibh augue, suscipit a, scelerisque sed, lacinia in, mi. Cras vel lorem. Etiam pellentesque aliquet tellus."
  • słowa kluczowe aplikacji (używane między innymi w meta tagach):
    APP_KEYS=