Jump to content

Podręcznik:Title.php

From mediawiki.org
This page is a translated version of the page Manual:Title.php and the translation is 99% complete.

Before 1.40:

Klasa Title reprezentuje tytuły stron.

  • Title wdraża następujące interfejsy: LinkTarget , PageIdentity , IDBAccessObject
  • Można go wykorzystać w jednej z poniższych metod fabrycznych.
  • Po tym jak tytuł zostanie wprowadzony w instancji, można go odzyskać w innych formatach lub zapytać o jego atrybuty. Do tego dostępne są różne metody niestatycznego akcesoria, takie jak getText(), getDBKey(), getNamespace(), itp. Wiele z nich jest używanych przez Podręcznik:CoreParserFunctions.php do generowania magicznych słów.
  • Jest to klasy "wartości" niezmiennego, więc nie ma funkcji mutacyjnych.[1][2]

Retrieval

Methods for accessing an instance of Title include :

Metody publiczne

Metody instancji

Aby wkrótce wyliczyć Title wezwij jedną z metod statycznych fabryki:

  • Title::newFromDBKey( $key )
  • Title::newFromID( ($id, $flags=0) ). Zauważ, że alternatywna metoda, Title::newFromIDs( $ids ), jest przestarzała w korzyści z użycia QueryBuilder PageStore .
  • Title::newFromText( $text, $defaultNamespace=NS_MAIN )
  • Title::newFromURL( $url ) - To nie jest funkcja, której chcesz. Użyj Title::newFromText().
  • Title::makeTitleSafe( $ns, $title, $fragment= '', $interwiki= '') - Tworzyć nowy Title z indeksy przestrzeni nazw i klucza DB. Wraca null na błędy.
  • Title::newFromRow( $row )
  • Title::newMainPage() - utworzyć nową Title na Stronę główną.

Przykład

Sprawdzić, czy dana strona istnieje:

$titleObject = Title::newFromText( 'Talk:Your desired title here' );
if ( !$titleObject->exists() ) echo "There is no page with that name.";

Tworzyć nową Title z tekstu, np. to, co można znaleźć w linku. Dekoduje wszelkie podmioty HTML w tekście. Przyjmuje się przestrzenie, prefiksy oraz inicjał ':' wskazujący główną przestrzeń nazwisk. Należy pamiętać, że jeśli strona nie istnieje, to nie zostanie utworzona. W tym celu zobacz Podręcznik:Article.php .

Odnoszące się do tytułów stron

  • getDBKey() - uzyskać główny element (tj. tytuł z wyłączeniem przestrzeni nazw) z podkreśleniami.
  • getText() - uzyskać formularz tekstu (przestrzeni nie podkreśla) części głównej, tj. tytuł z wyłączeniem przestrzeni nazw, ale zawierając odcinki i wszystko po. Zobacz magiczne słowo {{PAGENAME }}.
  • W przypadku gdy istnieją, prefiksy z przestrzeni nazw i prefiksy międzywiki:
    • getPrefixedDBkey() - zróbcie to, aby uzyskać zapisywane formularze klucza bazy danych z podkreśleniami.
    • getPrefixedText() - zróbcie to, aby uzyskać tytuł z przestrzeniami. To jest zwykle używany do wyświetlania formularz. Zobacz magiczne słowo {{FULLPAGENAME }}.
      • __toString() - zwrócą wiersz przedstawienie bieżącego tytułu.
    • getFullText() - uzyskać tytuł wstępny z przestrzeniami, a także dowolny fragment (tj. część zaczynająca się od '#').
  • getRootText() - uzyskać tekst nazwy strony korzeni bez przestrzeni nazw, tj. najlewszą część przed wszelkimi wycięciami.
  • getRootTitle() - zdobądź tytuł nazwy strony, czyli najlewszą część przed wycięciem.
  • getBaseText() - uzyskać nazwę strony bazowej, tj. najlewszą część z wyłączeniem przestrzeni nazw i przed wszelkimi odcinkami (przed nazwą podstrony), bez przekształcenia przestrzeni w podkreślone. Zobacz magiczne słowa {{BASEPAGENAME }} i {{BASEPAGENAMEE }}.
  • getBaseTitle() - uzyskać tytuł nazwy strony bazowej, tj. część przed nazwą podstrony.

Odnoszące się do tytułów stron (zakodowane URL)

Tytuły z kodami URL, nie rzeczywiste adresy URL:

  • getPrefixedUrl() - uzyskać tytuł z kodem URL, w tym interwiki. Zobacz magiczne słowo {{FULLPAGENAMEE }}.
  • getPartialURL() - uzyskaj zakodowaną postać URL głównej części. Zobacz magiczne słowo {{PAGENAMEE }}.
  • getSubpageUrlForm() - uzyskaj kod URL formularza tekstu podstron. Zobacz magiczne słowo {{SUBPAGENAMEE }}.

Odnoszące się do tytułów URL

  • getFullURL() - Zdobądź prawdziwy adres URL odnoszący się do tego tytułu, z linkiem interwiki i fragmentem.
  • getFullUrlForRedirect()
  • getLocalURL() - uzyskać adres URL bez fragmentu lub nazwy serwera.
  • getLinkURL()
  • getInternalURL()
  • getCanonicalURL() - uzyskać adres URL dla kanonicznego linku, do użycia w takich sprawach jak IRC i e-mail. Używa haków $wgCanonicalServer i GetCanonicalURL.
  • getEditURL() - zbierz adres URL edycji (z action=edit) /za te Title

Sprawdzanie tytułów stron

  • equals() - porównanie sprawdząc, czy prefiks przestrzeni nazw, tekst tytułu i prefiks międzywiki są takie same.
  • isSameLinkAs() - podobny do equals(), ale dodatkowo porówna fragmenty. Zobacz też LinkTarget::isSameLinkAs()

Odnoszące się do fragmentów tytułu strony

  • getFragment() - uzyskać fragment Title (tj. bit po #) w formie tekstu.
  • hasFragment()
  • getFragmentForURL()
  • setFragment()
  • createFragmentTarget() - creates a new Title for a different fragment of the same page.

<span id="Relating_to_namespaces ">

Odnoszące się do przestrzeń nazw

  • getNamespace() - zrób indeks przestrzeni nazw. {{NAMESPACENUMBER }}.
  • getNamespaceKey() - generować łańcuchy używane do nazw xml id w tagach monobooku.
  • getNsText() - zdobądź tekst przestrzeni nazwisk strony. Zobacz magiczne słowa {{NAMESPACE }} i {{NAMESPACEE }}.

W przypadku innych opcji, zamiast NamespaceInfo zobacz.

<span id="Relating_to_talk_pages ">

Odniesienia do stron dyskusji

  • getTalkPageIfDefined() - uzyskać obiekt Title powiązany z stroną rozmowy bieżącego artykułu, jeśli taka strona rozmowy istnieje. Zobacz {{TALKPAGENAME }} i {{TALKPAGENAMEE }}. getTalkPage() jest przedawkowany od 1.34 (w korzyść getTalkPageIfDefined).
  • isTalkPage() - sprawdź bieżąca strona
  • getTalkNsText() - uzyskać tekst przestrzeni nazw na stronie rozmowy. Zobacz magiczne słowa {{TALKSPACE }} i {{TALKSPACEE }}.
  • getSubjectNsText() - uzyskać tekst przestrzeni nazw tej strony (zamiast rozmowy). Zobacz magiczne słowa {{SUBJECTSPACE }} i {{SUBJECTSPACEE }}.
  • getSubjectPage() - używany do uzyskania obiektu tytułowego związanego z stroną tematyczną tej strony rozmowy - jest przestarzały od 1.34 na korzyść NamespaceInfo::getSubjectPage . Zobacz również magiczne słowo {{SUBJECTPAGENAME }}.

<span id="Relating_to_categories ">

Odnosi się do kategorii

  • getParentCategories() - uzyskać kategorie, do których należał bieżący Title.
  • getParentCategoryTree() - zróbcie drzewo kategorii rodziców.
  • getCategorySortkey() - zwraca klucz sortowania surowego do użycia w kategoriach, z określonym prefiksem. To zostanie poddane do Collation::getSortKey() aby uzyskać klucz do sortowania binarnego, który może być używany do rzeczywistego sortowania.
  • canUseNoindex() - czy magic words __INDEX__ i __NOINDEX__ funkcje dla tej strony.

<span id="Relating_to_redirects ">

Odnosi się do przekierowań

  • isRedirect() - sprawdź, czy artykuł jest stroną przekierowania
  • getRedirectsHere() - zbierz wszystkie istniejące przekierowania do bieżącego Title.
  • isValidRedirectTarget() - sprawdź, czy bieżący Title jest ważnym celem przekierowania.
  • isSingleRevRedirect() - zamyka wiersz strony i sprawdza, czy ta strona jest przeprowadzeniem pojedynczej rewizji.

<span id="Relating_to_subpages ">

Odnoszące się do podstron

  • getSubpage() - uzyskać tytuł podstrony bieżącej strony.
  • getSubpageText() - uzyskać nazwa podstrony na najniższym poziomie, czyli najprawniejszą część po każdej usunięciu. Zobacz magiczne słowo {{SUBPAGENAME }}.
  • hasSubpages() - sprawdź, czy obecna strona ma podstrony.
  • getSubpages() - zdobądź wszystkie podstrony tej strony.
  • isSubpageOf() - sprawdź, czy bieżący tytuł jest podstroną innego tytułu.
  • Zobacz też: getSubpageUrlForm().

Odnoszące się do linków przychodzących i wychodzących

Uważaj na siebie:

  • getLinksTo
  • getTemplateLinksTo()
  • getLinksFrom()
  • getTemplateLinksFrom()
  • getBrokenLinksFrom()

Odnoszące się do języka strony

  • getPageLanguage() - uzyskać język, w którym treść tej strony jest napisana w wikitexcie. Domyślne język treści, ale w niektórych przypadkach może to być np. $wgLang (np. strony specjalne, które znajdują się w języku użytkownika).
  • getPageViewLanguage() - uzyskać język, w którym jest napisane treść tej strony, gdy użytkownik ją ogląda. Domyślne język treści, ale w niektórych przypadkach może to być np. $wgLang (np. strony specjalne, które znajdują się w języku użytkownika). Zastąpi się w 1,42 na korzyść ParserOutput::getLanguage i zobacz również OutputPage::getContLangForJS .

<span id="Relating_to_page_revisions ,_etc.">

Odnoszące się do poprawek strony , itp.

  • exists() - sprawdź, czy istnieje strona
  • isNewPage() - sprawdź, czy bieżąca strona jest nowa.
  • purgeExpiredRestrictions()
  • estimateRevisionCount() - uzyskać przybliżoną liczbę przeglądów bieżącej strony.
  • getDeletedEditsCount - licz archiwizowane przeglądy.
  • hasDeletedEdits() - sprawdź, czy w archiwum usuwania znajduje się wersja bieżącej strony.
  • getEditNotices() - uzyskać listę wyświetlonych komunikatów edycji na tej stronie.

W odniesieniu do page_touched/timestamps :

  • invalidateCache() - aktualizacje page_touched dla bieżącej strony. Jest wzywany z LinksUpdate.php .
  • touchLinks() - aktualizuj timestampy page_touched i wysyłaj wiadomości o wyczyszczeniu CDN na strony łączące się z tym tytułem. Może być wysłana do kolejki pracy w zależności od liczby linków. Zazwyczaj wzywa się do tworzenia i usunięcia.
  • getTouched() - zbieraj najnowszy dotykany codzienny znak

Odnoszące się do widoczności

  • isAlwaysKnown() - półdeprecyzowane do użytku publicznego
  • isKnown() - sprawdzić, czy aktualny Title odnosi się do strony, która może (lub może) być znacząco przeglądana?
  • hasSourceText() - sprawdź, czy obecna strona zawiera tekst źródłowy.
  • getDefaultMessageText() - Uzyskaj domyślne (proste) treści wiadomości dla strony, która przeniesie klucz wiadomości interfejsu.

Pamięć podręczna linków, identyfikatory stron itp.

  • getArticleID() - zbierz artykuł ID dla tego Title z pamięci podręcznej linków, dodając go w razie potrzeby. W przypadku artykułów "wnętrza", powinien zwrócić pole "page_id", jeśli artykuł istnieje, w przeciwnym razie zwróci 0. Dla wszystkich artykułów zewnętrznych oddaje 0. Wszystkie identyfikatory wszystkich przypadków Title utworzonych podczas żądania są przechowywane w pamięci podręcznej, dzięki czemu można je szybko wyszukiwać podczas renderingu wikitext z wieloma wewnętrznymi linkami.
  • resetArticleID() - wstrzyknąć identyfikator strony, ustawić pola obciążone DB i usunąć pamięć cache linku dla bieżącej Title.
  • clearCaches() - czysty link cache, a także Title cache.
  • getLatestRevID() - uzyskać pole page_latest.
  • getLength() - uzyskać długość strony.
  • pageCond() - uzyskać zestaw stowarzyszenia do wyboru bieżącego tytułu z tabeli page
  • getWikiId()
  • getId() - uzyskać identyfikator strony.
  • toPageIdentity() - zwróć stronę reprezentowaną obecnym Title jako ProperPageIdentity .
  • toPageRecord() - zwróć stronę reprezentowaną obecnym Title jako ProperPageRecord .

Użycie obiektu Title

Aby tworzyć obiekty lub uzyskać dostęp do danych, wiele metod w innych klasach MediaWiki PHP zależy od dostępności obiektu Title.

Na przykład, jeśli masz obiekt Title możesz uzyskać:

Ta klasa może pozyskać różne rodzaje danych z bazy danych, ale robi to nieefektywnie. Rozważ użycie obiektu TitleValue zamiast tego. TitleValue jest lekki i nie zależy od stanu globalnego ani bazy danych.

Zobacz też

Przypisy

  1. Zmienny jest kluczowym słowem normy, mówiącym, że nawet obiekt const może modyfikować tę zmienną. Atrybut zmienny może być prywatny lub publiczny. Zawsze można go modyfikować nawet wtedy, gdy obiekt znajduje się w stałym kontekście.
  2. Mutator to ogólna nazwa funkcji członkowskiej, która może modyfikować jedną lub więcej zmiennych prywatnych obiektu z zewnątrz. Nie ma sensu, żeby to było prywatne.