将Gatsby固定链接更改为非漂亮



我有一个旧的php网站,我想转移到盖茨比。然而,它使用以下的永久链接结构:

http://example.com/?qa=2/my-awesome-post

我使用的是盖茨比入门博客主题,然而,那里的网址如下:

http://example.com/my-awesome-post

由于SEO的原因,能够调整永久链接结构是至关重要的。但是,如果我只是尝试更改文件夹结构,就会出现一个错误,即文件或文件夹名称中不允许使用"?"字符。有没有办法在盖茨比网站的url结构中包含一个特殊字符?请帮忙!

如果您只是通过在pages文件夹中创建新的.js文件来从头开始创建这些页面,您可能会考虑覆盖gatsby-node.js中的onCreatePage方法。

示例:

exports.onCreatePage = ({ page, actions }) => {
const { createPage, deletePage } = actions;
// First delete the incoming page that was automatically created by Gatsby
deletePage(page);
// then create a new one with proper url
return createPage({
...page,
path: 'update-to-your-needs' 
})
}

如果它们是动态创建的,例如从降价文件中创建的,则也可以覆盖它们在gatsby-node.js中的创建方式。

最新更新