İçeriğe geç

Eklentiler

TailwindPHP, resmi TailwindCSS eklentilerinin PHP bağlantı noktalarını içerir ve yerel bir PHP eklenti API arayüzü sunar. Eklentiler yardımcıları, bileşenleri ve varyantları kaydeder; girdi CSS dosyanızdaki @plugin yönergesiyle yüklenir. Yerleşik eklentiler, JavaScript karşılıklarının 1:1 bağlantı noktalarıdır; aynı seçicileri ve çıktıyı PHP içinde uygular, Node üzerinden çalıştırmaz. Bugün için bir istisna var: tipografi eklentisinin öğe değiştiricileri (prose-headings:, prose-a:, …), henüz uygulanmayan eklenti varyantlarına bağlıdır (#10).

@plugin kullanımı

Bir eklentiye @plugin ile adıyla başvurun. Yerleşik eklentiler kendi npm paket adını kullanır. Eklentinin sınıflarının yardımcılar katmanına eklenmesi için yönergeyi @import "tailwindcss/utilities.css"; ile eşleştirin:

PHP
use TailwindPHP\tw;

$css = tw::generate([
    'content' => '<article class="prose prose-lg"><h1>Hello</h1><p>Content here</p></article>',
    'css' => '
        @plugin "@tailwindcss/typography";
        @import "tailwindcss/utilities.css";
    ',
]);

Birden fazla eklenti birlikte yüklenebilir ve sıralama önemli değildir:

CSS
@plugin "@tailwindcss/typography";
@plugin "@tailwindcss/forms";
@import "tailwindcss/utilities.css";

@plugin başka bir at-kuralının (örneğin @media) içine yerleştirilemez; ayrıca kayıtlı olmayan bir eklenti adı hata verir.

Eklenti seçenekleri

Bir eklentiye seçenek iletmek için addan sonra CSS blok söz dizimini kullanın. Anahtarlar, eklentinin seçenek dizisindeki değerlerle eşleşir:

CSS
@plugin "@tailwindcss/forms" {
    strategy: "class";
}

@plugin "@tailwindcss/typography" {
    className: "markdown";
}

@tailwindcss/forms eklentisi strategy (base veya class) kabul eder; @tailwindcss/typography ise oluşturulan prose sınıfını yeniden adlandırmak için className kabul eder. Seçeneklerin tamamı için eklenti sayfalarına bakın.

Yerleşik eklentiler

Eklenti Açıklama
@tailwindcss/typography prose sınıfları — zengin metinler için tipografik varsayılanlar. Tipografi sayfasına bakın.
@tailwindcss/forms Sıfırlanabilir, biçimlendirilebilir form denetimleri. Formlar sayfasına bakın.

Özel eklentiler

PluginInterface arayüzünü uygulayıp PluginAPI üzerindeki yöntemleri kullanarak kendi eklentinizi yazın (addUtilities, matchUtilities, addComponents, addVariant, theme ve daha fazlası). registerPlugin(new MyPlugin()) ile kaydederek getName() tarafından döndürülen adın @plugin "my-plugin" yönergesinde çözümlenmesini sağlayın:

PHP
use function TailwindPHP\registerPlugin;

registerPlugin(new MyCustomPlugin());

Arayüz, eksiksiz bir örnek ve PluginAPI yöntem başvurusunun tamamı için Özel Eklentiler sayfasına bakın.