Ну вот, пусть знатоки меня пинают теперь.
//$arResult - массив на входе в result_modifier.php
$iblock_id = 0; //мы должны знать ID инфоблока каталога
$custom_name = 'CUSTOM_TITLE'; //символьный код свойства для кастомного тайтла
if(CModule::IncludeModule("iblock")){
foreach ($arResult['ITEMS'] as $key => $value) {
$link = $value['LINK']; //Допустим, что у нас ЧПУ вида /catalog/section_code
$section_code = str_replace('/catalog/', '', $link); //можно придумать что-то поизящнее, наверное
$dbSection = CIBlockSection::GetList(
array("SORT"=>"ASC"),
array(
"IBLOCK_ID" => $iblock_id,
"CODE" => $section_code
),
false,
array('PROPERTY_'.$custom_name)
);
if ($arSection = $dbSection->GetNext()){
$new_name = $arSection['PROPERTY_'.$custom_name.'_VALUE'];
$arResult['ITEMS'][$key]['NAME'] = $new_name;
}
}
}
Только делать это нужно не в result_modifier.php (бредкрамбс его не поддерживает), а прямо в коде template.php видимо.