如何解决如何在 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
但是,如果我理解的话,虽然上面的重定向看起来更一般,但仍然需要为每个帖子单独复制/粘贴。因此,尽管它展示了可以达到的最佳效果,但这并不是技术上的改进。
因此,只有两种选择:
- 创建一个 Google 表格(或其他电子表格),其中在第一列中复制/粘贴旧网址,在第二列中添加使用
arrayformula
和正则表达式解析旧网址并生成新网址的公式,并在第三列中将公式写入join
与->
和301
的两个单元格。完成后,您可以单击、拖动并突出显示第 3 列中的所有单元格,将它们复制并粘贴到 Squarespace 的“URL 快捷方式”文本区域中。
弄清楚这可能非常耗时,编写并测试正确的公式,但它确实避免了必须手动输入每个重定向。是否减少总的时间/工作量取决于重定向的数量和编写电子表格公式的熟练程度。
使用上面的重定向代码可能会简化需要的公式写在电子表格中,这可能会节省一些时间。
- 另一种替代方法是删除您的重定向,而是通过添加到 404/Page-not-found 页面的 JavaScript 来处理重定向。因为听起来您已经拥有所有重定向,但只是试图减少总数,所以我不建议更改为基于 JavaScript 的方法。无论如何,使用 JavaScript 还存在其他缺点。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。