Extension:CategoryTree/tr

CategoryTree uzantısı, wikinin kategori yapısının ağaç olarak dinamik bir görünümünü sağlar. Ağacın bölümlerini talep üzerine yüklemek için AJAX kullanır. CategoryTree aslen Daniel Kinzler tarafından harici bir araç olarak yazılmıştı, ancak daha sonra Tim Starling'in yardımıyla MediaWiki yazılımına entegre edildi.

Kullanım
CategoryTree üç şekilde kullanılabilir:
 * doğrudan kategori sayfalarında,
 * bir wiki sayfasında bir kategori yapısını göstermek için "özel etiket" (veya "ayrıştırıcı işlev") olarak,
 * ve özel bir sayfa olarak.

CategoryTree uzantısı kategori sayfalarında listelenen alt kategorilere ► "genişlet" widget'ları ekler.

The &lt;categorytree&gt; etiketi
Örnek. Sonuç, aşağıdaki kutuda ve sağda görülebilir:

Özel etikete &lt;categorytree&gt; denir. Örneğin, bir wiki sayfasına &lt;categorytree&gt;Foo&lt;/categorytree&gt; koyarsanız, Foo kategorisinin içeriğini o sayfada dinamik bir ağaç olarak gösterir (sağdaki örneğe bakın). Etiket, HTML benzeri bir sözdizimi kullanarak aşağıdaki özellikleri kabul eder:


 * mode: ağaçta hangi sayfaların gösterileceğini belirler. Bu,  seçeneğinin kullanılmasıyla geçersiz kılınabilir. Olası değerler:
 * categories: sadece alt kategorileri göster (yapılandırma sabiti )
 * pages: 200 sayfala sınırlı olarak, resimler hariç (alt yapı sabitini ) hariç alt kategorileri ve sayfaları göster
 * all: tüm sayfaları, alt kategorileri, resimleri vb. göster (yapılandırma değişkeni )
 * parents: alt kategoriler yerine üst kategorileri listeler (yapılandırma sabiti ). Bu, CategoryTree'yi "ters" işleme koyar (Temmuz 2008'den bu yana desteklenir).


 * depth: Başlangıçta ağacın kaç seviyesinin gösterileceğini belirler. Varsayılan 1.0, yalnızca kök düğümü anlamına gelir. Maksimum değer belirtilen moda ve  seçeneğine bağlıdır. (30.03.2007  ve  ile piyasaya sunuldu; Temmuz 2008 tarihinden bu yana   ile bile tamamen işlevsel.)
 * onlyroot : bunu başlangıçta yalnızca ağacın "kök" düğümünü gösterecek şekilde "on" olarak ayarlayın.  eşittir. (13.03.2007, rev1 tanıtıldı.) Temmuz 2008, ’den itibaren kaldırıldı: yerine   kullanın.
 * hideroot: ağacın "kök" düğümünü, yani  gizlemek için bunu "on" olarak ayarlayın. Örneğin, Foo kategori adını göstermeyecek.
 * hideprefix: ad alanı önekinin ağaçtaki girişlerden ne zaman gizlenmesi gerektiğini belirler (, Temmuz 2008'den beri). Olası değerler:
 * always: daima ön eki gizle. Yalnızca tüm sayfalar aynı ad alanından geliyorsa kullanılmalıdır (yapılandırma sabiti ).
 * never: kategori alanı için bile ad alanı önekini asla gizleme (yapılandırma sabiti ).
 * auto:  olduğu gibi, yalnızca kategoriler gösteriliyorsa, kategorilerin ad alanını gizleyin (yapılandırma sabiti  ). Bu, eski varsayılan davranışa eşdeğerdir (Haziran 2008'den önce).
 * categories: her zaman kategorilerin ad alanını gizler, fakat diğer tüm önekleri gösterir (yapılandırma sabiti $ const). Yeni varsayılan davranış budur (, Temmuz 2008'den beri).


 * showcount: alt kategorilerdeki girişlerin sayısını, yani  göstermek için bunu "on" olarak ayarlayın (, Temmuz 2008'den beri). Bu, sayfalarda sıralanan, ancak kategori listelerinde ve Special: CategoryTree'de varsayılan olarak etkin olan kategori ağaçları için devre dışı bırakılmıştır.
 * namespaces: Listedeki girişler boşlukla ayrılmış, ad alanı adları olmalıdır. Ana ad alanı "-" veya "0" ile gösterilebilir. Alt kategoriler sadece listede kategori isim alanı mevcutsa gösterilecektir.
 * class, style, id, vb: &lt;categorytree&gt; etiketi blok elemanları için tüm standart HTML özelliklerini destekler (Temmuz Temmuz 2008'den bu yana; ondan önce, sadece   desteklendi).

'Ad alanları' parametresi hakkında notlar
Kategori bir ad alanıdır. Kategoriler varsayılan olarak tüm modlarda gösterilir, ancak  parametresini belirlemek onları listede olmayan diğer ad alanları gibi gizler. Sayfaları alt kategorilerdeki sayfalar dahil olmak üzere belirli bir ad alanında listelemek istiyorsanız, sadece ad alanı listesine Kategori ekleyin.

Örnek:


 * Ana ad alanı sayfalarının Kategori:Manüel listelenmesi:


 * Ana ad alanı sayfalarını ve Kategori:Manüel alt kategorilerin listelenmesi:

parametresi  tarafından geçersiz kılınır:
 * Yalnızca Kategori ad alanı istenirse,  değerine eşittir;
 * Eğer dosya ad alanı listede mevcutsa,  anlamına gelir;
 * Aksi halde  kullanılacaktır. Bu, site yapılandırması değiştirilmemişse, aşağıdakilerin eşdeğer olduğu anlamına gelir (ilk ikisi her zaman eşittir, üçüncüsü yalnızca   varsayılan   ise):

ayrıştırıcı işlevi
'ten (13 Eyl 2007) bu yana, bir sayfaya kategori ağacı yerleştirmek için ayrıştırıcı işlevi sözdizimini de kullanabilirsiniz. Bu, farklı bir sözdizimi kullanarak, örneğin, &lt;categorytree&gt; etiketi gibi çalışır. ; seçenekler, adlandırılmış şablon parametreleri için sözdizimi kullanılarak belirlenebilir; ör. .

Ayrıştırıcı işlevi sözdiziminin kullanılması, gösterilecek kategoriyi belirlerken sihirli sözcükleri, şablonları ve şablon parametrelerini kullanmanıza izin verme avantajına sahiptir. Bazı örnekler:


 * "Bu sayfalar" kategori ağacını göstermek için bir sihirli değişken kullanmak (kategori açıklama sayfalarında faydalı olabilir):.
 * Kategoriyi belirlemek için bir şablon kullanmak:  - Kök kategorisinin adı Template:Root_category içeriğiyle tanımlanır.
 * Kategoriyi belirlemek için bir şablon parametresi kullanmak, bir şablon içinde CategoryTree kullanılırken: Template:Baz içinde   kullanarak çağrılabilir.

Special:CategoryTree sayfası
Özel sayfaya Special:CategoryTree denir:; orada bir kategorinin adını girip içeriğine göz atabilirsiniz.

Yapılandırma
dosyanızda belirleyebileceğiniz bazı seçenekler var:


 * $wgCategoryTreeMaxChildren: Bir ağaç düğümünde gösterilen maksimum çocuk sayısı. Varsayılan 200.
 * $wgCategoryTreeAllowTag: &lt;categorytree&gt; etiketini etkinleştir. Varsayılan doğrudur.
 * $wgCategoryTreeDynamicTag: ağacın ilk seviyesini &lt;categorytree&gt; dinamik olarak yükler. Bu şekilde, önbelleğin devre dışı bırakılması gerekmez. Varsayılan ayar yanlış.
 * $wgCategoryTreeDisableCache: &lt;categorytree&gt; etiketine sahip sayfalar için ayrıştırıcı önbelleğini devre dışı bırakır veya saniye cinsinden maksimum önbellek süresi sağlar. Varsayılan değer 6 saat olan 21600'dür.
 * $wgCategoryTreeUseCache: anon kullanıcıları için HTTP önbelleğini etkinleştir. Varsayılan ayar yanlış.
 * $wgCategoryTreeOmitNamespace : sayfalar ve kategoriler için ad alanı adını göstermiyor. Varsayılan değer yanlıştır, ad alanları yalnızca kategorileri göstermedikçe gösterilir., Temmuz 2008 itibariyle kullanımdan kaldırıldı: yerine  kullanın.
 * $wgCategoryTreeMaxDepth: ağacın başlangıçta bir &lt;category&gt; etiketindeki deepness parametresi kullanılarak genişletilebildiği her bir mod için maksimum derinliği tanımlayan bir dizi. Varsayılan olarak, bu "kategoriler" modu için 2 ve diğer modlar için 1 olarak ayarlanmıştır. Örneğin, kategoriler için 3 ve diğer modlar için 2 olarak ayarlamak için,  kullanabilirsiniz.
 * $wgCategoryTreeDefaultMode: &lt;categorytree&gt; etiketi etiketinde hiçbir mod özelliği belirtilmediğinde kullanılacak varsayılan mod.  (varsayılan),   veya   olabilir.
 * $wgCategoryTreeCategoryPageMode : Kategori sayfalarında ağaç oluştururken kullanılacak mod., Temmuz 2008 itibariyle kullanımdan kaldırıldı: bunun yerine  kullanın.
 * $wgCategoryTreeForceHeaders: true ise, talebin yerine her sayfada CategoryTree tarafından ihtiyaç duyulan komut dosyalarını zorlar. Bu, bir CategoryTree'nin alışılmadık bir şekilde, örneğin özel bir ciltte veya bir sistem mesajında gömülü olması durumunda gerekli olabilir (, Temmuz 2008'den beri).
 * $wgCategoryTreeSidebarRoot: kategori ağacını kenar çubuğuna entegre etmek için kullanılacak kök kategori (Temmuz 2008'den beri ). Ayarlanmadıysa, hiçbir ağaç birleştirilmez (bu varsayılandır). Bir CategoryTree'yi kenar çubuğuna entegre etmek, SkinTemplate, yani Modern, Monobook, Chick, Simple ve MySkin'e dayanan derilerle çalışır, ancak Standart, Nostalji veya CologneBlue'yu kullanmaz.
 * $wgCategoryTreeDefaultOptions: dizi olarak uygulanacak varsayılan seçenekler (, Temmuz 2008'den beri). Mevcut seçenekleri yukarıda açıklanmıştır. Örnek:
 * $wgCategoryTreeCategoryPageOptions: kategori sayfalarında dizi olarak kullanmak için seçenekler (, Temmuz 2008'den beri).
 * $wgCategoryTreeSpecialPageOptions: Özel üzerinde kullanmak için seçenekler: CategoryTree, dizi olarak (, Temmuz 2008'den beri).
 * $wgCategoryTreeSidebarOptions: ağacı kenar çubuğunda bir dizi olarak gösterirken kullanmak için seçenekler (, Temmuz 2008'den beri)

categorytree-member-num
Varsayılan olarak, bir kategori sayfasında alt kategorileri listelerken, her bir alt kategoriyi bir tamsayı izleyerek, altında kaç alt kategorinin bulunduğunu, kaç sayfa içerdiğini ve kategoride kaç dosya bulunduğunu gösterir (varsa):


 * Kategori adım (5 C, 2 P, 1 F)

MediaWiki:Categorytree-member-num sistem mesajını geçersiz kılarak bu davranışı değiştirebilirsiniz. Beş parametre alır:

Varsayılan değer.

İpucu: Farklı parçaları koşullu olarak görüntülemek için if/then/else mantığını sağlamak için uzantısını kullanın. Örneğin:

Tüm bilgileri çıkarırken virgül ve boşlukları yöneten bir yapılandırma:

Kısaltma versiyonu: 

Tam ad sürümü: 

CategoryTree kurulduktan sonra wiki bozuldu

 * özelliğini açın
 * Tüm dosyaların kurulu olduğundan emin olun
 * CategoryTree uzantı dosyalarının hepsinin mod 644 sahip olduğundan emin olun, ve CategoryTree dizini 755 moduna sahiptir.

LocalSettings.php içindeki seçenekler etkisizdir

 * Uzantı dahil sonra seçeneklerini belirlediğinizden emin olun.

► tıklamanın bir etkisi olmaz, bir JavaScript hatası verir veya yükleniyor üzerine oturur

 * &lt;categorytree&gt; etiketini sistem mesajlarında (MediaWiki ad alanı) kullanmak beklendiği gibi çalışmayabilir - bu bilinen bir uyarıdır. Geçici bir çözüm için, aşağıdaki ' Kenar Çubuğunda CategoryTree Kullanımı'' konusuna bakın.
 * Uzantıyı eklemeden önce LocalSettings.php içinde  olduğundan emin olun.
 * Uzantının en son sürümünü kullandığınızdan emin olun - kanama kenarı
 * Yeniden yazma kuralları veya takma adı kullanıyorsanız (örneğin, "çok kısa URL’lere" sahip olmak için - yani, belge kökündeki wiki sayfaları veya belki de istenen URL’nin www-sürümüne yönlendiren) /extensions dizini için geçerli bir istisna, /skins dizini için yaptığınız gibi. Ayrıca aşağıya bakınız.

► tıkladığınızda alt kategori yok hatası görünüyor

 * Bu kodu LocalSettings.php:  dizinine ekleyerek düzeltmeyi deneyin.

Tarayıcı, CategoryTree.js ve/veya CategoryTree.css için kötü bir MIME türü bildirdi

 * Web sunucunuzun .js ve .css dosyaları için doğru MIME türlerini kullandığından emin olun
 * URL’leri doğrudan tarayıcıya girin ve bazı sayfalarda sayfalar sunup sunmadığını kontrol edin; özellikle:
 * Yeniden yazma kuralları veya takma adı kullanıyorsanız (örneğin, "çok kısa URL’lere" sahip olmak - yani belge kökünde wiki sayfaları), /extension dizini için bir istisna olduğundan emin olun /skins dizini için olur.

Üye sayıları yanlış, ► yerine ► oklar
MediaWiki 1.13'ten bu yana, CategoryTree bir kategorideki üye sayısını gösterebilir ve o sayıya dayanan çocuğu olmayan ağaç düğümleri için gri bir ► oku gösterebilir. Bu bilgi yeni tablosuna dayanmaktadır. Ancak, bu tabloyu geçerli değerlerle doldurmak, 1.13'e yükseltirken her zaman çalışmaz. Bu durumda,  seçeneğiyle gerekirse,   bakım komut dosyasını çalıştırın.

► ► ▼ kategori ağacı görünümünün yalnızca ilk düzeyinde gösterilen geçişler
Ağacı görüntülerken yalnızca bir seviye derinliğe sahip olmanız durumunda, modules/ext.categoryTree.styles.css dosyasından  ile   kadar ayarlamayı deneyin.

Etiket stilini değiştirmeyi amaçlayan JavaScript bir şekilde hatalıdır.

Bot kullanıcılarına not
Kategori sayfalarının HTML'sini ayrıştıran botlar ve komut dosyaları, geleneksel çıktıyı zorlamak için notree URL parametresini kullanabilir. Bununla birlikte, HTML çıktısı genellikle kararlı değildir, bu nedenle betiğinizi kategori listelerini ve benzerlerini getirmek için kullanacak şekilde değiştirmeniz önerilir.

"Kategori Bulunamadı" mesajı
CategoryTree eklentisini uyguladıktan ve ağacı göstermek için kodu ekledikten sonra, Kategori Bulunamadı yazan bir mesaj görürseniz, kategori sayfalarınıza bazı içerikler eklemeniz gerekir. Temelde kategori sayfaları kırmızı sayfalar olamaz. Kategori adlarınızı tıklayın, kategori sayfasına bir metin ekleyin ve ardından ağacınız iyi çalışmalıdır.

Sonraki 200 bağlantı, CategoryTree yüklü olduğunda çalışmaz
Yüklemiş olduğunuz MediaWiki sürümüne göre, bu uzantının doğru sürümünün yüklendiğinden emin olun. Özellikle, 1.17'den önceki MediaWiki sürümleri için yapılan bu uzantının sürümleri, MediaWiki 1.17 ve üstü ile uyumlu değildir ve kategori sayfalarındaki sayfalama bağlantılarının kırıldığı sorunlara neden olur.

"Ad alanları" parametresi kullanılırken sayfa gösterilmez
Yukarıya bakınız.

CategoryTree'yi sistem mesajlarında ve özel görünümlerde kullanma
CategoryTree'yi sistem mesajlarında veya kenar çubuğunda kullanmak, yani sayfa içeriği yerine kullanıcı arayüzünün bir parçası olarak kullanmak için  değerini   değerine ayarlamalısınız, böylece destek komut dosyaları her sayfa (normalde, yalnızca "istek üzerine" bağlanır, ancak bu algılama sistem mesajları için çalışmaz). Bu (Temmuz 2008) beri çalışır. Bunu komut dosyalarını dahil etmeye zorlamadan denerseniz, ► tıklayınca hiçbir etkisi olmaz, bir JavaScript hatası verir veya sadece yüklenirken oturur bulunur.

CategoryTree'nin eski sürümlerinde, bu çalışmayı yapmak için kodu değiştirmeniz gerekir: CategoryTree.php dosyasıdaki  işlevini bulun ve koşulu kaldırın; yani, şöyle görünmeli:

JavaScript kullanımı
(Temmuz 2008) MediaWiki 1.13 sürümünden beri, bir KategoriTree'yi kenar çubuğuna, kök olarak kullanmak istediğiniz kategoriye   ayarlayarak ekleyebilirsiniz. Bu sadece SkinTemplate tabanlı derilerle çalışır, ancak Modern, Monobook, Chick, Simple ve MySkin'dir, ancak Standard, Nostalji veya CologneBlue değildir.

Kendi wiki metin makalenizi Kenar Çubuğuna bırakmak için LocalSettings.php dosyasında  kullanıyorsanız ve ardından buna ClassTree öğeleri eklemek istiyorsanız, her sayfanın çalışmasını sağlamak için   ayarlamanız gerekir.

Kategori Ağacının kenar çubuğunda farklı bir konumda olmasını istiyorsanız, MediaWiki:Sidebar üzerinde "categorytree-portlet" olarak kaynaklayabilirsiniz.

CategoryTree ve/veya MediaWiki'nin önceki sürümlerinde, kenar çubuğunda normal wiki metin özelliğini etkinleştirmek için MonoBook.php'ye bir mod yüklemeniz gerekir, bkz. --DJ 19:26, 24 January 2008 (UTC)

Araç kutunuza "CategoryTree" bağlantısını eklemek için, JavaScript sayfasına (örneğin,monobook.js) aşağıdaki kodu ekleyin ve URL'yi özelleştirin "w:en:Special:CategoryTree".

Bu kodun daha genel bir sürümü 'da bulunabilir.

Kolay çalışıyorsa adım adım:
 * Bu satırları ekleyin:

MediaWiki: ad alanı sayfaları kullanma
Kategori dışı bir sayfadayken, genel kategori sınıfına (Kategori ağacı olarak görüntülenir) ve belirli bir kategori sınıfına giden bir bağlantı oluşturmak istiyorsanız (Kategori ağacı olarak göster, bir kategori sayfasındayken örnek, görüntülediğiniz kategorinin adıdır):
 * MediaWiki:Sidebar ekleyin (SEARCH hemen üstünde iyi bir yer) bir satır,
 * Bir MediaWiki:Sidebarcategorytree oluşturun:
 * Bir MediaWiki:Sidebarcategorytree-url oluşturun:

İstenecek parametreler
"Modun" varsayılan site yapılandırmasını URL parametresi olarak vererek geçersiz kılmak mümkündür. Örneğin


 * - varsayılan modu kullan
 * - kategori modunu kullanın
 * - sayfa modunu kullan
 * - tüm modları kullan
 * - ortak modunu kullan