要从元标记中检索描述字符串:
<meta name="description" content="Impara a creare dati strutturati senza l'uso di plugin">
我使用以下 JavaScript 函数:
function() {
var metaElement = document.querySelector('meta[name="description"]');
return metaElement ? metaElement.getAttribute('content') : '';
}
接下来,我会将之前保存在 Google 跟踪代码管理器触发器中的变量注入到 JSON-LD 结构化数据中:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BlogPosting",
"description": "{{MetaDescription blogposting}}"
}
</script>
但是,当字符串注入时,出现了这个问题:
"description": "Impara a creare dati strutturati senza l\x27uso di plugin"
我该如何解决这个问题,因为数据在注入到json-ltd时由于某种原因被某些东西修改了
首先,您不应该通过标签管理系统注入模式标记。特别是,不是通过 GTM。这是一种不好的做法,有几个原因。这应该通过正常的前端手段来完成。通过 TMS 进行此操作可能是一种代价高昂的黑客行为。
不过,你的问题是微不足道的。您只需要在注入之前对字符串进行 url 解码即可。如果它是 JS,请更正
MetaDescription blogposting
变量,或者创建另一个对其进行解码的变量,如下所示:
function(){
return decodeURIComponent({{MetaDescription blogposting}});
}