недавно решил подобный вопрос, с помощью техподдержки, мне нужно было переключать шаблон в зависимости от ширины содержимого с 3-х на 2-х колоночный.
Привожу советы техслужбы:
[QUOTE]
1. В инфоблоке добавляете какое-либо свойство, которое будет указывать, использовать ли определенный шаблон.
К примеру, строковое свойство use_template
2. В элементе, если необходим определенный шаблон под условным номером 2, указываете, в свойстве к код 2.
3. В настройках сайта ставите шаблону, которому условно присвоили Вы номер 2, условие $_REQUEST['MY_TEMPLATE_USE']=='2'
4. Как следует из пункта 3, в $_REQUEST должен быть параметр MY_TEMPLATE_USE со значением. А для этого необходимо чтобы в ссылке на детальную страницу было, к примеру вместо
detail.php?BID=32&ID=123321
была ссылка
detail.php?BID=32&ID=123321&MY_TEMPLATE_USE=2
Для этого, нужно изменить компонент, который выводит ссылки на детальные страницы элемента.
Т.е., к примеру, в компоненте news.list сделать вместо вывода просто ссылки, условие - прибавить к ссылке параметр MY_TEMPLATE_USE равному значению свойства элемента use_template, если это свойство установлено.
Все, теперь, при установке свойства, компонент списка элементов выведет ссылки на детальные элементов с параметром, при котором применится шаблон.
[/QUOTE]
и еще уточнение
[QUOTE]
В компоненте news.list есть вывод ссылки
href="<?=$arItem["DETAIL_PAGE_URL"]?>"
к примеру, если целевое свойство имеет код newtest, то примерно следующая проверка:
href="<?=$arItem["DETAIL_PAGE_URL"]?><?(!empty($arItem['PROPERTIES']['newtest']['VALUE']) ? '&'.$arItem['PROPERTIES']['newtest']['VALUE'] : '')?>"
используйте для отладки php-функции echo и print_R.
[/QUOTE]
вообщем как я понял в шаблоне \bitrix\templates\твой шаблон\components\bitrix\news.list\template1\template.php
немного изменил код на:
[QUOTE]<a href="<?echo $arItem["DETAIL_PAGE_URL"]?><?echo "&use_temp="?><?echo $arItem['PROPERTIES']['use_temp']['VALUE']?>">
<?echo $arItem["NAME"]?></a><br /> [/QUOTE]
может криво, но работает :)