Extension:AutoSitemap

This page is a translated version of the page Extension:AutoSitemap and the translation is 7% complete.
Základní informace k tomuto rozšíření MediaWiki
OOjs UI icon advanced-invert.svg
AutoSitemap
Stav rozšíření: stabilní
Zavádění MyWiki , Akce stránky
Popis Vytváří a aktualizuje soubor Sitemap automaticky, když se mění stránka libovolného webu.
Napsal(i) Dolfinus, François Boutines-Vignard, Jehy, Thomas
Nejnovější verze 1.7.1 (1.3 for MW 1.33 and lower) (2022-08-08)
MediaWiki 1.25+
Změny v databázi nedělá
Licence GNU General Public License 3.0 nebo pozdější
Zdrojový kód
README
Příklad Vygenerovaná mapa webu
$wgAutoSitemap

The AutoSitemap extension automatically builds a "sitemap.xml" file at every page create/edit/delete event. Sitemap file helps search engines to observe your site’s pages. This extension is based on the extension ManualSitemap .

I do not have the possibility to update my sitemap via scheduler (like cron) because of the hosting provider, and I also do not want to update it manually.

So I edited an existing extension to update the sitemap by itself at any page edit, create, delete, rename, upload, etc events.

Install

  • Download soubor/y a vložte je do adresáře pojmenovaného AutoSitemap ve vaší složce extensions/.
  • Následující kód přidejte na konec vašeho souboru LocalSettings.php :
    wfLoadExtension( 'AutoSitemap' );
    
  • Make any change of any of your wiki pages, e.g. create a page or update an existing one
  • Sitemap file will be generated automatically
  • Yes Dokončené – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.

Configure

There are some optional parameters that change the sitemap generation. You can set them in your LocalSettings.php.

Filename

You can set filename of sitemap by setting:

$wgAutoSitemap["filename"] = "sitemap.xml"; //default value

Setting base URL

By default all URLs in sitemap use $wgCanonicalServer (or $wgServer, if it doesn’t set) as domain prefix. If you want to set it to another one, you can change it manually by setting:

$wgAutoSitemap["server"] = "https://your-site.com";

Search engines notification

You can notify web sites you want about the update of sitemap. Just write all notify URLs as array:

$wgAutoSitemap["notify"] = [
    'https://www.google.com/webmasters/sitemaps/ping?sitemap=https://your-site.com/sitemap.xml',
];

Sometimes web hoster does not allow the fopen command to call URLs (allow_url_fopen=false). If you can’t or doesn’t want to use notification, set this to empty array by deleting all lines between brackets (= [];).

Exclude types of pages from sitemap

You can exclude namespaces or exact pages from including them to sitemap:

$wgAutoSitemap["exclude_namespaces"] = [
    NS_TALK,
    NS_USER,   
    NS_USER_TALK,
    NS_PROJECT_TALK,
    NS_IMAGE_TALK,
    NS_MEDIAWIKI,   
    NS_MEDIAWIKI_TALK,
    NS_TEMPLATE,
    NS_TEMPLATE_TALK,
    NS_HELP,   
    NS_HELP_TALK,
    NS_CATEGORY_TALK
]; //default values

$wgAutoSitemap["exclude_pages"] = ['page title to exclude', 'other one'];

Set page update frequency

You can manually specify the recommended frequency with which all addresses will be checked by search engine:

$wgAutoSitemap["freq"] = "daily"; //default

Available values are:

hourly
daily
weekly
monthly
yearly
adjust - for automatic determination of frequency based on page edits count

Set page priority

You can manually specify priority for certain pages or namespaces:

$wgAutoSitemap["priority"] = 0.7;

or

$wgAutoSitemap["priority"][NS_MAIN] = 1;
$wgAutoSitemap["priority"][NS_CATEGORY] = 0.8;

or

$wgAutoSitemap["priority"]['Main page'] = 1;
$wgAutoSitemap["priority"]['Other page'] = 0.8;

Use

Permissions

Your MediaWiki folder should be permitted for write operations (chmod +w with chown apache or chown nginx).

Htaccess, Nginx

If you want to see a human-readable sitemap, allow read access for sitemap.xsl file in your site config (.htaccess file or other).

See also