微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Squarespace 中使用通配符和变量减少 301 重定向条目的数量?

如何解决如何在 Squarespace 中使用通配符和变量减少 301 重定向条目的数量?

我最近重命名了构成我博客的所有 URL...并且几乎每个页面都编写了重定向...使用通配符我可以...记住...我所知道的只是 *此时的通配符...

这是我所拥有的示例...

/season-1/2017/1/1/snl-s01e01-host-george-carlin -> /season-1/snl-s01e01-george-carlin 301

我想写一个包罗万象的东西,用一个重定向条目重定向所有 38 季的评论……但我不知道如何去掉 s01e01- 和 -george 之间的“host”这个词-卡林...并认为它会像这样工作...

 /season-*/*/*/*/snl-s*e*-host-*-* -> /season-*/snl-s*e*[code to remove the word "host"]-*-* 301

这是否接近正确?我需要那么多 *s

在此先感谢您的帮助...

解决方法

遗憾的是,您将无法使用 redirect features that Squarespace has to offer,即通配符 (*) 和单个变量 ([name]) 来减少单个重定向条目的数量。需要多个变量,但仅支持 [name]

你能得到的最接近的是:
/season-1/*/*/*/snl-s01e01-host-[name] -> /season-1/snl-s01e01-[name] 301

但是,如果我理解的话,虽然上面的重定向看起来更一般,但仍然需要为每个帖子单独复制/粘贴。因此,尽管它展示了可以达到的最佳效果,但这并不是技术上的改进。

因此,只有两种选择:

  1. 创建一个 Google 表格(或其他电子表格),其中在第一列中复制/粘贴旧网址,在第二列中添加使用 arrayformula 和正则表达式解析旧网址并生成新网址的公式,并在第三列中将公式写入 join->301 的两个单元格。完成后,您可以单击、拖动并突出显示第 3 列中的所有单元格,将它们复制并粘贴到 Squarespace 的“URL 快捷方式”文本区域中。

    弄清楚这可能非常耗时,编写并测试正确的公式,但它确实避免了必须手动输入每个重定向。是否减少总的时间/工作量取决于重定向的数量和编写电子表格公式的熟练程度。

    使用上面的重定向代码可能会简化需要的公式写在电子表格中,这可能会节省一些时间。

  2. 另一种替代方法是删除您的重定向,而是通过添加到 404/Page-not-found 页面的 JavaScript 来处理重定向。因为听起来您已经拥有所有重定向,但只是试图减少总数,所以我不建议更改为基于 JavaScript 的方法。无论如何,使用 JavaScript 还存在其他缺点。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。