Extension:AutoSitemap
AutoSitemap Статус релиза: стабильный |
|
---|---|
Реализация | MyWiki , Действие страницы |
Описание | Автоматически создает и обновляет файл Sitemap при изменении любой страницы сайта. |
Автор(ы) | Dolfinus, François Boutines-Vignard, Jehy, Thomas |
Последняя версия | 1.4.1 (1.3 for MW 1.33 and lower) (2020-08-24) |
MediaWiki | 1.25+ |
Изменения БД | Нет |
Лицензия | GNU General Public License 3.0 or later |
Загрузка | Download master snapshot Note: README |
Пример | Generated sitemap |
$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 precursing extension called "ManualSitemap".
Обоснование
I do not have the possibility to update my sitemap via 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.
Установка
- Загрузка и распакуйте файл(ы) в папку с названием
AutoSitemap
в вашей папкеextensions/
. - Добавьте следующие строки в конец файла 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
Готово – Перейдите на страницу Special:Version на своей вики, чтобы удостовериться в том, что расширение успешно установлено.
Настройка
There are some optional parameters that change the sitemap generation. You can set them in your LocalSettings.php.
Имя файла
You can set filename of sitemap by setting:
$wgAutoSitemap["filename"] = "sitemap.xml"; //default value
Установка базового 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";
Уведомление поисковых систем
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',
'https://www.bing.com/webmaster/ping.aspx?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 (= [];
).
Исключить типы страниц из карты сайта
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'];
Установить частоту обновления страницы
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
Установить приоритет страницы
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;
Применение
Разрешения
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).
См. также
- Stable extensions/ru
- Personalization extensions/ru
- Page action extensions/ru
- GPL licensed extensions/ru
- Extensions in GitHub version control/ru
- PageContentInsertComplete extensions/ru
- AfterImportPage extensions/ru
- ArticleDeleteComplete extensions/ru
- ArticleUndelete extensions/ru
- TitleMoveComplete extensions/ru
- ArticleMergeComplete extensions/ru
- ArticleRollbackComplete extensions/ru
- UploadComplete extensions/ru
- ArticleRevisionUndeleted extensions/ru
- RevisionInsertComplete extensions/ru
- PageContentSaveComplete extensions/ru
- All extensions/ru
- Sitemap extensions/ru