|
MediaWiki
master
|
Maintenance script that generates a sitemap for the site. More...


Public Member Functions | |
| __construct () | |
| Constructor. More... | |
| close (&$handle) | |
| gzclose() / fclose() wrapper More... | |
| closeFile () | |
| Return the XML required to close sitemap file. More... | |
| closeIndex () | |
| Return the XML required to close a sitemap index file. More... | |
| execute () | |
| Execute. More... | |
| fileEntry ($url, $date, $priority) | |
| Return the XML for a single sitemap entry. More... | |
| generateLimit ($namespace) | |
| Populate $this->limit. More... | |
| generateNamespaces () | |
| Generate a one-dimensional array of existing namespaces. More... | |
| getPageRes ($namespace) | |
| Return a database resolution of all the pages in a given namespace. More... | |
| guessPriority ($namespace) | |
| If the namespace isn't listed on the priority list return the default priority for the namespace, varies depending on whether it's a talkpage or not. More... | |
| indexEntry ($filename) | |
| Return the XML for a single sitemap indexfile entry. More... | |
| main () | |
| Main loop. More... | |
| open ($file, $flags) | |
| gzopen() / fopen() wrapper More... | |
| openFile () | |
| Return the XML required to open a sitemap file. More... | |
| openIndex () | |
| Return the XML required to open a sitemap index file. More... | |
| priority ($namespace) | |
| Get the priority of a given namespace. More... | |
| sitemapFilename ($namespace, $count) | |
| Get a sitemap filename. More... | |
| write (&$handle, $str) | |
| gzwrite() / fwrite() wrapper More... | |
| xmlHead () | |
| Return the XML required to open an XML file. More... | |
| xmlSchema () | |
| Return the XML schema being used. More... | |
Public Member Functions inherited from Maintenance | |
| __construct () | |
| Default constructor. More... | |
| checkRequiredExtensions () | |
| Verify that the required extensions are installed. More... | |
| cleanupChanneled () | |
| Clean up channeled output. More... | |
| clearParamsAndArgs () | |
| Clear all params and arguments. More... | |
| execute () | |
| Do the actual work. More... | |
| finalSetup () | |
| Handle some last-minute setup here. More... | |
| getConfig () | |
| getDbType () | |
| Does the script need different DB access? By default, we give Maintenance scripts normal rights to the DB. More... | |
| getName () | |
| Get the script's name. More... | |
| globals () | |
| Potentially debug globals. More... | |
| isQuiet () | |
| loadParamsAndArgs ($self=null, $opts=null, $args=null) | |
| Process command line arguments $mOptions becomes an array with keys set to the option names $mArgs becomes a zero-based array containing the non-option arguments. More... | |
| loadSettings () | |
| Generic setup for most installs. More... | |
| loadWithArgv ($argv) | |
| Load params and arguments from a given array of command-line arguments. More... | |
| memoryLimit () | |
| Normally we disable the memory_limit when running admin scripts. More... | |
| outputChanneled ($msg, $channel=null) | |
| Message outputter with channeled message support. More... | |
| purgeRedundantText ($delete=true) | |
| Support function for cleaning up redundant text records. More... | |
| runChild ($maintClass, $classFile=null) | |
| Run a child maintenance script. More... | |
| setConfig (Config $config) | |
| setDB (IDatabase $db) | |
| Sets database object to be returned by getDB(). More... | |
| setup () | |
| Do some sanity checking and basic setup. More... | |
| updateSearchIndex ($maxLockTime, $callback, $dbw, $results) | |
| Perform a search index update with locking. More... | |
| updateSearchIndexForPage ($dbw, $pageId) | |
| Update the searchindex table for a given pageid. More... | |
Public Attributes | |
| bool | $compress |
| Whether or not to use compression. More... | |
| object | $dbr |
| A database slave object. More... | |
| resource | $file |
| A resource pointing to a sitemap file. More... | |
| resource | $findex |
| A resource pointing to the sitemap index file. More... | |
| string | $fspath |
| The path to prepend to the filename. More... | |
| array | $limit = [] |
| The number of entries to save in each sitemap file. More... | |
| array | $namespaces = [] |
| A one-dimensional array of namespaces in the wiki. More... | |
| array | $priorities = [] |
| Key => value entries of namespaces and their priorities. More... | |
| int | $size_limit |
| The maximum size of a sitemap file. More... | |
| bool | $skipRedirects |
| Whether or not to include redirection pages. More... | |
| string | $timestamp |
| When this sitemap batch was generated. More... | |
| int | $url_limit |
| The maximum amount of urls in a sitemap file. More... | |
| string | $urlpath |
| The URL path to prepend to filenames in the index; should resolve to the same directory as $fspath. More... | |
| const | GS_MAIN = -2 |
| const | GS_TALK = -1 |
Public Attributes inherited from Maintenance | |
| resource | $fileHandle |
| Used when creating separate schema files. More... | |
| $mDbPass | |
| array | $orderedOptions = [] |
| Used to read the options in the order they were passed. More... | |
| const | DB_ADMIN = 2 |
| const | DB_NONE = 0 |
| Constants for DB access type. More... | |
| const | DB_STD = 1 |
| const | STDIN_ALL = 'all' |
Private Member Functions | |
| setNamespacePriorities () | |
Private Attributes | |
| string | $identifier |
| Identifier to use in filenames, default $wgDBname. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Maintenance | |
| static | posix_isatty ($fd) |
| Wrapper for posix_isatty() We default as considering stdin a tty (for nice readline methods) but treating stout as not a tty to avoid color codes. More... | |
| static | readconsole ($prompt= '> ') |
| Prompt the console for input. More... | |
| static | shouldExecute () |
| Should we execute the maintenance script, or just allow it to be included as a standalone class? It checks that the call stack only includes this function and "requires" (meaning was called from the file scope) More... | |
Protected Member Functions inherited from Maintenance | |
| activateProfiler () | |
| Activate the profiler (assuming $wgProfiler is set) More... | |
| addArg ($arg, $description, $required=true) | |
| Add some args that are needed. More... | |
| addDefaultParams () | |
| Add the default parameters to the scripts. More... | |
| addDescription ($text) | |
| Set the description text. More... | |
| addOption ($name, $description, $required=false, $withArg=false, $shortName=false, $multiOccurrence=false) | |
| Add a parameter to the script. More... | |
| adjustMemoryLimit () | |
| Adjusts PHP's memory limit to better suit our needs, if needed. More... | |
| afterFinalSetup () | |
| Execute a callback function at the end of initialisation. More... | |
| beginTransaction (IDatabase $dbw, $fname) | |
| Begin a transcation on a DB. More... | |
| commitTransaction (IDatabase $dbw, $fname) | |
| Commit the transcation on a DB handle and wait for slaves to catch up. More... | |
| deleteOption ($name) | |
| Remove an option. More... | |
| error ($err, $die=0) | |
| Throw an error to the user. More... | |
| getArg ($argId=0, $default=null) | |
| Get an argument. More... | |
| getDB ($db, $groups=[], $wiki=false) | |
| Returns a database to be used by current maintenance script. More... | |
| getDir () | |
| Get the maintenance directory. More... | |
| getOption ($name, $default=null) | |
| Get an option, or return the default. More... | |
| getStdin ($len=null) | |
| Return input from stdin. More... | |
| hasArg ($argId=0) | |
| Does a given argument exist? More... | |
| hasOption ($name) | |
| Checks to see if a particular param exists. More... | |
| loadSpecialVars () | |
| Handle the special variables that are global to all scripts. More... | |
| maybeHelp ($force=false) | |
| Maybe show the help. More... | |
| output ($out, $channel=null) | |
| Throw some output to the user. More... | |
| requireExtension ($name) | |
| Indicate that the specified extension must be loaded before the script can run. More... | |
| rollbackTransaction (IDatabase $dbw, $fname) | |
| Rollback the transcation on a DB handle. More... | |
| setBatchSize ($s=0) | |
| Set the batch size. More... | |
| validateParamsAndArgs () | |
| Run some validation checks on the params, etc. More... | |
Protected Attributes inherited from Maintenance | |
| $mArgList = [] | |
| $mArgs = [] | |
| int | $mBatchSize = null |
| Batch size. More... | |
| $mDbUser | |
| $mDescription = '' | |
| $mInputLoaded = false | |
| $mOptions = [] | |
| $mParams = [] | |
| $mQuiet = false | |
| $mSelf | |
| $mShortParamsMap = [] | |
Maintenance script that generates a sitemap for the site.
Definition at line 36 of file generateSitemap.php.
| GenerateSitemap::__construct | ( | ) |
Constructor.
Definition at line 146 of file generateSitemap.php.
References Maintenance\addDescription(), and Maintenance\addOption().
| GenerateSitemap::close | ( | & | $handle | ) |
gzclose() / fclose() wrapper
| resource | $handle |
Definition at line 435 of file generateSitemap.php.
Referenced by main().
| GenerateSitemap::closeFile | ( | ) |
Return the XML required to close sitemap file.
Definition at line 538 of file generateSitemap.php.
Referenced by generateLimit(), and main().
| GenerateSitemap::closeIndex | ( | ) |
Return the XML required to close a sitemap index file.
Definition at line 502 of file generateSitemap.php.
Referenced by main().
| GenerateSitemap::execute | ( | ) |
Execute.
Definition at line 180 of file generateSitemap.php.
References $fspath, DB_SLAVE, Maintenance\error(), generateNamespaces(), Maintenance\getDB(), Maintenance\getOption(), main(), setNamespacePriorities(), TS_ISO_8601, wfMkdirParents(), wfTimestamp(), wfTimestampNow(), and wfWikiID().
| GenerateSitemap::fileEntry | ( | $url, | |
| $date, | |||
| $priority | |||
| ) |
Return the XML for a single sitemap entry.
| string | $url | An RFC 2396 compliant URL |
| string | $date | A ISO 8601 date |
| string | $priority | A priority indicator, 0.0 - 1.0 inclusive with a 0.1 stepsize |
Definition at line 523 of file generateSitemap.php.
Referenced by generateLimit(), and main().
| GenerateSitemap::generateLimit | ( | $namespace | ) |
Populate $this->limit.
| int | $namespace |
Definition at line 547 of file generateSitemap.php.
References $title, closeFile(), fileEntry(), Title\makeTitle(), openFile(), priority(), TS_ISO_8601, and wfTimestamp().
Referenced by main().
| GenerateSitemap::generateNamespaces | ( | ) |
Generate a one-dimensional array of existing namespaces.
Definition at line 251 of file generateSitemap.php.
References $res, $wgSitemapNamespaces, as, global, and namespaces.
Referenced by execute().
| GenerateSitemap::getPageRes | ( | $namespace | ) |
Return a database resolution of all the pages in a given namespace.
| int | $namespace | Limit the query to this namespace |
Definition at line 307 of file generateSitemap.php.
Referenced by main().
| GenerateSitemap::guessPriority | ( | $namespace | ) |
If the namespace isn't listed on the priority list return the default priority for the namespace, varies depending on whether it's a talkpage or not.
| int | $namespace | The namespace to get the priority for |
Definition at line 295 of file generateSitemap.php.
References MWNamespace\isSubject().
Referenced by priority().
| GenerateSitemap::indexEntry | ( | $filename | ) |
Return the XML for a single sitemap indexfile entry.
| string | $filename | The filename of the sitemap file |
Definition at line 489 of file generateSitemap.php.
Referenced by main().
| GenerateSitemap::main | ( | ) |
Main loop.
Definition at line 323 of file generateSitemap.php.
References $res, $title, $wgContLang, as, close(), closeFile(), closeIndex(), file, fileEntry(), generateLimit(), getPageRes(), global, indexEntry(), Title\makeTitle(), namespaces, open(), openFile(), openIndex(), Maintenance\output(), priority(), sitemapFilename(), TS_ISO_8601, wfTimestamp(), and write().
Referenced by execute().
| GenerateSitemap::open | ( | $file, | |
| $flags | |||
| ) |
gzopen() / fopen() wrapper
| string | $file | |
| string | $flags |
Definition at line 403 of file generateSitemap.php.
Referenced by main().
| GenerateSitemap::openFile | ( | ) |
Return the XML required to open a sitemap file.
Definition at line 511 of file generateSitemap.php.
References xmlHead(), and xmlSchema().
Referenced by generateLimit(), and main().
| GenerateSitemap::openIndex | ( | ) |
Return the XML required to open a sitemap index file.
Definition at line 479 of file generateSitemap.php.
References xmlHead(), and xmlSchema().
Referenced by main().
| GenerateSitemap::priority | ( | $namespace | ) |
Get the priority of a given namespace.
| int | $namespace | The namespace to get the priority for |
Definition at line 281 of file generateSitemap.php.
References guessPriority().
Referenced by generateLimit(), and main().
|
private |
Definition at line 206 of file generateSitemap.php.
References $wgSitemapNamespacesPriorities, as, global, NS_CATEGORY, NS_CATEGORY_TALK, NS_FILE, NS_FILE_TALK, NS_HELP, NS_HELP_TALK, NS_MAIN, NS_MEDIAWIKI, NS_MEDIAWIKI_TALK, NS_PROJECT, NS_PROJECT_TALK, NS_TALK, NS_TEMPLATE, NS_TEMPLATE_TALK, NS_USER, and NS_USER_TALK.
Referenced by execute().
| GenerateSitemap::sitemapFilename | ( | $namespace, | |
| $count | |||
| ) |
Get a sitemap filename.
| int | $namespace | The namespace |
| int | $count | The count |
Definition at line 450 of file generateSitemap.php.
References $ext.
Referenced by main().
| GenerateSitemap::write | ( | & | $handle, |
| $str | |||
| ) |
gzwrite() / fwrite() wrapper
| resource | $handle | |
| string | $str |
Definition at line 419 of file generateSitemap.php.
Referenced by main().
| GenerateSitemap::xmlHead | ( | ) |
Return the XML required to open an XML file.
Definition at line 461 of file generateSitemap.php.
Referenced by openFile(), and openIndex().
| GenerateSitemap::xmlSchema | ( | ) |
Return the XML schema being used.
Definition at line 470 of file generateSitemap.php.
Referenced by openFile(), and openIndex().
| bool GenerateSitemap::$compress |
Whether or not to use compression.
Definition at line 78 of file generateSitemap.php.
| object GenerateSitemap::$dbr |
A database slave object.
Definition at line 120 of file generateSitemap.php.
| resource GenerateSitemap::$file |
A resource pointing to a sitemap file.
Definition at line 134 of file generateSitemap.php.
Referenced by open().
| resource GenerateSitemap::$findex |
A resource pointing to the sitemap index file.
Definition at line 127 of file generateSitemap.php.
| string GenerateSitemap::$fspath |
The path to prepend to the filename.
Definition at line 63 of file generateSitemap.php.
Referenced by execute().
|
private |
Identifier to use in filenames, default $wgDBname.
Definition at line 141 of file generateSitemap.php.
| array GenerateSitemap::$limit = [] |
The number of entries to save in each sitemap file.
Definition at line 92 of file generateSitemap.php.
| array GenerateSitemap::$namespaces = [] |
A one-dimensional array of namespaces in the wiki.
Definition at line 106 of file generateSitemap.php.
| array GenerateSitemap::$priorities = [] |
Key => value entries of namespaces and their priorities.
Definition at line 99 of file generateSitemap.php.
| int GenerateSitemap::$size_limit |
The maximum size of a sitemap file.
http://www.sitemaps.org/faq.php#faq_sitemap_size
Definition at line 56 of file generateSitemap.php.
| bool GenerateSitemap::$skipRedirects |
Whether or not to include redirection pages.
Definition at line 85 of file generateSitemap.php.
| string GenerateSitemap::$timestamp |
When this sitemap batch was generated.
Definition at line 113 of file generateSitemap.php.
| int GenerateSitemap::$url_limit |
The maximum amount of urls in a sitemap file.
http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd
Definition at line 47 of file generateSitemap.php.
| string GenerateSitemap::$urlpath |
The URL path to prepend to filenames in the index; should resolve to the same directory as $fspath.
Definition at line 71 of file generateSitemap.php.
| const GenerateSitemap::GS_MAIN = -2 |
Definition at line 37 of file generateSitemap.php.
| const GenerateSitemap::GS_TALK = -1 |
Definition at line 38 of file generateSitemap.php.