У меня есть HTML-шаблон с DIV, содержащими разметку schema.org. Содержимое DIV заполняется через PHP, но некоторые DIV остаются пустыми, когда нам не хватает данных для их размещения. В настоящее время мы можем скрыть DIV, проверив длину поля с помощью приведенного ниже javascript, НО, поскольку это клиентская сторона, инструмент тестирования богатых данных Google по-прежнему видит разметку schema.org в коде с отсутствующим/пустым содержимым и жалуется на потерянная информация.
Итак, мне нужно, чтобы DIV был скрыт, если он пуст, на стороне сервера перед обработкой. Я не могу понять, что эквивалентно PHP для этой проверки Javascript.
МЕТОД JAVASCRIPT ИСПОЛЬЗУЕТСЯ
<script>
var inside = document.getElementById("persona");
if(inside.innerHTML.length < 1) {
document.getElementById("staffm").style.display = "none";
} else {
document.getElementById("staffm").style.display = "block";
}
</script>
ОТВРАТИТЕЛЬНЫЙ PHP-КОД, КОТОРЫЙ Я ПЫТАЛСЯ ИСПОЛЬЗОВАТЬ (ВЕРСИЯ 3 МИЛЛИАРДА ЧТО-ТО)
<?php
$div = getElementById('staffm');
if (ob_get_length($div) < 1) {
$div->setAttribute("style", "display:none");
} else {
die('');
}
?>
Я не думаю, что это далеко не правильно, но я, честно говоря, не могу найти «простой» ресурс/сообщение о такой задаче - другие вопросы/ответы, кажется, становятся глубже, чем мне нужно или понимаю, и я теряюсь . Таким образом, любая помощь будет оценена.
getElementById
не является нативной глобальной функцией PHP. Существует бесчисленное множество пользовательских реализаций для обхода/модификации DOM (на ум приходит PHPQuery), в которых вполне могут существовать такие функции. ОП, возможно, лучше всего расследовать что-то подобное. 29.04.2013