Extension:Highlight Links in Category

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:Highlight Links in Category and the translation is 100% complete.
Other languages:
English • ‎Türkçe • ‎日本語
MediaWiki manüel uzantıları
OOjs UI icon advanced.svg
Highlight Links in Category
Sürüm durumu: kararlı
Highlightlinksincategory.png
Uygulama Kullanıcı arayüzü, Vikim
Açıklama Adds a CSS class to links pointing to members of a category
Yazar(lar) Brent Laabs (BrentLaabsmesaj)
En son sürüm 0.9.0 (2016-03-21)
MediaWiki 1.25+
Veritabanı değişiklikleri Hayır
Lisans MIT Lisansı
İndir
readme
repository
Örnek https://allthetropes.org/
$wgHighlightLinksInCategory
Kullanım ve sürüm matrisini kontrol edin.

Highlight Links in Category, bir kategorinin üyelerine işaret eden bağlantılara CSS sınıfı ekleyen bir uzantıdır.

Bir sorunu veya hatayı bildirmek için lütfen Miraheze Phabricator kullanın.

Kurulum

  • Dosyaları indirin ve extensions/ klasörünüzdeki HighlightLinksInCategory adlı dizine yerleştirin.
  • LocalSettings.php dosyanızın altına aşağıdaki kodu ekleyin:
    wfLoadExtension( 'HighlightLinksInCategory' );
    
  • Yes Yapıldı – Uzantının başarıyla yüklendiğini doğrulamak için vikinizde Special:Version seçeneğine gidin.

Yapılandırma parametreleri

$wgHighlightLinksInCategory
Bu küresel hangi kategorilerin ek bir CSS sınıfı alacağını yapılandıran bir dizidir. Anahtarlar, boşluk yerine alt çizgi içermesi gereken Kategori adlarıdır. Kategori: ad alanını dahil etmeyin. Her anahtarın değeri, o kategoriye eklemek istediğiniz CSS sınıfıdır. Örneğin:
    $wgHighlightLinksInCategory = array(
        "Disambiguation_pages" => 'disambig',
        "Templates" => 'templates',
    );

Birden fazla sınıf eklemek istiyorsanız, sınıf adlarını boşluklarla ayırın, şunun gibi

    $wgHighlightLinksInCategory = array( "My_Cat" => "class1 class2 class3" );

Bunlardan istediğiniz kadar ekleyebilirsiniz, ancak kullanıcı deneyimi açısından 500 farklı stil bağlantısı eklemek muhtemelen harika değildir.

$wgHighlightLinksInCategory ayarlanmamış veya boş ise, bu uzantı hiçbir şey yapmaz. Bir viki çiftliği çalıştırıyorsanız ve bazı vikilerde kapatmanız gerekiyorsa, $wgHighlightLinksInCategory = null; false kullanmak yanlış davranışa yol açabilir.

Stil

MediaWiki:Common.css vikinizde bağlantılar için ihtiyacınız olan stilleri ekleyin. Örneğin:

    a.disambig {
        color: rebeccapurple
    }
    a.templates {
        font-weight: bold;
        background-color: #efe;
    }

Bir kategorinin diğerini geçersiz kılmasını istiyorsanız, bunu CSS ile belirtmeniz gerekir.

    a.templates.disambig {
        font-weight: normal;
        background-color: transparent;
        color: rebeccapurple;
    }

Veya alternatif olarak, orijinal a.templates kuralını bunun yerine a.templates:not(.disambig) olarak tanımlayabilirsiniz.

Bağlantı simgesi yaklaşımı da var:

    a.superlink {
        background-image: url(super.png);
        padding-left: 16px;
    }

Kullanıcı geçişleri

Bu vurgulamayı açıp kapatmanın kolay bir yolu, içinde CSS olan bir küçük araç oluşturmaktır. Evet, bu, kişiselleştirme bölümünü diğer uzantılara aktaran bir kişiselleştirme uzantısıdır; Hala geceleri uyuyabilirim.

Bu nasıl çalışır

MediaWiki hangi bağlantılı sayfaların var olduğunu belirledikten hemen sonra (kırmızı bağlantı yapmak için), GetLinkColours kancasını çalıştırır (LinkHolderArray.php bakın). Bu sayfada bağlantılı tüm sayfa kimliklerinin bir listesine sahip olduğumuz için, bu bağlantılardan hangilerinin vurgulamak istediğimiz kategori kümesinde olduğunu görmek için bir veritabanı sorgusu çalıştırabiliriz. Sorgu yalnızca categorylinks tablosunun bir dizininde gerçekleştiğinden, oldukça hızlıdır. Ardından, kullanıcının $wgHighlightLinksInCategory içinde ayarladığı yapılandırma değerleri kullanılarak sonuca göre CSS sınıfları atanır.

CSS'nin nasıl çalıştığını açıklamak bu belgenin kapsamı dışındadır.

Bilinen sorunlar

  • CSS stilleri Flow'a eklenmez, çünkü orada GetLinkColors kancasını çağırmıyor gibi görünüyor.

Ayrıca bakınız