А если я вставлю картинку из медиабиблиотеки на простую статичную страницу, а потом ее удалю из библиотеки, то она удалится и со страницы. По-моему логично ожидать аналогичного поведения и в случае с инфоблоками, удалили в библиотеке, следовательно и в новостях остались без фото. В крайнем случае можно галочку сделать (копировать/не копировать).
Если есть модуль статистики, то можно через события. Для этого формируете url к файлу, примерно так:
/bitrix/redirect.php?event1=download_file&event2=[ИМЯ ФАЙЛА или любая другая информация]&goto=[ПУТЬ К ФАЙЛУ]
НО, насколько я знаю, события хранятся только определенное время, потом очищаются (время хранения настраивается в настройках модуля), так же если вы хотите выводить для пользователя кол-во скачиваний, то придется через API дергать нужные события, тут я не подскажу как, читайте документацию.
Если модуля нет, либо первый способ не нравится, то можно написать свой скрипт аналогичный redirect.php, и в нем фиксировать скачивание (например в элементе ИБ создать свойство, и делать ему +1, либо в файл писать, либо сделать таблицу в БД), а потом уже делать редирект на сам файл, вообщем посмотрите код redirect.php, там все просто.
Копируйте шаблон компонента, в шаблоне элемента каталога создайте файл result_modifier.php, и в нем измените $arResult так как вам нужно. Представления свойств хранятся в $arResult['DISPLAY_PROPERTIES']['НАЗВАНИЯ ВАШЕГО СВОЙСТВА']['DISPLAY_VALUE'], вот этот DISPLAY_VALUE и замените.
вместо require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); вставьте require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_before.php');
вместо require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php"); вставьте require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/epilog_after.php');
Валентин Ципан, я бы на вашем месте воспользовался решением в маркетплейс, это быстрее и дешевле чем разбираться в API битрикса и писать свой компонент.
Чекбокс: Тип свойства - список, внешний вид - флажки, значения списка - да (нет, Y, N - на ваш выбор).
Цитата
RomeroSPB пишет: ЗЫ: и на всякий случай подскажите несведущему где сам компонент лежит bitrix:news.detail. Спасибо!
Лежит в /bitrix/components/bitrix/news.detail, но трогать там ничего не нужно, если нужно изменить компонент, то копируете его в свое пространство (создаете свою папку в /bitrix/components/), если нужно изменить шаблон, то копируете шаблон компонента в шаблон сайта (лучше средствами CMS).
Мне кажется все дело в кешировании. Попробуйте добавить код вызова компонента bitrix:breadcrumb не в шаблон элемента каталога, а в шаблон комплексного компонента catalog/element.php