Manual:WikiPage.php
MediaWiki ファイル: WikiPage.php | |
---|---|
場所: | includes/page/ |
ソース コード: | master • 1.43.1 • 1.42.6 • 1.39.12 |
クラス: | MediaWiki\Page\WikiPage • Page |
WikiPage
クラスは、MediaWiki のページとその履歴を表現します。
It encapsulates access to page information stored in the database, and allows access to properties such as page text (in Wikitext format), flags, etc.
In theory, WikiPage is supposed to be the model object for pages, while the Article class handles the business and presentation functions.
Accessing a WikiPage object
- If you have an Article object, you can get a WikiPage object using
Article::getPage()
. - To request the WikiPage object from the current context, use
RequestContext::getWikiPage()
.
WikiPage オブジェクトの新規作成
Use a WikiPageFactory to create new WikiPage objects.
公開メソッド
getContent( $audience )
: Get the content of the latest revision, where $audience is one of:RevisionRecord::FOR_PUBLIC
- 全利用者に表示されるRevisionRecord::FOR_THIS_USER
-$wgUser
に表示されるRevisionRecord::RAW
- get the text regardless of permissions
- If the ContentHandler supports it, you can do something like the following to get the text of the latest revision in the main slot:
$text = $wikiPage->getContent( RevisionRecord::RAW )->getText();
- convertSelectType() - convert 'fromdb', 'fromdbmaster' and 'forupdate' to READ_* constants.
- getActionOverrides() - 比較: ContentHandler::getActionOverrides()
- clear() - オブジェクトをクリア
- clearPreparedEdit()
- pageDataFromTitle() - fetch a page record matching the Title object's namespace and title using a sanitized title string
- pageDataFromId()
- loadPageData() - load from a given source by title
- wasLoadedFrom() - check if page data was loaded
- loadFromRow() - load object from database row
- exists() - check if given page exists
- canExist()
- hasViewableContent()
- isNew() - check if the page has only one revision
- checkTouched() - check if page exists and is not a redirect.
page_touched
をロード - isSamePageAs()
Accessors and checks
- getId() - page ID を入手
- getTitle() - Get the Title object of the article.
- get data from the Title object:
- getNamespace() - 整数を返す
- getDBkey()
- getWikiId()
- getLanguage() - get language code for the page
- getContentHandler() - return ContentHandler instance to be used to deal with the content of this WikiPage.
- getContentModel() - return the page's content model id (see the CONTENT_MODEL_XXX constants).
- getRevisionRecord() - 最新のRevisionRecordを入手
- getContent() - get the content of the current revision.
- Get data from the
page
table- getQueryInfo() - return the tables, fields, and join conditions to be selected to create a new page object.
- getTouched() -
page_touched
のフィールドを取得する - getLinksTimestamp() -
page_links_updated
のフィールドを取得する - getLatest() -
page_latest
のフィールドを取得する - getPageIsRedirectField() - 以下を参照
- getTimestamp() - 最新版のタイムスタンプを取得します setTimestamp() も参照してください。
- 貢献するユーザーに関する:
- getContributors() - get a list of users who have edited this article, excluding the user who made the last article revision
- getUser() - get User ID of the user who made the last article revision.
- getCreator() - get User ID of the user who created the page
- getUserText()
- getComment()
- getMinorEdit()
- isCountable()
- カテゴリに関連する
- getCategories() - get a list of categories this page is a member of.
- getHiddenCategories()
- リダイレクトに関連する
- isRedirect()
- getPageIsRedirectField() - get the value of the
page_is_redirect
field in the database - followRedirect() - get the Title object or URL this page redirects to.
- getRedirectURL()
- Relating to parsing:
- getParserOutput() - get a ParserOutput for the given ParserOptions and revision ID.
- shouldCheckParserCache()
- Relating to the possibility of non-local databases
- isLocal() - check if content shown on this page comes from the local DB.
- getWikiDisplayName()
- getSourceURL()
- getMutableCacheKeys()
Setters, page actions and checks
- setTimestamp()
- リダイレクトに関連する:
- insertRedirect()
- insertRedirectEntry()
- doViewUpdates()
- doPurge() - run the actions of purging a page.
- insertOn() - insert a new empty page record for this article. Must be followed up by creating a revision and running $this->updateRevisionOn().
- updateRevisionOn() - update the page record to point to a newly saved revision.
- ページの節に関係する:
- supportsSections()
- replaceSectionAtRev()
- newPageUpdater() - return PageUpdater for creating the page or creating new page revisions.
- makeParserOptions() - get parser options suitable for rendering the primary article wikitext.
- updateParserCache() - パーサーキャッシュを更新する 非推奨化されるでしょう。
- doSecondaryDataUpdates() - 非推奨になるでしょう。
- doUpdateRestrictions() - update the article's restriction field, and leave a log entry. This works for protection both existing and non-existing pages.
- getCurrentUpdate() - get the state of an ongoing update, shortly before or just after it is saved to the database (since 1.38). 通常避けるべきです。
- Relating to page protection:
- insertNullProtectionRevision() - insert a new null/dummy revision for this page.
- protectDescription() - build the description to serve as comment for the edit.
- protectDescriptionLog() - build the description to serve as comment for the log entry.
- lockAndGetLatest() - Lock the page row for this title, namespace and id and return
page_latest
(or 0). - getAutoDeleteReason() - auto-generates a deletion reason
- updateCategoryCounts() - should only be called from deferred updates or jobs to avoid contention.
- toPageRecord() - get the page represented by this WikiPage as a PageStoreRecord.
- magic methods: __clone(), __wakeup(), __toString()
Hookのような方法
- onArticleCreate(), onArticleDelete()とonArticleEdit()
非推奨の方法
- factory(), newFromID()とnewFromRow() - methods for creating a WikiPage object - have been deprecated in favour of methods provided by WikiPageFactory.
- getRedirectTarget()
- replaceSectionContent()
- checkFlags()
- doUserEditContent()
- doEditUpdates()
- doDeleteArticleReal()
- doDeleteArticleBatched()
- doDeleteUpdates()
- getDeletionUpdates()
- hasDifferencesOutsideMainSlot()
- prepareContentForEdit() - prepare the content which is about to be saved.
- isBatchedDelete() - checks if deletion of this page would be batched. DeletePage::isBatchedDelete()を参照。
メソッドの完全な一覧については wmdoc:mediawiki-core/master/php/classWikiPage.html を参照してください。