Site Kontrolü ve Site Kuralları
Kara/beyaz liste ve URL, selector, düzen, eşik, CSS için siteye özel JSON kuralları.
| Özellik | Konum | Amaç |
|---|---|---|
| Site Kontrolü | Ayarlar → Genel | Eklentinin tamamını host bazında çalıştırır veya engeller. |
| Site Kuralları | Ayarlar → Site Kuralları | Eşleşen sayfanın ayrıştırma, düzen, filtre ve CSS davranışını değiştirir. |
Site Kontrolü çalıştırma politikasıdır. Eklenti çalışıyor fakat yanlış node seçiyor, inline metni bozuyor, kodu çeviriyor veya CSS gerektiriyorsa Site Kuralları kullanılır.
Host ve URL patterns
Kara liste liste dışındakilerde, beyaz liste yalnız listedekilerde çalışır. example.com alt alanları kapsar ancak yol/wildcard kabul etmez.
Site kuralları query string'i yok sayar:
| Pattern | Eşleşme |
|---|---|
github.com | hostun HTTP/HTTPS sayfaları |
*.example.com | kök ve alt alanlar |
docs.example.com/guides/* | belirli yol |
https://example.com/* | yalnız HTTPS |
www.amazon.* | farklı TLD hostları |
javdb*.com | javdb sonrası metin bulunan host |
Scheme http, https veya * olabilir; açık port yasaktır. İstisnalar için excludeMatches kullanın.
Öncelik ve birleştirme
Önce eşleşen etkin yerleşik kurallar, sonra kullanıcı kuralları uygulanır. Yerleşik kural ID ile kapatılabilir.
- Selector dizileri base,
.add,.removesırasıyla işlenir. minCharacters/minWordsiçin son değer kazanır.injectedCssveinjectedCss.addbirleştirilir.- Geçersiz pattern/selector uyarıyla atılır.
Diziler basitçe değiştirilmez; geri almak için .remove, genişletmek için .add kullanın.
Alanlar ve güvenli örnek
Her kuralda benzersiz id ve matches gerekir. excludeSelectors, includeSelectors, forceBlockSelectors, forceInlineSelectors, preserveTextSelectors, minCharacters, minWords, injectedCss kullanılabilir.
[
{
"id": "example-docs",
"description": "Translate article copy but leave navigation and code untouched.",
"matches": ["docs.example.com/*"],
"excludeSelectors": ["nav", "pre", "code", "[aria-label='Breadcrumb']"],
"includeSelectors": ["main article"],
"forceBlockSelectors": ["article p", "article li"],
"preserveTextSelectors": [".product-name", ".command-name"],
"minCharacters": 2,
"minWords": 1,
"injectedCss": ".read-frog-translated-content-wrapper { max-width: 100%; }"
}
]Dar bir hostta kaydedip sayfayı yenileyin, sonra pattern'i genişletin. Üretilen class yerine kararlı özellikleri kullanın.
[
{
"id": "example-docs-adjustment",
"matches": ["docs.example.com/*"],
"excludeSelectors.add": [".sidebar-ad"],
"excludeSelectors.remove": [".article-summary"],
"forceInlineSelectors.add": [".term-with-tooltip"]
}
]Editör JSON, schema, yinelenen ID, selector, pattern ve boyutu doğrular. Sınırlar: 200 kullanıcı kuralı, 65.536 JSON karakteri ve CSS başına 8.192 karakter.
CSS eşleşen her sayfaya enjekte edilir. Pattern'i dar tutun; giriş, güvenlik veya hesap kontrollerini gizlemeyin.
