<p>Yalnızca, paylaşılan dosyadaki <code>@source</code> yollarının her iki panel dizinini kapsadığından emin olun, çünkü tek bir üretilmiş tema yalnızca oluşturulduğu panel için kapsama sahiptir.</p>
<h2>
<a name="reading-filaments-hook-classes" href="#reading-filaments-hook-classes"></a>
Filament'in Hook Sınıflarını Okuma
</h2>
<p>Renklerin ötesine geçip özelleştirmeye başladığınızda, <a href="https://filamentphp.com/docs/5.x/styling/css-hooks?ref=filamentmastery.com#common-hook-class-abbreviations" target="_blank" rel="noopener noreferrer">Filament'in CSS sınıflarını</a> hedefleyeceksiniz. Bunlar, aşağıdaki yan menü örneği ve arayüzün her yerinde kullanılanlardır. Ayrıca tutarlı bir adlandırma kuralına sahiptirler:</p>
<ul>
<li><code>fi</code> "Filament" için kısaltmadır.</li>
<li><code>fi-ac</code> Aksiyonlar paketinden kullanılan sınıflardır.</li>
<li><code>fi-fo</code> Formlar paketinden kullanılan sınıflardır.</li>
<li><code>fi-in</code> Bilgi listeleri paketinden kullanılan sınıflardır.</li>
<li><code>fi-no</code> Bildirimler paketinden kullanılan sınıflardır.</li>
<li><code>fi-sc</code> Şema paketinden kullanılan sınıflardır.</li>
<li><code>fi-ta</code> Tablolar paketinden kullanılan sınıflardır.</li>
<li><code>fi-wi</code> Widget’lar paketinden kullanılan sınıflardır.</li>
<li><code>btn</code> "buton" için kısaltmadır.</li>
<li><code>col</code> "sütun" için kısaltmadır.</li>
<li><code>ctn</code> "kapsayıcı" için kısaltmadır.</li>
<li><code>wrp</code> "saracak" için kısaltmadır.</li>
</ul>
<p>Bu deseni bildiğinizde, hook sınıf adları her zaman geliştirme kaynağını karıştırmadan daha anlaşılır hale gelir.</p>
<p><strong>Hook sınıflarını pratikte bulmak:</strong> Adlandırma kuralı, bulduğunuz bir sınıfın ne anlama geldiğini gösterir, ancak öncelikle bulmanız gerekir. En hızlı yol:</p>
<ol>
<li>Özelleştirmek istediğiniz panelde tarayıcı geliştirici araçlarınızı açın.</li>
<li>Hedeflemek istediğiniz öğeyi inceleyin.</li>
<li>Denetleyicide <code>fi-</code> ile başlayan sınıfları arayın.</li>
<li>Bu sınıfı tema CSS’inizde kullanın.</li>
</ol>
<p>Bu, yalnızca adlandırma kuralına dayanarak tahmin yapmak yerine, tam olarak görmekte olduğunuz öğeyi hedeflemenin en güvenilir yoludur.</p>
<h2>
<a name="customizing-your-theme" href="#customizing-your-theme"></a>
Temanızı Özelleştirme
</h2>
<p>Tema kaydedildikten sonra, artık kendi stillerinizi doğrudan <code>theme.css</code> dosyasına ekleyebilirsiniz. Filament'in hook sınıfları, belirli arayüz parçalarını hedeflemenize olanak tanıyan <a href="https://filamentphp.com/docs/5.x/styling/overview?ref=filamentmastery.com" target="_blank" rel="noopener noreferrer">Filament belgelerinde</a> belgelenmiştir.</p>
<p>İşte yan menüyü özelleştirme örneği, orijinal v3 kılavuzunda aynı fikre dayanarak, yeni dosya yapısına uyarlama:<br/></p>
<div class="highlight js-code-highlight">
<pre class="highlight css"><code><span class="k">@import</span> <span class="s2">'../../../../vendor/filament/filament/resources/css/theme.css'</span><span class="p">;</span>
@source ‘../../../../app/Filament/*/‘;
@source ‘../../../../resources/views/filament/*/‘;
.fi-sidebar {
@apply !bg-gray-500;
<span class="err">.fi-sidebar-header</span> <span class="err">{</span>
<span class="err">.fi-icon-btn-icon</span> <span class="err">{</span>
<span class="err">@apply</span> <span class="err">text-primary-500;</span>
<span class="p">}</span>
<span class="err">}</span>
<span class="nc">.fi-sidebar-group-label</span><span class="o">,</span> <span class="nc">.fi-icon-btn-icon</span><span class="o">,</span> <span class="nc">.fi-sidebar-group-icon</span><span class="o">,</span> <span class="nc">.fi-sidebar-item-icon</span><span class="o">,</span> <span class="nc">.fi-sidebar-item-button</span><span class="o">,</span> <span class="nc">.fi-sidebar-item-label</span> <span class="p">{</span>
<span class="err">@apply</span> <span class="err">text-white;</span>
<span class="p">}</span>
<span class="nc">.fi-sidebar-item-active</span> <span class="p">{</span>
<span class="err">.fi-sidebar-item-button</span> <span class="err">{</span>
<span class="err">@apply</span> <span class="err">bg-primary-500;</span>
<span class="p">}</span>
<span class="err">}</span>
<span class="nc">.fi-sidebar-item</span><span class="o">,</span> <span class="nc">.fi-sidebar-item-button</span> <span class="p">{</span>
<span class="err">:hover</span> <span class="err">{</span>
<span class="err">@apply</span> <span class="py">hover</span><span class="p">:</span><span class="n">bg-primary-500</span><span class="p">;</span>
<span class="p">}</span>
<span class="err">}</span>
<span class="nc">.fi-icon-btn</span> <span class="p">{</span>
<span class="err">:hover</span> <span class="err">{</span>
<span class="err">@apply</span> <span class="py">hover</span><span class="p">:</span><span class="n">text-primary-500</span><span class="p">;</span>
<span class="p">}</span>
<span class="err">}</span>
<span class="nc">.fi-sidebar-nav-groups</span> <span class="p">{</span>
<span class="err">@apply</span> <span class="err">gap-y-0;</span>
<span class="p">}</span>
<p><code>@apply</code> sözdizimi ve hook sınıflarının kendisi değişmedi. Değişen, onların etrafındaki tüm yapı: temanın oluşturulma şekli, Tailwind’in dosyalarınızı tarama şekli ve derleme yapılandırması.</p>
<h3>
<a name="using-css-variables-for-reusable-values" href="#using-css-variables-for-reusable-values"></a>
Tekrar kullanılabilir değerler için CSS değişkenlerini kullanma
</h3>
<p>Birden fazla kuralda aynı renk veya değeri tekrar tekrar buluyorsanız, <code>@layer base</code> içinde bir CSS değişkeni tanımlamak, işleri tutarlı hale getirir ve ileride güncellemeyi kolaylaştırır:<br/></p>
<div class="highlight js-code-highlight">
<pre class="highlight css"><code><span class="k">@layer</span> <span class="n">base</span> <span class="p">{</span>
<span class="nd">:root</span> <span class="p">{</span>
<span class="py">--sidebar-bg</span><span class="p">:</span> <span class="m">#1f2937</span><span class="p">;</span>
<span class="p">}</span>
<span class="nd">:root</span><span class="o">[</span><span class="nt">class</span><span class="o">~=</span><span class="s1">"dark"</span><span class="o">]</span> <span class="p">{</span>
<span class="py">--sidebar-bg</span><span class="p">:</span> <span class="m">#111827</span><span class="p">;</span>
<span class="p">}</span>
}