• Модуль: translate
  • Путь к файлу: ~/bitrix/modules/translate/lib/index/pathindex.php
  • Класс: BitrixTranslateIndexPathIndex
  • Вызов: PathIndex::loadByPath
static function loadByPath($path): ?self
{
	$path = '/'. trim($path, '/');
	$path = TranslateIOPath::replaceLangId($path, '#LANG_ID#');

	/** @var TranslateIndexPathIndex $indexPath */
	$indexPath = TranslateIndexInternalsPathIndexTable::getList(['filter' => ['=PATH' => $path]])->fetchObject();

	// if it is lang folder when find the lang/#LANG_ID# folder
	if (
		$indexPath instanceof TranslateIndexPathIndex
		&& $indexPath->getIsLang()
		&& $indexPath->getName() === 'lang'
	)
	{
		$topPathRes = TranslateIndexInternalsPathIndexTable::getList([
			'filter' => [
				'=NAME' => '#LANG_ID#',
				'=DEPTH_LEVEL' => $indexPath->getDepthLevel() + 1,
				'=DESCENDANTS.PARENT_ID' => $indexPath->getId(),//ancestor
			],
		]);
		$indexPath = $topPathRes->fetchObject();
	}

	return $indexPath;
}