Остановить WordPress от включения сценария в CDATA - PullRequest
4 голосов
/ 13 декабря 2011

Я импортирую HTML-страницы, используя плагин HTML-импорта для WordPress.

У меня есть фрагмент кода для карт Google, который импортируется.

Однако после импорта он включает тег script в CDATA. Если я удаляю CDATA, карта работает нормально. Как мне остановить WordPress от включения скрипта с CDATA?

Вот сценарий:

<script type="text/javascript">
    <[[CDATA[
      var locations = [ ['<strong>Alabama', 33.606379, -86.50249, 1] ];
      var map = new google.maps.Map(document.getElementById("map"), {
        zoom: 5,
        center: new google.maps.LatLng(33.606379, -86.50249),
        mapTypeId: google.maps.MapTypeId.ROADMAP
      });
      var infowindow = new google.maps.InfoWindow();
      var marker, i;
      for (i = 0; i < locations.length; i++) {
        marker = new google.maps.Marker({
        position: new google.maps.LatLng(locations[i][1], locations[i][2]),
        map: map
      });
      google.maps.event.addListener(marker, click, (function(marker, i) {
        return function() {
          infowindow.setContent(locations[i][0]);
          infowindow.open(map, marker);
        }
      })(marker, i));
    }
  ]]>;
</script>

Ответы [ 2 ]

2 голосов
/ 13 декабря 2011
$content = str_replace(']]>', ']]&gt;', $content);

wp-includes \ post-template.php строка 167

0 голосов
/ 22 февраля 2018

Вы также можете сделать это в файле страницы шаблона:

   <?php $content = str_replace(']]&gt;', ']]>', the_content()); echo $content; ?>
...