Biblioteca de queriesDuplicar una entrada de Bricks
Duplicar una entrada de Bricks
Esta consulta duplica una entrada personalizada de Bricks (incluyendo su título, contenido, extracto, autor, imagen destacada y metadatos), y regenera los IDs de los elementos de Bricks para la entrada personalizada duplicada.
Esta consulta requiere que la extensión Bricks esté habilitada.
La consulta requiere las siguientes variables:
customPostId: El ID de la entrada personalizada de Bricks a duplicar.
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
}
}
}
}