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

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

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

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

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

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

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


<?$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");
?>

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

Andrey Churashev04.06.2017
Цитата
За основу возьмем стандартный компонент новостей


Появился обновленный компонент *блог*  
Михаил Базаров04.06.2017
Цитата
Andrey Churashev написал:
Цитата
За основу возьмем стандартный компонент новостей


Появился обновленный компонент *блог*  
Это именно многопользовательские блоги. В примере делаю однопользовательский.
usr26.06.2017
Михаил, есть возможность премодерации комментариев, чтобы запись публиковалась только после одобрения админом?
usr26.06.2017
Цитата
usr пишет:
Михаил, есть возможность премодерации комментариев, чтобы запись публиковалась только после одобрения админом?
Все нашел, процедура описана в разделе "Модерация комментариев": https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=42&LESSON_ID=3669
usr26.06.2017
Подскажите, кто знает, простой способ добавить пользовательское свойство для комментарию. Например текстовый инпут "рейтинг".

Стандартная форма по шаблону .default
https://db.tt/zXofaoPK5L
Александр Силуянов27.11.2017
Доброго дня Михаил.
У меня как всегда не заработало с первого раза)) И со второго))
Пишет: В настройках компонента не выбран ни один тип комментариев.


Код
 <?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

<?$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" => "50",
"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" => "4",
"IBLOCK_TYPE" => "content",
"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'
)
);?>





 
Александр Силуянов27.11.2017
Забыл добавить: Редакция СТАРТ
Михаил Базаров27.11.2017
Цитата
Александр Силуянов написал:
Забыл добавить: Редакция СТАРТ
В старте нет модуля блогов, не получится. Минимум стандарт нужен
demon_sl05.05.2018
Спасибо за уроки!
поправте код в В шаблон компонента "Оценка элемента звездочками", не хватает круглой скобки завершения инклуда, что вызывает ошибку.
Alexandr Bezrukov04.08.2018
Михаил, добрый день!

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

Спасибо
Pashka Kent07.02.2019
Цитата
Татьяна Токаренко пишет:
Добрый день!
А если в редакции Бизнес выходит уведомление "В настройках компонента не выбран ни один тип комментариев", то с чем это может быть связано?
Там три типа комментариев. Собственные на сайте, комменты вк и фб. Вам надо выбрать хотя бы один тип. Если в настройках компонента не видите галочки рядом с Комментарии на сайте, посмотрите установленные модули и есть ли там Блоги.
Pashka Kent07.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 товаров остались те же. В чем может быть проблема?

Случайные заметки

Как подобрать редакцию Битрикс под задачи

Просмотров: 5541 Комментариев: 0
Последнее время, все чаще, при общении с заказчиками, сталкиваюсь с вопросом "— Какая редакция 1С-Битрикс нужна для нашего сайта?". Сравнительная...

Изменить размер картинок на лету в битрикс

Просмотров: 43426 Комментариев: 11
Встала задачка: на собственном сайте, уменьшить размер превьюшек картинок у анонсов раздела дизайн. Само собой, перезаливать все картинки и лень и дол...