Queryライブラリすべての投稿内で古い投稿スラッグを新しい投稿スラッグに置換する
すべての投稿内で古い投稿スラッグを新しい投稿スラッグに置換する
投稿のスラッグを変更した後、このクエリを実行してすべてのコンテンツが新しいURLを指すように変換します。
このクエリを実行するには、エンドポイントでネストされたMutationが有効になっている必要があります。
query ExportData(
$oldPostSlug: String!
$newPostSlug: String!
) {
siteURL: optionValue(name: "siteurl")
oldPostURL: _strAppend(
after: $__siteURL,
append: $oldPostSlug
) @export(as: "oldPostURL")
newPostURL: _strAppend(
after: $__siteURL,
append: $newPostSlug
) @export(as: "newPostURL")
}
mutation ReplaceOldWithNewSlugInPosts
@depends(on: "ExportData")
{
posts(
filter: {
search: $oldPostURL
},
pagination: {
limit: -1
}
) {
id
rawContent
adaptedRawContent: _strReplace(
search: $oldPostURL
replaceWith: $newPostURL
in: $__rawContent
)
update(input: {
contentAs: { html: $__adaptedRawContent }
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
post {
id
rawContent
}
}
}
}