Extension:AutoSitemap/zh
AutoSitemap 发布状态: 稳定版 |
|
---|---|
实现 | 我的Wiki , 页面操作 |
描述 | Creates and updates a Sitemap file automatically while any site's page is changing. |
作者 | 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通用公眾授權條款3.0或更新版本 |
下载 | 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".
Rationale
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.
Install
- 下载文件,并将其放置在您
extensions/
文件夹中的AutoSitemap
目录内。 - 将下列代码放置在您的LocalSettings.php的底部:
wfLoadExtension( 'AutoSitemap' );
完成 – 在您的wiki上导航至Special:Version,以验证扩展已成功安装。
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',
'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 (= [];
).
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
- Stable extensions/zh
- Personalization extensions/zh
- Page action extensions/zh
- GPL licensed extensions/zh
- Extensions in GitHub version control/zh
- PageContentInsertComplete extensions/zh
- AfterImportPage extensions/zh
- ArticleDeleteComplete extensions/zh
- ArticleUndelete extensions/zh
- TitleMoveComplete extensions/zh
- ArticleMergeComplete extensions/zh
- ArticleRollbackComplete extensions/zh
- UploadComplete extensions/zh
- ArticleRevisionUndeleted extensions/zh
- RevisionInsertComplete extensions/zh
- PageContentSaveComplete extensions/zh
- All extensions/zh
- Sitemap extensions/zh