Meta tagi

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

  • dla strony:
    /resources/views/vendor/icore/web/layouts/layout.blade.php
  • dla panelu administracyjnego:
    /resources/views/vendor/icore/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/icore/web/post/show.blade.php przekazuje:

@extends(config('icore.layout') . '::web.layouts.layout', [
    'title' => [
        $post->meta_title,
        (bool)$post->comment === true ? trans('icore::pagination.page', ['num' => $comments->currentPage()]) : null
    ],
    'desc' => [$post->meta_desc],
    'keys' => [$post->tagList],

czyli:

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

# 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 - mini platforma blogowa"
  • skrócona nazwa aplikacji (używana między innymi w navbarze):
    APP_NAME_SHORT=iCore
  • 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=