Телеграм: @bazarow_ru Почта: mihail@bazarow.ru

Создание блога с комментариями, оценками и просмотрами на сайте с 1С-Битрикс

Просмотров: 24530

Если на вашем сайте требуется создание раздела с блогом или новостями, статьями. Записям в которых, посетители смогу ставить оценки и комментировать, сделать это достаточно просто. В этом видео расскажу как. За основу возьмем стандартный компонент новостей

Для реализации нам понадобятся

Компонент написания и вывода комментариев

Воспользуемся стандартным компонентом "Комментарии к товарам" который используется в торговом каталоге


<?$APPLICATION->IncludeComponent(
	 "bitrix:catalog.comments",
	 "",
	 Array(
	 "AJAX_POST" => "Y",
	 "BLOG_TITLE" => "",
	 "BLOG_URL" => $arParams['BLOG_URL'],
	 "BLOG_USE" => "Y",
	 "CACHE_GROUPS" => $arParams['CACHE_GROUPS'],
	 "CACHE_TIME" => "3600",
	 "CACHE_TYPE" => "A",
	 "COMMENTS_COUNT" => "10",
	 "COMPONENT_TEMPLATE" => ".default",
	 "ELEMENT_CODE" => "",
	 "ELEMENT_ID" => $arResult['ID'],
	 "EMAIL_NOTIFY" => "N",
	 "FB_APP_ID" => $arParams['FB_APP_ID'],
	 "FB_COLORSCHEME" => "light",
	 "FB_ORDER_BY" => "reverse_time",
	 "FB_TITLE" => "Facebook",
	 "FB_USE" => "N",
	 "FB_USER_ADMIN_ID" => "",
	 "IBLOCK_ID" => "14",
	 "IBLOCK_TYPE" => "Russian",
	 "PATH_TO_SMILE" => "",
	 "SHOW_DEACTIVATED" => "N",
	 "SHOW_RATING" => "N",
	 "SHOW_SPAM" => "Y",
	 "TEMPLATE_THEME" => "black",
	 "URL_TO_COMMENT" => "",
	 "VK_API_ID" => $arParams['VK_API_ID'],
	 "VK_TITLE" => "В контакте",
	 "VK_USE" => "N",
	 "WIDTH" => ""
	),
	$component,
	Array(
	 'HIDE_ICONS' => 'Y'
	)
);?>

Показ количества просмотров в компоненте новостей

В шаблоне компонента


<?=$arItem['SHOW_COUNTER']?>
<?=$arResult['SHOW_COUNTER']?>

Показ количества комментариев

В шаблоне компонента


<?if (strlen($arItem['DISPLAY_PROPERTIES']['BLOG_COMMENTS_CNT']['DISPLAY_VALUE'])>0):?>
<?echo $arItem['DISPLAY_PROPERTIES']['BLOG_COMMENTS_CNT']['DISPLAY_VALUE'];?>
<?else:?>
			0
<?endif;?>
<?if (strlen($arResult['DISPLAY_PROPERTIES']['BLOG_COMMENTS_CNT']['DISPLAY_VALUE'])>0):?>
<?echo $arResult['DISPLAY_PROPERTIES']['BLOG_COMMENTS_CNT']['DISPLAY_VALUE'];?>
<?else:?>
			0
<?endif;?>

Дата создания элемента в правильном формате

Можно воспользоваться вызовом $arResult["DATE_CREATE"] ($arItem). Но тогда выводится в формате "12 Ноябрь 2015 12:31:17", намного красивее выводить в формате сайта, Например "12 Ноября 2015"


<?
	$arParams["DATE_CREATE"]="j F Y";
	echo CIBlockFormatProperties::DateFormat($arParams["DATE_CREATE"], MakeTimeStamp($arResult["DATE_CREATE"], CSite::GetDateFormat()));
?>

Оценка элемента звездочками

В шаблон компонента вставляем компонент голосования


<?
	$APPLICATION->IncludeComponent(
		"bitrix:iblock.vote",
		"stars",
		array(
			"IBLOCK_TYPE" => $arParams['IBLOCK_TYPE'],
			"IBLOCK_ID" => $arParams['IBLOCK_ID'],
			"ELEMENT_ID" => $arResult['ID'],
			"ELEMENT_CODE" => "",
			"MAX_VOTE" => "5",
			"VOTE_NAMES" => array("1", "2", "3", "4", "5"),
			"SET_STATUS_404" => "N",
			"DISPLAY_AS_RATING" => $arParams['VOTE_DISPLAY_AS_RATING'],
			"CACHE_TYPE" => $arParams['CACHE_TYPE'],
			"CACHE_TIME" => $arParams['CACHE_TIME']
		),
		$component,
		array("HIDE_ICONS" => "Y");
?>

Видео: как создать блог на сайте

Alexandr Bezrukov 04.08.2018
Уточнение. Версия - бизнес. Ссылка не видна - ugruni.ru/blog/
Татьяна Токаренко 11.09.2018
Добрый день!
А если в редакции Бизнес выходит уведомление "В настройках компонента не выбран ни один тип комментариев", то с чем это может быть связано?
Михаил Базаров 11.09.2018
Цитата
Татьяна Токаренко написал:
Добрый день!
А если в редакции Бизнес выходит уведомление "В настройках компонента не выбран ни один тип комментариев", то с чем это может быть связано?
В общем-то, ответ в уведомлении. В настройках компонента, выберите тип комментариев- куда они должны записываться и ID элемента, к которому эти комментарии должны относиться  
Sergey Savchuk 24.10.2018
Михаил здравствуйте!
подскажите, а как реализовать рейтинг не с элементами, а с разделами инфоблока?
Возможно ли это? Например с компонентом iblock vote?

Спасибо
Pashka Kent 07.02.2019
Цитата
Татьяна Токаренко пишет:
Добрый день!
А если в редакции Бизнес выходит уведомление "В настройках компонента не выбран ни один тип комментариев", то с чем это может быть связано?
Там три типа комментариев. Собственные на сайте, комменты вк и фб. Вам надо выбрать хотя бы один тип. Если в настройках компонента не видите галочки рядом с Комментарии на сайте, посмотрите установленные модули и есть ли там Блоги.
Pashka Kent 07.02.2019
Не могу найти как вывести аватар пользователя в этих комментариях. Подскажите, где включить или в каком шаблоне смотреть?
Павел Сидоров 02.10.2019
Доброго времени суток.
Есть один нюанс при такой настройке ЧПУ как показано на видео.

Например
Каталог ЧПУ (относительно корня сайта): /recipes/
Страница общего списка: index.php
Страница раздела: #SECTION_CODE#/
Страница детального просмотра: #ELEMENT_CODE#.php

Тогда при обращении к несуществующей странице (например /recipes/авбгдеёж) будет отдаться не 404, а страница общего списка.

Если знаете как исправить данный недостаток подскажите пожалуйста.

Спасибо
Михаил Базаров 02.10.2019
Цитата
Павел Сидоров написал:
Доброго времени суток.
Есть один нюанс при такой настройке ЧПУ как показано на видео.

Например
Каталог ЧПУ (относительно корня сайта): /recipes/
Страница общего списка: index.php
Страница раздела: #SECTION_CODE#/
Страница детального просмотра: #ELEMENT_CODE#.php

Тогда при обращении к  несуществующей странице  (например /recipes/авбгдеёж) будет отдаться не 404, а страница общего списка.

Если знаете как исправить данный недостаток подскажите пожалуйста.

Спасибо

Попробуйте, в настройках компонента, в самом низу- поставить галки:
- Отдавать 404
- Показ специальной страницы (пропишите путь к странице ошибки)
Должно бы помочь, но не точно.
Ростислав Черненко 02.10.2019
А есть ли у Вас урок, как с нуля создать раздел "блог" на сайте?
Денис Разгонов 09.02.2021
Цитата
Михаил Базаров написал:
Цитата
Татьяна Токаренко написал:
Добрый день!
А если в редакции Бизнес выходит уведомление "В настройках компонента не выбран ни один тип комментариев", то с чем это может быть связано?
В общем-то, ответ в уведомлении. В настройках компонента, выберите тип комментариев- куда они должны записываться и ID элемента, к которому эти комментарии должны относиться  
у меня стоит галочка "использовать комментарии", в "Название блога латинскими буквами" прописал название блога, но ничего так и не работает. пишет "В настройках компонента не выбран ни один тип комментариев". Все работало, пока не сделали выгрузку товаров из 1С, но в настройках компонента ничего не меняли, инфоблок и id товаров остались те же. В чем может быть проблема?

Записная книжка разработчика

Примерно с 2013-го года пишу заметки по разработке сайтов на Битрикс.
Вы можете задавать уточняющие вопросы в комментариях- отвечаю или дополняю заметки по возможности.

Вывести дату окончания скидки в карточке товара Просмотров: 4522 Если нужно вывести информацию о скидке в карточке товара, можно воспользоваться методом Вывести производителей на сайте с отбором его товаров из каталога Просмотров: 19598 Достаточно частая задачка для каталога или интернет-магазина: вывести список производителе... Заполнить коэффициент единицы измерения (MEASURE_RATIO) из свойства э... Просмотров: 6468 Задачка: Каталог наполняется из 1С, но 1С не передает коэффициент единицы измерения (особе... Объединить отдельные поля ФИО в одно свойство при оформлении заказа. Просмотров: 1324 Пользователь, при оформлении заказа, заполняет три отдельных поля с фамилией, именем и отч... Вывод элементов с помощью API битрикс Просмотров: 23962 Иногда, выводить элементы инфоблока с помощью компонентов, может оказаться избыточным. Нап... Вывести свойство привязка к Яндекс Картам в Битрикс Просмотров: 19447 Часто бывает нужно вывести свойство привязка к Яндекс карте в детальном описании элемента... Смена вида карточек товаров в catalog.section с иммитацией AJAX Просмотров: 1627 Смену вида карточек товаров, в разделе каталога, можно реализовать с помощью сессии, запис... Отфильтровать новости в Битрикс за заданный период Просмотров: 16692 Иногда, нужно отфильтровать элементы (новости например) по дате в Битрикс, с помощью компо... Картинка торгового предложения вместо иконки цвета, в выборе SKU Просмотров: 709 Задача: вместо не информативных иконок цветов нужно вывести детальную картинку торгового п... Очистка корзины в 1С-Битрикс одним нажатием Просмотров: 29584 В стандартной корзине Битрикс не хватает кнопки для полной очистки корзины одним нажатием... Вывести компонент новостей на страницу в Битрикс Просмотров: 65107 Посмотрел Яндекс метрику на свой сайт, и решил что буду частенько писать сюда именно то, ч... Дополнительные опции/услуги, добавляемые в корзину, в карточке товаро... Просмотров: 1054 Задача: в детальной карточке товара сделать возможность добавления услуги или опции, при д... Подключение jquery из ядра битрикс и объединение своих скриптов в оди... Просмотров: 20892 Если используете большое количество js скриптов на сайте. Например: фансибокс, всяческие г... Отфильтровать товары бренда и вывести по разделам каталога Просмотров: 1628 Задача: на странице бренда, который выводится компонентом новостей, нужно показать все тов... Спойлер в списке новостей Битрикс Просмотров: 12180 Иногда нужно сделать спойлеры в копонентах Битрикс, в основном конечно, имеет смысл при оч... Установить остатки товара на складе из доступных остатков. Просмотров: 6229 Задача, заполнить остатки товаров, в 1С-Битрикс, из параметра "Доступное количество". Данные о заказе текущего пользователя Просмотров: 13897 Иногда нужно получить данные о заказе текущего пользователя. Не через компонент, а непосре... Добавление в избранное или отложенные, на AJAX из карточки товара Просмотров: 29184 В этой заметке рассакажу как добавлять товары в "Отложенные", для иммитации функционала "И... Вывести минимальную и максимальную цену в разделе каталога Битрикс. Просмотров: 3665 Что бы вывести минимальную и максимальную стоимость товаров, из каталога 1С-Битрикс, доста... Дополнительные картинки в новостях Битрикс, почти фотогалерея. Просмотров: 49499 Частенько стоит задача, по мимо стандартных "Картинка для анонса" и "Деталь...