Bibliothèque de queriesDupliquer une entrée Bricks
Dupliquer une entrée Bricks
Cette requête duplique une entrée personnalisée Bricks (y compris son titre, contenu, extrait, auteur, image mise en avant et métadonnées), et régénère les IDs des éléments Bricks pour l'entrée personnalisée dupliquée.
Cette requête nécessite que l'extension Bricks soit activée.
La requête nécessite les variables suivantes :
customPostId: L'ID de l'entrée personnalisée Bricks à dupliquer.
query InitializeDynamicVariables
@configureWarningsOnExportingDuplicateVariable(enabled: false)
{
authorID: _echo(value: null)
@export(as: "authorID")
@remove
featuredImageID: _echo(value: null)
@export(as: "featuredImageID")
@remove
meta: _echo(value: {})
@export(as: "meta")
@remove
bricksIsEnabledForCustomPostType: _echo(value: false)
@export(as: "bricksIsEnabledForCustomPostType")
@remove
}
query GetBricksCustomPostAndExportData($customPostId: ID!)
@depends(on: "InitializeDynamicVariables")
{
customPost(by: { id: $customPostId }, status: any) {
bricksIsEnabledForCustomPostType
@export(as: "bricksIsEnabledForCustomPostType")
# Fields not to be duplicated
id
slug
date
status
# Fields to be duplicated
author {
id @export(as: "authorID")
}
customPostType @export(as: "customPostType")
rawContent @export(as: "rawContent")
rawExcerpt @export(as: "excerpt")
featuredImage {
id @export(as: "featuredImageID")
}
rawTitle @export(as: "title")
metaKeys(filter: { exclude: ["_thumbnail_id", "_edit_last"] })
meta(keys: $__metaKeys)
@export(as: "meta")
}
}
mutation DuplicateBricksCustomPost
@depends(on: "GetBricksCustomPostAndExportData")
@include(if: $bricksIsEnabledForCustomPostType)
{
createCustomPost(input: {
status: draft,
customPostType: $customPostType,
authorBy: {
id: $authorID
},
contentAs: {
html: $rawContent
},
excerpt: $excerpt
featuredImageBy: {
id: $featuredImageID
},
title: $title,
meta: $meta
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
customPost {
# Fields not to be duplicated
id @export(as: "newCustomPostId")
slug
date
status
# Fields to be duplicated
customPostType
author {
id
}
rawContent
excerpt
featuredImage {
id
}
title
metaKeys(filter: { exclude: ["_thumbnail_id", "_edit_last"] })
meta(keys: $__metaKeys)
}
}
}
mutation RegenerateDuplicatedCustomPostBricksData
@depends(on: "DuplicateBricksCustomPost")
@include(if: $bricksIsEnabledForCustomPostType)
{
bricksRegenerateCustomPostElementIDSet(input: {
customPostID: $newCustomPostId
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
}
}