Manual:Title.php/tr

MediaWiki yazılımının  sınıfı  ve IDBAccessObject arayüzlerini uygular. Aşağıdakiler dahil olmak üzere birçok amaç için kullanılan makale başlığını temsil eder:


 * maddenin okunabilir metin başlığı olarak
 * maddeye erişmek için kullanılan URL'de
 * maddeye vikimetin bağlantısı
 * madde veritabanının anahtarı

Sınıf, bu biçimlerden biriyle başlatılır. Bir kez başlatıldığında, başlık başka biçimlerde alınabilir veya öznitelikleri için sorgulanabilir. değerinin değişmez bir "value" sınıfı olması amaçlanmıştır, bu nedenle herhangi bir mutasyon işlevi yoktur.

örneğini oluşturmak için statik fabrika yöntemlerinden birini çağırın:


 * - Bu istediğiniz işlev değil. Title::newFromText kullanın.
 * - bir dizi Başlık döndürür
 * - Bir ad alanı dizininden ve bir DB anahtarından yeni bir Başlık oluşturun. Hata durumunda null değerini döndürür.
 * - Bu istediğiniz işlev değil. Title::newFromText kullanın.
 * - bir dizi Başlık döndürür
 * - Bir ad alanı dizininden ve bir DB anahtarından yeni bir Başlık oluşturun. Hata durumunda null değerini döndürür.
 * - Bir ad alanı dizininden ve bir DB anahtarından yeni bir Başlık oluşturun. Hata durumunda null değerini döndürür.

Bir kez başlatıldığında,,  ,   vb. gibi statik olmayan diğer erişimci yöntemleri kullanılabilir.

Bir Title nesneniz varsa, aşağıdakileri alabilirsiniz:


 * kullanarak nesne
 * kullanarak nesne

Bu sınıf, veritabanından çeşitli veri türlerini alabilir; ancak bunu verimsiz yapar. Bunun yerine nesnesi kullanmayı düşünün. TitleValue daha hafiftir ve küresel duruma veya veritabanına bağlı değildir.

Başlık yapısı
Başlık, isteğe bağlı bir Vikiarası önekinden (mediawiki.org'dan sayfalar için "$ 1" veya Vikipedi maddeler için " ") ve ardından isteğe bağlı bir ad alanından oluşur (" " gibi) ve ardından sayfa adı.

Vikiarası önekleri ve ad alanları
Vikiarası önekleri ve ad alanları aynı içerik kurallarına uyar:


 * bir harfle başlamalılar
 * iki nokta üst üste ile bitmeliler
 * yalnızca rakamlar, harfler, boşluk karakteri ve alt çizgi karakteri içerebilirler
 * boşluklar ve alt çizgiler değiştirilebilir olarak kullanılabilir
 * büyük/küçük harfe duyarlı değiller

Vikiarası önekleri ve ad alanları yalnızca, varsayılan olarak veya yapılandırma yoluyla belirli bir MediaWiki yüklemesi tarafından biliniyorsa tanınır.

Örneğin: Bu vikide " ", Vikipedi'deki " " maddesine bir bağlantıdır, çünkü " " izin verilen vikiarası öneklerinden biri olarak tanınır. " " başlığı şu anki vikinin " " ad alanındaki madde "adı" na bir bağlantıdır, çünkü " " tanınan bir ad alanıdır. Her ikisi de mevcut olabilir ve eğer öyleyse, vikiarası önce gelmelidir, örneğin, "$ itk3".

Bir başlık, ilk karakteri iki nokta üst üste ile başlıyorsa, hiçbir önek taranmaz ve başlık işlenmeden önce iki nokta üst üste kaldırılır. Bu kural nedeniyle isimlerinde iki nokta üst üste bulunan yazıların bulunması mümkündür. "$ alid", "Komandolar: Düşman Satırlarının Arkasında" olduğu gibi geçerli bir başlıktır, çünkü " " ve " " geçerli vikiaraları veya ad alanları değildir.

Madde adı
Madde adında boşluklar ve alt çizgiler eşdeğer kabul edilir ve uygun bağlamda her biri diğerine dönüştürülür (URL ve veritabanı anahtarlarında alt çizgi, düz metinde boşluklar). 0x80..0xFF aralığındaki "genişletilmiş" karakterlere her yerde izin verilir ve bunlar geçerli karakterlerdir. URL'lerde kodlanmıştır. Genişletilmiş karakterler, metin veya veritabanı anahtarları olarak kullanıldığında urlencoded değildir. Diğer karakterler ASCII harfleri, rakamları, tire, virgül, nokta, kesme işareti, parantez ve iki nokta üst üste olabilir. Başka hiçbir ASCII karakterine izin verilmez ve bulunursa silinir (muhtemelen bir tarayıcının URL'yi yanlış yorumlamasına neden olurlar).

Kanonik formlar
Bir başlığın kanonik biçimi her zaman nesne tarafından döndürülür. Kanonikleştirme aşağıdakileri içerir:


 * Bazı Unicode yönlü karakterler (soldan sağa işareti vb.) çıkarılır, çünkü bu genellikle hatalı kopyala ve yapıştır işleminden kaynaklanır.
 * Bölüm bağlantıları için kullanıldığı için  üzerinden sonraki her şey çıkarılır.
 * Alt çizgi dizileri ve/veya belirli boşluk karakterleri, tek bir alt çizgi (URL ve DBkey formları için) veya tek bir boşluk (metin formu için) halinde daraltılır. Başlığın (veya ad alanının veya vikiarası önekinin) başında veya sonunda, bunlar çıkarılır.
 * Tanınan vikiarası önekleri standartlaştırılmıştır, yani tamamen küçük harfle yazılmıştır.
 * Tanınan ad alanı adları standartlaştırılmıştır, yani ilk karakter büyük harfle yazılır ve sonraki karakterler küçük harfle yazılır. (Ancak bu, vikiarası bağlantıları için yapılmaz.)
 * Vikiye ve ad alanına bağlı olarak, bir başlığın ilk karakteri büyük harfle yazılabilir. (Ancak bu, vikiarası bağlantıları için yapılmaz.)
 * Anonim kullanıcıların kullanıcı sayfalarına bağlantılar için IP adresi standartlaştırılmıştır.
 * Kanonikleştirme süreci, çeşitli türden geçersiz başlıkları (çok uzun olanlar veya geçersiz karakterler içerenler gibi) reddetmek için bazı doğrulama mantığı da içerir.

MediaWikiTitleCodec Sınıfı için Diyagramlar
MediaWiki sayfa başlıkları için bir codec bileşeni: &#x5B;code link&#x5D;

Örnek
Belirli bir sayfanın zaten mevcut olup olmadığını kontrol etmek ve görmek için:

Bir bağlantıda ne bulacağı gibi metinden yeni bir Başlık oluşturun. Metindeki tüm HTML varlıklarının kodunu çözer. Boşluklar, önekler ve ana ad alanını belirten bir baş harf ':' kabul edilir. Sayfa yoksa, bunun onu oluşturmayacağını unutmayın. Bunun için Manual:Article.php sayfasına bakın.

İşlevler
Bu işlevlerin çoğu tarafından sihirli kelimeleri oluşturmak için kullanılır.

getArticleID
Bu Başlık için madde kimliğini bağlantı önbelleğinden alın ve gerekirse ekleyin.

"Dahili" maddeler için, makale mevcutsa "page_id" alanını döndürmelidir, madde takdirde 0 döndürür.

Tüm harici makaleler için 0 döndürür. Bir istek sırasında oluşturulan tüm Başlık örneklerinin tüm kimlikleri önbelleğe alınır, böylece çok sayıda dahili bağlantı içeren vikimetin oluşturulurken hızlı bir şekilde aranabilir.

getBaseText
Boşlukları alt çizgilere dönüştürmeden temel sayfa adını, yani ad alanı hariç en soldaki kısım ve eğik çizgilerden önce alın. ve sihirli kelimelerine bakın.

getText
Ana bölümün metin biçimini (alt çizgi olmayan boşluklar), yani ad alanı hariç, ancak eğik çizgi ve sonraki her şeyi içeren başlığı alır. sihirli kelimesine bakın.

getDBKey
Alt çizgili ana bölümü (yani ad alanı hariç başlık) alın.

getPrefixedDBKey
Alt çizgili önekli veritabanı anahtarı formunu alın.

getFragment
Başlık parçasını (yani # işaretinden sonraki bit) metin biçiminde alın.

getFullText
Boşluklarla birlikte önekli başlığı ve herhangi bir parçayı ('#' ile başlayan kısım) alın.

getPartialURL
Ana parçanın URL kodlu biçimini alın. sihirli kelimesine bakın.

getFullURL
Bu başlığa atıfta bulunan, vikiarası bağlantısı ve parçasıyla gerçek bir URL alın.

getLocalURL
Parça veya sunucu adı olmayan bir URL alın.

getPrefixedText
Boşluk içeren önekli başlığı alın. Bu, genellikle görüntüleme için kullanılan formdur. sihirli kelimesine bakın.

getPrefixedUrl
Vikiarası dahil, URL kodlu bir başlık (gerçek bir URL değil) alın. sihirli kelimesine bakın.

getSubjectNsText
Konu sayfasının (tartışma yerine) ad alanı metnini alın. ve sihirli kelimelerine bakın.

getSubjectPage
Bu tartışma sayfasının konu sayfasıyla ilişkili bir başlık nesnesi alın. sihirli kelimesine bakın.

getSubpageText
En düşük düzeydeki alt sayfa adını, yani herhangi bir bölü çizgisinden sonra en sağdaki kısmı alın. sihirli kelimesine bakın.

getSubpageUrlForm
Alt sayfa metninin URL kodlu bir biçimini alın. sihirli kelimesine bakın.

getTalkNsText
Tartışma sayfasının ad alanı metnini alın. ve sihirli kelimelerine bakın.

getTalkPage
Bu maddenin tartışma sayfasıyla ilişkili bir Title nesnesi alın. ve bakın.

getNamespace
Ad alanı dizinini alın. bakın.