跳转到主要内容

Plone插件

项目描述

https://travis-ci.org/collective/collective.splitsitemap.svg?branch=master Coveralls Latest Version Egg Status https://img.shields.io/pypi/pyversions/collective.splitsitemap.svg?style=plastic:alt:Supported-PythonVersions License

collective.splitsitemap

默认情况下,Plone创建1个网站地图,遵循https://www.sitemaps.org/protocol.html协议

当大站点中的项目数量超过50,000时,会出现问题。本产品的目标是通过将其拆分为多个网站地图并提供网站地图索引文件来解决此问题。此外,它还提供了一些额外的先进功能。

功能

  • 允许将网站地图拆分为多个网站地图,并提供网站地图索引

  • 允许使用外部脚本生成网站地图

  • 允许指定每个拆分网站地图中包含的项目数量

  • 允许决定是否在链接中自动添加“/view”

  • 允许指定要忽略并不在网站地图中包含的门户类型

  • 允许列出要忽略并不在网站地图中包含的特定路径

详细说明

控制面板

本产品提供了一个控制面板来配置不同的设置。它可以在Plone控制面板中找到,名称为“分割网站地图设置”(/@@splitsitemap-settings)。

分割网站地图

此设置允许将网站地图分割成多个,并生成一个索引网站地图。每个网站地图中项目数量的调整可以通过“每个网站地图的项目数”设置进行。当在您的网站上执行对“sitemap.xml.gz”的请求,并且此设置已启用时,将生成多个网站地图并存储在请求网站地图的位置。当过程完成后,将提供sitemap.xml.gz,其中包含每个生成的网站地图的位置。

自动添加/view

默认情况下,Plone会在某些URL的末尾自动添加“/view”,特别是对于文件和图片。取消选中此复选框,可以防止这种行为仅在网站地图的链接中发生。请注意,此设置只是根据Plone的配置阻止或允许自动添加“/view”。如果Plone不在某些URL的末尾添加“/view”,则启用此设置将没有任何效果。

从脚本生成网站地图

此设置允许使用外部脚本生成网站地图,允许访客和机器人简单地检索它,而无需等待其生成。请注意,如果此设置已启用且脚本未配置为生成网站地图,则访客将收到一个空的sitemap.xml.gz。有关脚本使用方法的详细信息,请参阅此README。

指定要排除的内容类型

从此设置中,您可以选择要完全忽略并在生成网站地图时排除的内容类型。

忽略的路径

此设置允许列出要排除从网站地图中的特定路径。请注意,此路径是相对于网站根目录的绝对路径。如果路径是一个文件夹,您可以在路径末尾添加“:-1”,以忽略该路径及其所有子路径。例如,假设此设置配置如下:

/foo:-1
/bar

这意味着/foo及其内部的所有内容将不会包含在网站地图中。此外,/bar也将被排除,但是如果/Bar是一个文件夹,其子文件夹将不会被排除。

外部脚本

此产品提供了一个新的zopectl命令,允许使用cronjob或类似机制异步生成网站地图。请注意,如果“网站地图由脚本生成”设置未启用,则运行此脚本将不会以任何方式提高网站地图生成。命令是“generate_sitemaps”,其用法如下:

./bin/instance generate_sitemaps

脚本提供了4个可选参数

  • log_file

  • plone_site

  • nav_root

  • server_url

log_file

指定用于记录网站地图生成过程的文件

plone_site

指定Plone站点的ID。如果未提供,则脚本将使用它找到的第一个Plone站点。

server_url

此设置允许你在网站地图中生成适当的URL。当从脚本运行任务时,Plone无法知道你的网站的FQDN是什么,或者你的Apache/Nginx配置是什么样的。使用此设置,您可以直接指定您的网站URL,并将其包含在链接URL的开始部分。如果省略,则脚本将尝试使用“SERVER_URL”环境变量。

使用所有参数的示例

./bin/instance generate_sitemaps --log_file /path/to/sitemap.log --plone_site Plone --nav_root folder-a --server_url https://my-great-site.org

安装

通过将其添加到您的buildout中安装collective.splitsitemap。

[buildout]

...

eggs =
    collective.splitsitemap

然后运行 bin/buildout,最后从“插件”Plone控制面板中安装它。

贡献

待办事项

  • 编写测试

许可证

该项目遵循GPLv2许可证。

贡献者

变更日志

1.1.0 (2024-03-23)
  • 移除对Python 2.7的要求 [cillianderoiste]

1.0.0 (2020-09-25)
  • 首次发布。 [frapell]

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分布

collective.splitsitemap-1.1.0.tar.gz (31.0 kB 查看哈希值)

上传时间 源代码

构建分布

collective.splitsitemap-1.1.0-py3-none-any.whl (35.0 kB 查看哈希值)

上传时间 Python 3

支持者