• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/urlpreview/parser/schemaorg.php
  • Класс: BitrixMainUrlPreviewParserSchemaOrg
  • Вызов: SchemaOrg::getSchemaPropertyValue
protected function getSchemaPropertyValue(DOMElement $node)
{
	$result = null;

	switch($node->tagName)
	{
		case 'img':
			$result =  $node->getAttribute('src');
			break;
		case 'meta':
			$result = $node->getAttribute('content');
			break;
		case 'a':
			$result = $node->getAttribute('href');
			break;
		case 'time':
			if($node->hasAttribute('datetime'))
				$result = $node->getAttribute('datetime');
			else
				$result = $node->textContent;
			break;
		case 'div':
			$result = $this->getNodeInnerHtml($node);
			break;
		case 'p':
		case 'span':
		case 'h1':
		case 'h2':
		case 'h3':
		case 'h4':
		case 'h5':
		case 'h6':
			$result = $node->textContent;
			break;
	}

	// dom extension's internal encoding is always utf-8
	$result = Encoding::convertEncoding($result, 'utf-8', $this->documentEncoding);
	$result = trim($result);
	return ($result <> '' ? $result : null);
}