Úvod pro vývojáře

Architektura pluginu

Plugin Affinite WP Watermark je postaven na moderní PHP architektuře s důrazem na:

  • PSR-4 autoloading – automatické načítání tříd
  • Namespace organizace – logické seskupení funkcionalit
  • Strict types – přísná kontrola typů
  • Type hints – typové nápovědy pro všechny parametry a návratové hodnoty

Struktura souborů

Plugin má následující strukturu:

affinite-wp-watermark/
├── src/
│   ├── Admin/          # Admin rozhraní
│   ├── Core/           # Hlavní logika
│   ├── Database/       # Databázové operace
│   ├── REST/           # REST API endpointy
│   └── Views/          # View třídy
├── templates/          # PHP šablony
├── assets/             # CSS, JS, fonty
└── vendor/             # Composer závislosti

Coding standards (PSR-12, WPCS)

Plugin dodržuje:

  • PSR-12 – PHP coding standard
  • WordPress Coding Standards – WordPress specifické konvence
  • PSR-4 – autoloading standard

Namespace konvence

Všechny třídy používají namespace AffiniteWpWatermark s následující strukturou:

  • AffiniteWpWatermarkAdmin – admin třídy
  • AffiniteWpWatermarkCore – hlavní logika
  • AffiniteWpWatermarkREST – REST API
  • AffiniteWpWatermarkDatabase – databázové operace

Type hints a return types

Všechny metody používají:

  • Type hints pro všechny parametry
  • Return types pro všechny návratové hodnoty
  • Strict types na začátku každého souboru
declare(strict_types=1);

public function process_image(int $attachment_id): bool {
    // ...
}