---
title: "Vlastný model príspevku — Posts for Laravel | Roundly"
description: "Rozšírte Post vlastnou podtriedou — balík ju všade vytvára, dotazuje a viaže a Posts::query() vráti práve ju."
url: https://roundly-consulting.com/sk/open-source/navody/posts-for-laravel/vlastny-model
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Posts for Laravel](https://roundly-consulting.com/sk/open-source/navody/posts-for-laravel.md)

# Vlastný model príspevku

Post zámerne nie je final. Vytvorte podtriedu a nasmerujte na ňu posts.model:

```php
namespace App\Models;

use RoundlyConsulting\Posts\Models\Post;

class Article extends Post
{
    // your relations, scopes, accessors and overrides
}
```

```php
// config/posts.php
'model' => App\Models\Article::class,
```

Balík používa posts.model všade — v create(), v publishDue() a príkaze na plánované publikovanie, v listeneroch, vo väzbe rôut, v HasPosts, v reláciách posts() kategórií a tagov aj vo factory príspevkov — takže vytvára, dotazuje a viaže práve vašu podtriedu. V hostiteľskom kóde sa k nej dostanete cez fasádu:

```php
use RoundlyConsulting\Posts\Facades\Posts;

Posts::query();                    // Builder over the configured model (Article)
Posts::published();                // its published() scope
Posts::findBySlug('hello-world');  // ?Article
Posts::create($data);              // creates an Article
```

Bez nastavenia alebo pri prázdnej hodnote sa použije Post; akákoľvek iná hodnota musí byť Post alebo jeho podtriedou, inak sa vyhodí InvalidConfigurationException z toolkitu s názvom kľúča — cudzia trieda sa nikdy potichu nenahradí. Post::findBySlug() vždy použije triedu z balíka — použite radšej Posts::findBySlug() alebo Posts::query(). Category a Tag sú final.

## Ďalšie možnosti rozšírenia

- Tabuľky — ľubovoľnú tabuľku premenujete v posts.tables.\* pred migráciou.
- Kľúče — key\_type a primary\_key\_type pred migráciou.
- SEO a JSON-LD — predvolené hodnoty seo.\* a json-ld.\*, setSeo() pre konkrétny príspevok a publikované posts-views.
- Háčiky publikačného cyklu — počúvajte štyri udalosti cyklu.
- Médiá — názvy skupín, disk, šírky, variant pre og:image a správanie tokenov v posts.media.\*.
- Moderácia — posts.moderation.\*, alebo počúvajte udalosti reports sami.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/posts-for-laravel.md)
