Пользователь @admin написал в Подскажите как настроить Sitemap под мультиязычность:
if (!empty($resource['context_key']) && $resource['context_key'] != 'ru') {
$url = str_replace('site.net/', 'site.net/' . $resource['context_key'] . '/', $url);
}
такая ситуация, каталоги и подкаталоги гдето теряются - их вообще перестал видеть снипет. Выводит только 1ю линию глубины от Base_url.
Подскажи пожалуйста. Какой кусок за это отвечает - чтоб подкаталоги выводились?
Ваш вариант тоже отработал немного не коректно...
$resources = getMapQuery($classNames[$key],$select,$where);
if(!empty($resources)){
foreach ( $resources as $resource ){
if(!empty($resource['alias'])){
if (!isset($resource['context_key'])) {
$resource['context_key'] = !empty( $contexts[$key] ) ? $contexts[$key] : $contexts[0];
}
// site_start Context
$ctx = $modx->getContext($resource['context_key']);
$settings = $ctx->config;
$siteStart = $settings["site_start"];
// if ( $resource[$parentName] != 0 ){
// $url = $modx->makeUrl($resource[$parentName],$resource['context_key'],'','full');
// }
if ( $resource['context_key'] != 'web' ){
$url = $config['site_url'].$resource['context_key'];
// // $url = $modx->makeUrl($config['site_url'],$resource['context_key'],'','full');
// // $url = $modx->makeUrl(3, $resource['context_key'],'','full');
}
else{
$url = $config['site_url'];
}
if ( $siteStart != $resource['id'] ){
$url .=substr($url, -1)=='/' ? $resource['alias'] : '/'.$resource['alias'].$siteStart.$resource[$parentName];
// dobavl alias vkontse
$url .= !empty( $resource['isfolder'] ) ? $config['containerSuffix'] : $config['urlSuffix'];
// okonchanie / abo .html
}
if ($packageName == 'modResource'&& $resource['id']==$config['site_start']){
$url=$config['site_url'];
}