JSON-LD и цитаты в содержании - PullRequest
0 голосов
/ 26 мая 2019

У меня проблема с проверкой кода JSON-LD с помощью инструмента тестирования структурированных данных Google.Текст моей статьи взят из базы данных MySQL и помещен в структуру JSON-LD скриптом php по следующим строкам:

<script type="application/ld+json">
{
    "@context": "http://schema.org",
    "@type": "Article",
    ...
    "articleBody": "<?php echo article content here ?>",
    ...
}

Проблема в том, что если текст статьи содержит кавычки ("), то они конфликтуют сJSON-LD блокирует синтаксис и вызывает ошибку проверки. По сути, самый первый экземпляр (") в содержимом статьи указывает на конец articleBody, а следующий (") вызывает синтаксическую ошибку.

Единственная идея, которая у меня есть, этопредварительно обработать содержимое статьи с помощью символов php и remove (").Это прекрасно работает, но выглядит искусственно:

    "articleBody": "<?php echo str_replace( '"', '', article content here) ?>",

Существуют ли какие-либо стандартные обходные пути?

1 Ответ

0 голосов
/ 08 июня 2019

Спасибо, Унор.Я получил следующий скрипт, который прекрасно работает:

"articleBody": "<?php echo preg_replace( '/\s+/', ' ', str_replace( '"', '\"', wp_strip_all_tags( get_the_content() ) ) ) ?>",
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...