XML Sitemap & Google News

描述

This plugin dynamically creates dynamic feeds that comply with the XML Sitemap and the Google News Sitemap protocol. Multisite, Polylang and WPML compatible and there are no static files created.

There are options to control which sitemaps are enabled, which Post Types and archive pages (like taxonomy terms and author pages) are included, how Priority and Lastmod are calculated and a possibility to set additional robots.txt rules from within the WordPress admin.

本插件相比起其他 XML 站点地图插件的优点在于其简易性。它不需要你修改文件或文件夹权限,不需要移动文件或在那些困难复杂的插件选项上耗费时间。

你或者你所属的多站点网络的所有者,不必为其它大多数 XML 站点地图插件那般复杂的设置而烦心。本插件的默认设置已足以应对大多数情况。

An XML Sitemap Index becomes instantly available on yourblog.url/sitemap.xml (or yourblog.url/?feed=sitemap if you’re not using a ‘fancy’ permalink structure) containing references to posts and pages by default, ready for indexing by search engines like Google, Bing, Yahoo, Yandex, Baidu, AOL and Ask. When the Google News Sitemap is activated, it will become available on yourblog.url/sitemap-news.xml (or yourblog.url/?feed=sitemap-news), ready for indexing by Google News. Both are automatically referenced in the dynamically created robots.txt on yourblog.url/robots.txt to tell search engines where to find your XML Sitemaps.

请阅读 FAQ 来了解如何将从谷歌新闻中获取你的文章列表。

Compatible with caching solutions like CloudFlare, WP Super Cache, W3 Total Cache and Quick Cache that cache feeds, allowing a faster serving to the impatient (when hungry) spider.

注意:

  1. 如果你不使用友好链接(Fancy URL)或你的 WordPress 安装在一个子目录中,则动态 Robots.txt 文件将不会生成。你必须自行创建并自行上传一个 Robots.txt 文件到你的网站的根目录中。详情请参阅 FAQ。

  2. 对于大型站点,我们建议你使用一款优秀的缓存插件,例如 WP Super CacheQuick CacheW3 Total Cache来提升你的网站站点地图的性能。

功能

  • 对使用 PolylangWPML 的网站进行兼容,可以平等地收录并索引每一种语言的内容。
  • 该选项用以增加新的 Robots.txt 规则。这些规则可以用来进行进一步控制(阅读:限制)站点各部分的索引,以及您站点页面在后续传播中的页面等级(PageRank)。
  • 包含 XLS 样式表,使站点地图更加易读。
  • Sitemap templates and stylesheets can be overridden by theme template files.

XML 站点地图

  • Sitemap Index includes posts, pages and authors by default.
  • Optionally include sitemaps for custom post types, categories and tags.
  • 可自定义 URL 的站点地图。
  • 可添加静态或自定义站点地图到索引中。
  • 工作出色,甚至在多站点安装环境中亦可顺畅运行。
  • Include featured images or attached images with title.
  • Pings sitemap to Google & Yandex on new post publication.
  • Options to define which post types and taxonomies get included in the sitemap.
  • 在文章发生了修改,或有了新评论时,更新 LastMod。
  • 为每篇文章、每个分类或是每种文章类型设置优先级。
  • 排除独立文章或页面。

谷歌新闻网站地图

  • Required news sitemap tags: Publication name, language, title and publication date.
  • Set a News Publication Name or uses site name.
  • Supports custom post types.
  • Limit inclusion to certain post categories.
  • Pings Google on new publications, once per 5 minutes.

Pro Features

Google News Advanced

  • Multiple post types – Include more than one post type in the same News Sitemap.
  • Keywords – Add the keywords tag to your News Sitemap. Keywords can be created from Tags, Categories or a dedicated Keywords taxonomy.
  • Stock tickers – Add stock tickers tag to your News Sitemap. A dedicated Stock Tickers taxonomy will be available to manage them.

隐私政策 / GDPR

本插件不会收集任何用户或来访者数据,也不会配置浏览器 Cookies。使用本插件不会在任何方面对你的网站的隐私政策造成影响。

会被公开的数据

An XML Sitemap index, referencing other sitemaps containing your web site’s public post URLs of selected post types that are already public, along with their last modification date and associated image URLs, and any selected public archive URLs.

A Google News Sitemap containing your web site’s public and recent (last 48 hours) URLs of selected news post type, along with their publication time stamp and associated image URL.
An author sitemap can be included, which will contain links to author archive pages. These urls contain author/user slugs, and the author archives can contain author bio information. If you wish to keep this out of public domain, then deactivate the author sitemap and use an SEO plugin to add noindex headers.

会被传输的数据

会主动传递给搜索引擎的数据包括你的站点地图的位置,以及给类内容的发布时间。如果设置 撰写内的通知(Ping)选项中,指定了至少一家搜索引擎,那么每当有一篇文章公开发表时,插件都会主动将数据传递给搜索引擎。在此情况下,搜索引擎将会收到有关你的站点地图的位置以及更新状态的提醒。

如何贡献

If you’re happy with this plugin as it is, please consider writing a quick rating or helping other users out on the support forum.

如果您有意与我们一同完善本插件,欢迎您帮助我们将插件翻译成您的语言,或是在 Github 上贡献代码。

致谢

XML Sitemap Feed(现 XML Sitemap & Google News)插件最初基于由 Patrick Chia 编写的 Standard XML Sitemap Generator 插件进行开发。自那时以来,本插件已历经完全重构并在多个方面有所扩展。

屏幕截图

  • XML 站点地图订阅源在普通浏览器中查看。只有你能看见。;)
  • 搜索引擎所看到的 XML 站点地图源代码。

安装

WordPress

一、如果在此之前你正在使用其他 XML 站点地图插件,请检查你的网站根目录并移除所有已存在的 sitemap.xml, sitemap-news.xml 以及 Robots.txt(如果其不是由你手工创建并维护的)文件。

二、通过以下方式安装插件:

通过 Covered Web Services 来进行快速安装!

… 或者 …

插件→安装插件管理页面中搜索“xml sitemap feed”或“XML 站点地图”并安装。

… 或者 …

依照如下步骤:

  1. 下载档案

  2. 将 Zip 文件通过“插件→安装插件→上传页面”上传或者直接解压并通过你最喜欢的 FTP 客户端上传到 /plugins/ 文件夹。

三、在插件页面中激活插件。

搞定!现在你可以通过浏览器或任何在线 XML 站点地图验证器访问 yourblog.tld/sitemap.xml 来检查你的闪闪发亮的全新 XML 站点地图。你可能同时也想要检查你的站点地图是否已收录于你的 yourblogurl.tld/robots.txt文件中,别忘了。

WordPress 3+ 多站点模式

步骤同上,为你的多站点网络中的每一个网站进行网络激活以确保 XML 站点地图能够对每一个网站启用。

如果本插件与 WordPress MU Sitewide Tags Pages 同时安装,XML 站点地图将不会对任何标签博客(Tag Blogs)创建 sitemap.xml 文件同样也不会对 Robots.txt 文件做任何修改。这是故意如此,因为这可能导致标签博客在自己的域名之外被大量站外链接所填满,这将导致网站被 Google 处以忽略(Ignored)(甚至更糟:惩罚(Penalised))的措施。

卸载

Upon uninstalling the plugin from the Admin > Plugins page, plugin options and meta data will be cleared from the database. See notes in the uninstall.php file.

在多站点环境中,uninstall.php 文件 可以 在网络中的所有站点中循环运行卸载过程。然而,这一卸载方式并不适配于大型站点网络,该文件唯有在 wp-config.php 文件中明确配置 define('XMLSF_MULTISITE_UNINSTALL', true); 选项时才会对每一站点进行卸载操作。

常见问题

插件设置在哪里?

设置 阅读中你可以启用 XML 站点地图索引与 Google News 站点地图(如果需要)。同时该部分还提供了额外的 robots.txt 规则配置区域。

只要站点地图被启用,它的相关设置便可在设置 XML 站点地图或是设置 Google News中找到。

通知(Ping)设置可以在设置 撰写中找到。

我该如何获得谷歌新闻列出的我的最新文章?

前往 Google 新闻发布商中心并提交你的网站信息,越详细越好。记得在底部“其他”部分的文本框中向他们提交你全新的谷歌新闻站点地图链接。

You will also want to add the sitemap to your Google Search Console account to check its validity and performance. Create an account if you don’t have one yet.

我可以人工干预优先级与 changfreq 数值吗?

可以。你可以在设置 XML 站点地图中找到有关优先级属性的默认配置。你也可以在文章设置中为单篇文章设置一个固定的优先级。

由于 Google 已不再将其纳入考虑,自 4.9 版本起,弃用 Changefreq。

我需要向搜索引擎提交站点地图吗?

不需要。在正常情况下,你的网站将在你发觉之前便被主流搜索引擎索引完毕。搜索引擎将会查看 Robots.txt 文件并(在本插件激活的情况下)找到指向你的博客的 XML 站点地图的指针。搜索引擎将会定期返回以确认你的站点是否更新了任何内容。

注意:如果你的服务器没有重定向规则,你的博客没有使用友好链接(Fancy URLs)(意即你正使用采用旧版默认设置的 WordPress 永久链接结构),或你的站点安装于一个子目录,则你需要阅读我需要修改我的 Robots.txt 文件吗?以了解更多信息。

这个插件会通知(ping)搜索引擎吗?

Google & Bing are no longer accepting sitemap pings.

我需要修改我的 Robots.txt 文件吗?

在一般情况下,如果你的站点根目录下没有一份静态的 robots.txt 文件,那么站点地图的地址将自动添加进由 WordPress 动态生成的 robots.txt 文件中。

如果正在使用放置于你网站根目录下的静态 Robots.txt 文件,你可能需要在一款文本编辑器中打开它进行编辑。如果其中已经存在形如Sitemap:http://yourblogurl.tld/sitemap.xml的一行,你可以就这么将其关闭并离开。但如果文件中没有站点地图的指向,将该行(记得将网址替换为你的站点的地址)添加进去已协助搜索引擎找到你的站点地图。

或者如果你的 WordPress 安装在一个子目录下,或者你使用的服务器为配置重定向规则,或者你未在你的永久链接结构设置中采用友好链接(Facny URLs,即永久链接),如果你符合此类情况,WordPress 需要获得一些小协助以为 XML 站点地图索引站点内容做好准备。阅读 WordPress 部分以了解更多信息。

我的博客采用的 WordPress 系统安装在一个子目录下。这是否会造成什么改变?

这取决于你的 index.php 与 .htaccess 文件被安装到何处。如果它们都被放置在根目录下,同时其它余下的 WP 文件都被放置在子目录下,那么你的站点便可以通过你的域名直接访问,不需要再进行其它操作。插件应当开箱即用。

但是,如果你的 index.php 和你的 wp-config.php 以及其它所有 WP 文件都放置在同一个子目录中,就意味着你的博客只能通过该子目录来访问,因此你需要自己在你的域名根目录下管理你的 robots.txt 文件。Robots.txt 文件必须放置在根目录(!)中,并且文件内应当有单独一行以 Sitemap: 起头,后面写入 XML 站点地图插件提供的你的站点地图的完整地址。就像这样:

Sitemap: http://yourblogurl.tld/subdir/sitemap.xml

如果你业已拥有一个写有其它站点地图地址的 Robots.txt 文件,只需在该地址上方或下方添加一行全线。

我需要配置友好(Facny)永久链接结构吗?

并非如此。虽然我仍会建议你采用任何一种更好的永久链接结构以促进更便利的索引。或许你不能够(或是不愿意)去修改它们,即使在此情况下,你依旧可以使用本插件:

检查链接 yourblog.url/?feed=sitemap 是否提供了一个订阅源。现在手动向你的网站根目录下保存的你自己的 Robots.txt 文件中上传如下字段:

Sitemap: http://yourblog.url/?feed=sitemap

User-agent: *
Allow: /

You can also choose to notify major search engines of your new XML sitemap manually. Start with getting a Google Search Console account and submit your sitemap for the first time from there to enable tracking of sitemap downloads by Google! or head over to XML-Sitemaps.com and enter your sites sitemap URL.

我可以修改站点地图的名称或链接吗?

No. If you have fancy URL’s turned ON in WordPress (Permalinks), the sitemap url is yourblogurl.tld/sitemap.xml but if you have the Permalink Default option set the feed is only available via yourblog.url/?feed=sitemap.

在我的网站根目录下找不到 sitemap.xml 文件!

实际上没有任何实在文件会被创建。站点地图是如同订阅源(feed)一般动态生成的。

我在网站根目录下找到了 sitemap.xml 文件但是看起来它没有得到更新!

你可能在使用本插件之前使用了其他的 XML 站点地图插件,你正在查看 sitemap.xml 文件就是由其所创建的。删除该文件并让本插件动态生成站点地图,一如生成订阅源那般。本插件不会创建任何实际的文件。

如果实际情况并非如此,你可能正在使用缓存插件,或你的浏览器没有获取最新的订阅源输出。请进行检查。

我使用了缓存插件但是站点地图没有被缓存。

一些缓存插件会提供是否对订阅源与站点地图进行缓存的选项。请确保它们处于启用状态。

插件 W3 Total Cache/ 的开发者 Frederick Townes 说:“在页面缓存设置标签页中有一个针对是否缓存订阅源与站点地图的复选框。它们的过期时间将根据浏览器针对 HTML 缓存设置的过期值所配置。”

谷歌新闻地图是以不被缓存为出发点而设计的。

当我试图打开站点地图或 Robots.txt 时遭遇错误!

你所需要做的第一件事定然是确认你的博客的隐私设置。前往 设置→隐私以确认你已允许搜索引擎索引你的网站。如果你禁止了该项,你的站点地图将不会提供。

Then, you might want to make sure that there is at least ONE post published. WordPress is known to send 404 status headers with feed requests when there are NO posts. Even though the plugin tries to prevent that, in some cases the wrong status header will get sent anyway and Google Search Console will report a vague message like:

We encountered an error while trying to access your Sitemap.
Please ensure your Sitemap follows our guidelines and can be
accessed at the location you provided and then resubmit.

如果这些措施都不能解决本问题,请确认下面这些错误及其各自的解决方案是否存在或有效:

出现 404 页面而非我的 sitemap.xml 页面

尝试刷新 WordPress 的永久链接结构。前往 设置→永久链接 重新保存一次设置。接着在清除你的浏览器缓存后尝试重新加载 XML 站点地图。(你也可以尝试通过 Ctrl+R 来绕过浏览器缓存强制刷新——它能在大部分、但非所有的浏览器中工作。)

出现 404 页面,sitemap.xml 与 Rotobts.txt 文件均无法找到。

有些插件,诸如 Event Calendar(至少从 V3.2 Btea2 起)已知存在重写规则的混乱,会导致 WordPress 内部订阅源与 Robots.txt 文件的生成出现问题,因此它们与 XML 站点地图订阅源插件是存在冲突的。你可以尝试停用所有插件来查看你是否能获得一个包含基础信息的 Robots.txt 文件形如:

User-agent: *
Disallow:

你需要一次一个地重新激活你的以确认是哪一个插件造成了该问题。然后将其报告给该插件的开发人员。

Robots.txt 返回 404 页面但 sitemap.xml 正常工作

目前 WordPrss 有一个已知问题(至少在 2.8 版之前),即在没有文章处于已发布状态时将不会创建 Robots.txt 文件。如果你正使用 WordPress 驱动一个 CMS 网站,而其中只有页面,这个问题将会影响到你的使用。

要想解决这个问题,你需要至少撰写一篇文章并将其设置为私有状态,你也可以手动为自己创建 Robots.txt 文件并包含如下内容:

Sitemap: http://yourblog.url/sitemap.xml

User-agent: *
Allow: /

并将其上传至你的网站根目录。

在载入样式表时发生错误:发生了一个未知错误(An unknown error has occurred)

在某些安装与配置的情况下(通常是使用 WordPress MU Domain Mapping 插件)会造成此错误的发生。虽然问题业已定位,但原因却尚无法弄清……除非我能找出为什么会发生这种事。不过请尽管放心,目前已知这个错误只会在通过一般浏览器阅读站点地图时产生影响,但不会影响搜索引擎对你网站的索引。站点地图依旧对所有搜索引擎可读。

XML 声明仅允许出现在文档开始

当有空白行或其他输出内容生成于实际站点地图内容之前时,就会产生这一错误。这可能是由于 wp-config.php 或你使用的主题的 functions.php 开头存在空白行,或其它不该输出相关内容的插件生成并输出了内容,并插入到站点地图文件之前。你需要通过禁用所有插件并切换至默认主题、同时手动检查你的 wp-config.php 文件来测试是何种原因导致了这一问题。

在打开站点地图时我只看到一个空白页面。

有几种情况可能会导致本错误的发生。

在浏览器中打开你的站点地图并查看其源代码。这步操作通常可以通过快捷键 Ctrl+U 或在右键弹出菜单中选择“查看源代码…”来进行,你需要检查给出的源代码以判断其中是否存在错误。

A. 如果你在源代码的头几行(Head 标签)部分看见了奇怪的输出内容,或者在你的安装内容中又冲突或错误存在,请前往支持论坛 以寻求帮助。

B. 如果源代码为空或者呈现为未完成状态,那么你遇到的问题可能与你的服务器的 PHP 内存限制有关。在这种情况下,你会在你的服务器或你的帐号的错误日志文件中找到形如 PHP Fatal error: Allowed memory size of xxxxxx bytes exhausted. 这样的错误信息。

这种情况多发生于大型站点中。为避免这些问题,插件在 设置 阅读 中提供了一个选项,允许将文章拆分至不同的站点地图中。你可以尝试不同的设置方式,并在每次设置完成后前往主站点地图并打开其中列出的不同的站点地图进行测试。

你可以阅读 为 PHP 增加内存分配(英文) 已了解更多信息,尝试分配高于 256M 的内存数值,或者向你的主机提供商咨询有什么你可以做的事。

我可以在 WPMU / WP3+ 多站点模式 下安装这款插件吗?

完全可以。实际上,本插件就是为此而设计的。目前插件已在 WPMU 2.9.2 与 WPMS 3+ 下经过测试,所有测试环境均正常激活并激活了 Network Activate 与 Site Wide Activate 相关选项。

评价

Bad

2023年6月12日 1 回复
XML Sitemap & Google News include not published posts in the sitemapJust a disgrace
2022年11月30日
Merci pour cet excellent plugin dont la mise à jour régulière assure un fonctionnement optimal. Thanks a lot 🙂
2022年5月19日 1 回复
generated sitemaps are immediately accepted by google search console. wp backend looks solid and clean. good replacement for "google-sitemap-generator Von Arne Brachhold" thx ✔️ donation done
阅读所有79条评价

贡献者及开发者

“XML Sitemap & Google News” 是开源软件。 以下人员对此插件做出了贡献。

贡献者

“XML Sitemap & Google News”插件已被翻译至6种本地话语言。 感谢所有译者为本插件所做的贡献。

将“XML Sitemap & Google News”翻译成您的语言。

对开发感兴趣吗?

您可以浏览代码,查看SVN仓库,或通过RSS订阅开发日志

更新日志

5.4.6

20240311
* FIX: rewrite rules conflict with Polylang
* FIX: call to undefined function with Nginx Helper

5.4.5

20240221
* FIX: wp-cli disable plugin incompatibility
* FIX: trailing slash
* FIX: split by month
* FIX: disabled post types in index
* ClassicPress and WP pre-5.5 compatibility
* FIX: Undefined contact on uninstall
* FIX: admin compatibility message

5.4

20240219
* NEW: Switch between Plugin or WP core sitemap server for sitemap generation
* NEW: xmlsf_generator action hook
* NEW: xmlsf_sitemap_index_pre and xmlsf_sitemap_index_post action hooks
* NEW: xmlsf_author_has_published_posts filter
* Dropping all Ping Services (no longer supported)
* Dropping allowed domains filtering
* Exclude spammed or deleted authors on multisite
* Updated help links
* Update coding standards
* FIX: Don’t use transients if not strictly needed
* FIX: “Failed opening required” when no template
* FIX: Conversion of false to array deprecated warning

5.3.6

20230810
* FIX: Work around get_users() fatal error in WP 6.3
* FIX: Wrong Nginx helper purge urls (backport from 5.4-beta)

5.3.5

20230629
* FIX: Forced Status 200 response conflict with Etag/If-None-Match headers, thanks @revolutionnaire

5.3.4

20230530
* FIX: File not found error on invalid sitemap requests
* FIX: Lastmod date older than post date on scheduled posts

5.3.3

20230528
* FIX: Undefined variable + Invalid argument supplied for foreach(), thanks @yankyaw09

5.3.2

  • FIX: Bing ping 410 error response
  • FIX: Outdated help & forum links

5.3.1

  • FIX: Restore wp-sitemap.xml rewrite rules after deactivation
  • FIX: Call to undefined function xmlsf_get_archives()
  • Use nocache_headers()

5.3

  • NEW: Author sitemap
  • NEW: allow custom theme templates and stylesheets
  • NEW: request filters xmlsf_request and xmlsf_news_request
  • NEW: news template filters xmlsf_news_publication_name and xmlsf_news_title
  • NEW: sitemap template action hook xmlsf_url
  • NEW: sitemap template action hooks xmlsf_news_url and xmlsf_news_tags_inner
  • NEW: xmlsf_index_url_args filter
  • NEW: All in One SEO Pack incompatibility message and instructions
  • NEW: The SEO Framework incompatibility message and instructions
  • Moved news template action hook xmlsf_news_tags_after to after closing tag
  • Less DB queries, smaller memory footprint
  • Better debug info with SAVEQUERIES
  • Disable WP core sitemaps and redirect index
  • FIX: conflicting static file deletion
  • FIX: invalid form control not focusable when meta box is hidden
  • FIX: force Status 200 response
  • FIX: priority calculation last modified for post type
  • FIX: news sitemap redirection with Polylang
  • FIX: Cache-Control header no-cache

5.2.7

20191111
* NEW: Ad Inserter compatibility check
* NEW: xmlsf_urlset and xmlsf_news_urlset action hooks, thanks to Stanislav Khromov (@khromov)
* Exclude hierarchical post types from news sitemap

5.2.6

20191009
* NEW: xmlsf_tags_after, xmlsf_url_after and xmlsf_news_url_after action hooks
* Make stylesheet paths relative to prevent exclusion when using different language domains
* FIX: Taxonomy selection not available to new installs

5.2.4

20190917
* NEW Rank Math incompatibility admin warnings
* FIX undefined index
* FIX invalid form control

5.2.3

  • FIX Cannot use return value in write context
  • FIX issue #30 for sql_mode=ONLY_FULL_GROUP_BY, thanks @silvios
  • FIX invalid form control not focusable when meta box is hidden

5.2.2

  • FIX invalid date format on some PHP versions
  • FIX Can’t use function return value in write context
  • FIX non-cyrillic URLs stripped from External Web Pages field
  • FIX Call to undefined function xmlsf_cache_get_archives()

5.2

20190429
* Image query optimization and meta caching
* Last comment date meta caching
* Lastmod and publication dates in local time
* Removed ignored image tag from news sitemap
* Max memory limit for post type and taxonomy term sitemaps
* Prevent CDN file urls
* Zlib before GZhandler on .gz request
* FIX: don’t ping for excluded posts
* FIX: traditional and simplified Chinese with WPML
* FIX: redundant front page url
* FIX: array_filter() expects parameter 1 to be array
* FIX: possible division by zero
* FIX: update_term_modified_meta
* FIX: rewrite rules on deactivate/uninstall

5.1.2

  • FIX: admin notice dismiss button failing
  • FIX: date archive redirect notice showing for inactive post types
  • Plugin support and rate links on plugins page

5.1.1

  • FIX options page not found
  • FIX news sitemap only ping

5.1

20190313
* SEOPress and Catch Box incompatibility admin messages
* FIX bbPress incompatibility
* FIX failing last modified date for taxonomy sitemaps
* FIX sitemap showing when only private posts
* FIX possible sitemaps for no longer existing post types in index
* Admin interface improvements: highlighting and scroll
* Upgrade routines in own class only to be included when needed
* Moved metabox methods to dedicated classes
* NEW Respond to .gz requests (with ob_gzhandler output buffering if needed)
* NEW filters xmlsf_disabled_taxonomies, xmlsf_news_keywords, xmlsf_news_stock_tickers
* NEW action xmlsf_ping
* NEW Tools: Ping search engines and Flush rewrite rules

5.0.7

20181025
* Allowed domains back to Settings > Reading
* FIX static files check on activation
* NEW Admin warning on conflicting plugin settings
* FIX Empty post priority saved as 0.0
* FIX Call to undefined function xmlsf_get_archives()
* FIX force LC_NUMERIC locale to C
* FIX Call to private method
* FIX Custom post types with a hyphen not showing
* FIX Admin static files message fatal error, thanks @kitchin
* FIX Improper if statement in upgrade routine, thanks @kitchin
* FIX PHP 5.4 compatibility issues

5.0

20180908
* Complete code restructure and cleanup: MVC and JIT inclusion
* Fewer DB queries, much smaller memory footprint on normal queries
* NEW Admin interface with dedicated options pages and help tabs
* NEW Taxonomy term options: priority and automatic calculation
* NEW Admin warning on conflicting static files
* NEW Option to delete conflicting static files
* NEW Filters for post types: xmlsf_post_types and xmlsf_news_post_types
* NEW Filters for priority values: xmlsf_post_priority and xmlsf_term_priority
* Removal of Genre, Keywords and Access tags as Google dropped support
* Taxonomy term sitemaps speed improvement: get lastmod date from database
* Exclude Woocommerce product_shipping_class taxonomy
* PHP 7.2+ compat: create_function deprecated
* No more domain filtering for custom URLs and external sitemaps
* FIX Gutenberg editor GN genre taxonomy not showing
* FIX Plain and /index.php/ permalink structure
* FIX Clear all options on uninstall
* FIX Pings

4.9.4

  • 修复:特色图像丢失情况,感谢 @flyerua
  • 修复:Header 过滤器中出现的重复内容类型响应

4.9.3

  • 恢复 filter_no_news_limits,允许按照文章类型排列
  • 改进语言处理,增加新的语言过滤器 xmlsf_post_language
  • 强制使用 text/xml 内容类型响应头

4.9.2

  • FaceCheck 类型在搜索控制台内会引发错误

4.9.1

  • FIX: double genre terms on upgrade from 4.4, thanks @mouhalves
  • FIX: wp_count_posts uncached and too heavy on large sites, thanks @carlalexander
  • Last-modified response header now linked to Update on comments setting
  • FIX: plugin_basename propagation

4.9

20180507
* Code cleanup
* NEW: FactCheck genre
* Changefreq tag dropped
* NEW: translation strings for genres
* FIX: zlib.output_compression compatibility, thanks @alicewondermiscreations
* FIX: permalink issue with Woocommerce account page endpoints
* FIX: undefined index in news post types

4.8.3

  • fix get_lastpostdate array/string
  • restore pre PHP 5.4 compatibility (popular request)

4.8

20180316
* NEW: Conditional functions is_sitemap() and is_news()
* code cleanup and annotation
* new google ping URL
* revisit get first/last date/modified functions and cache key set/delete
* FIX: cache key missing timezone
* FIX: wp_rewrite init before flush_rules

4.7.6

  • FIX Open_BaseDir issue on IIS server

4.7.5

20161207
* FIX: On cache_flush purge also the respective time_key cache entry,
props @e2robert https://wordpress.org/support/topic/object-cache-issue-results-in-outdated-last-modified-values-on-index-sitemap/
* FIX: Variable variable php 7 compat
* Detect if headers are already sent and print warning in source

4.7.4

  • Another WPML compat issue fixed, special thanks to hermes3por3

4.7.3

  • NEW: xmlsf_excluded filter
  • IMPROVEMENT: Polylang and WPML compatibility issues
  • FIX: “Only variables should be passed by reference” strict warning
  • FIX: PHP 5.3 compatibility

4.7

20160506
* WPML compatibility
* FIX: News Sitemap chinese language tag
* FIX: flush rules on plugin re-activation

4.6.3

  • NEW: filter xmlsf_custom_sitemaps
  • BUGFIX: empty custom urls sitemap

4.6.2

  • NEW: filter xmlsf_custom_urls
  • More cleanup
  • BUGFIX: broken Polylang compatibility reported by @zesseb

4.6.1

20160407
* Code cleanup
* POT file update
* Dutch translation update

4.6

  • NEW: xmlsf_news_tags_after action hook
  • Attempt to remove static sitemap files left over by other sitemap plugins

4.5.1

  • fix Persistent/Stored XSS vulnerability on admin page, thanks to Sneha Rajguru @Sneharajguru

4.5

  • Set Google News access tag per post
  • Exclude posts from Google News sitemap
  • News Sitemap stylesheet text/links update
  • 修复:按照Jeremy Clarke的建议,cache_delete缓存键而不是cache_flush https://wordpress.org/support/topic/please-stop-running-wp_cache_flush-whenever-posts-are-edited
  • NEW: Nginx Helper compatibility to purge cache sitemap URLs from FastCGI Cache or Redis

4.4.1

  • BUGFIX contribution by alejandra.aranibar: multiple news post types makes get_lastdate return oldest instead of newest date
  • BUGFIX plugins_url filter not working, reported by Michael
  • Dropped GN Geolocation tag support
  • Dropped XMLSF_POST_TYPE and XMLSF_NEWS_POST_TYPE defines support
  • Multiple default genres

4.4

  • Pings max once per hour (5 minutes for news sitemap)
  • Seperate ping for Google News Sitemap
  • Append custom/static sitemaps to the index
  • Include other post types in News Sitemap
  • Optionally limit posts to certain categories in News Sitemap
  • Noindex response header for sitemaps to keep them out of search results
  • Static sitemap stylesheets
  • Controversial default robots.txt rules removed
  • DB query streamlining
  • BUGFIX: fatal error on . (dot) as category base in permalinks
  • BIGFIX: PHP Strict notices
  • Force object cache flush on post publication

4.3.2

  • Italian translation
  • BUGFIX: html esc / filter image title and caption tags
  • BUGFIX: empty terms counted causing empty taxonomy sitemap appearing in index
  • BUGFIX: custom taxonomies where lastmod cannot be determined show empty lastmod tag

4.3

  • Google News sitemap settings section
  • Google News tags: access, genres, keywords, geo_locations
  • Improved Google News stylesheet
  • Custom Google News Publication Name
  • Image tags in Google News sitemap
  • Custom URLs
  • Allow additional domains
  • Image caption and title tags
  • Ping Yandex and Baidu optional
  • BUGFIX: Ineffective robots.txt rules
  • BUGFIX: Priority value 0 in post meta not saved
  • BUGFIX: Ping for all post types
  • BUGFIX: Custom taxonomy support
  • BUGFIX: Split by month shows year

4.2.4

  • NEW: Image tags
  • Rearranged settings section
  • FIX: replace permalink, title and bloginfo rss filter hooks with own

4.2.3

  • BUGFIX: Empty ping options after disabling the main sitemap
  • BUGFIX: Empty language tag for Google News tags in posts sitemap
  • Small back end changes
  • NEW: Custom post types split by year/month

4.2

  • NEW: Image & News tags
  • NEW: Exclude pages/posts

4.1.4

  • BUGFIX: Pass by reference fatal error in PHP 5.4
  • BUGFIX: issue with Polylang language code in pretty permalinks setting
  • BUGFIX: unselected post types in sitemap
  • BUGFIX: 1+ Priority for sticky posts with comments
  • Dutch and French translations updated

4.1

  • NEW: Ping Google and Bing on new publications
  • NEW: Set priority per post
  • NEW: Priority calculation options
  • NEW: Option to split posts by year or month for faster generation of each sitemap
  • Reduced queries to increase performance
  • Improved Lastmod and Changefreq calculations
  • Core class improvements
  • Dropped qTranslate support
  • Dropped PHP4 support
  • BUGFIX: removed several PHP notices

4.0.1

  • NEW: Dutch and French translations
  • BUGFIX: Non public sites still have sitemap by default
  • BUGFIX: Invalid argument supplied for foreach() when all post types are off
  • BUGFIX: Wrong translation dir

4.0.0

  • Moved to sitemap index and seperated post/page sitemaps
  • NEW: options to dswitch off sitemap and news sitemap
  • NEW: select which post types to include
  • NEW: select which taxonomies to include
  • NEW: set additional robots.txt rules
  • NEW: Translation POT catalogue
  • Improved Polylang support
  • Dropped xLanguage support
  • qTranslate currently untested

3.9.2

  • Basic Google News feed stylesheet
  • improvement on XSS vulnerability fix
  • Fixed trailing slash

3.9.1

  • SECURITY: XSS vulnerability in sitemap.xsl.php

3.9

  • Google News Sitemap
  • Memory limit error workaround (for most sites)

3.8.8

  • BUGFIX: PHP4 compatibility
  • BUGFIX: stylesheet URL when installed in mu-plugins
  • core change to class
  • minified sitemap output by default

3.8.5

  • xLanguage support based on code and testing by Daniele Pelagatti
  • new FILTER HOOK robotstxt_sitemap_url for any translate and url changing plugins.
  • BUGFIX: Decimal separator cannot be a comma!

3.8.3

  • filter out external URLs inserted by plugins like Page Links To (thanks, Francois)
  • minify sitemap and stylesheet output
  • BUGFIX: qTranslate non-default language home URL

3.8

  • qTranslate support
  • no more Sitemap reference in robots.txt on non-public blogs

3.7.4

  • switch from add_feed (on init) to the do_feed_$feed hook
  • BUGFIX: is_404() condition TRUE and Response Header 404 on sites without posts
  • BUGFIX: is_feed() condition FALSE after custom query_posts
  • BUGFIX: no lastmod on home url when only pages on a site
  • BUGFIX: stylesheet url wrong when WP installed in a subdir

3.7

  • massive changefreq calculation improvement
  • further priority calulation improvement taking last comment date into account

3.6.1

  • BUGFIX: wrong date calculation on blogs less than 1 year old

3.6

  • massive priority calculation improvement

3.5

  • complete rewrite of plugin internals
  • speed improvements
  • WP 3.0 (normal and MS mode) ready

3.4

  • BUGFIX: use home instead of siteurl for blog url for sitemap reference in robots.txt
  • code streamline and cleanup

3.3

  • automatic exclusion of tags blog in wpmu

3.2

  • rewrite and add_feed calls improvements
  • BUGFIX: double entry when static page is frontpage

3.0

  • added styling to the xml feed to make it human readable

2.1

  • BUGFIX: lastmod timezone offset displayed wrong (extra space and missing double-colon)

2.0

  • priority calculation based on comments and age
  • changefreq based on comments

1.0

  • changed feed template location to avoid the need to relocate files outside the plugins folder
  • BUGFIX: get_post_modified_time instead of get_post_time

0.1

  • rework from Patrick Chia’s Standard XML Sitemaps
  • increased post urls limit from 100 to 1000 (of max. 50,000 allowed by the Sitemap protocol)