Библиотека queriesДобавление отсутствующих ссылок в записи
Добавление отсутствующих ссылок в записи
Этот запрос выполняет поиск и замену с помощью регулярных выражений, чтобы добавить отсутствующие ссылки в HTML-содержимое записи.
Все URL-адреса, не обёрнутые тегом якоря, например:
<p>Visit my website: https://mysite.com.</p>...оборачиваются соответствующим тегом <a> (при этом домен удаляется из текста, а ссылка настраивается на открытие в новом окне), и результат принимает вид:
<p>Visit my website: <a href="https://mysite.com" target="_blank">mysite.com</a>.</p>query GetPostData($postId: ID!) {
post(by: { id: $postId }, status: any) {
id
rawContent
adaptedRawContent: _strRegexReplace(
searchRegex: "#\\s+((https?)://(\\S*?\\.\\S*?))([\\s)\\[\\]{},;\"\\':<]|\\.\\s|$)#i"
replaceWith: "<a href=\"$1\" target=\"_blank\">$3</a>$4"
in: $__rawContent
)
@export(as: "adaptedRawContent")
}
}
mutation AddMissingLinksInPost($postId: ID!)
@depends(on: "GetPostData")
{
updatePost(input: {
id: $postId,
contentAs: { html: $adaptedRawContent },
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
post {
id
title
rawContent
}
}
}