Сначала о проблеме с которой я столкнулся. Понадобилось добавить новую вкладку в соцсети, но с возможностью ее настройки.
[spoiler]
Ну, грубо говоря, вы выпускаете партнерское решение, которое добавляет вкладку с новостями в соцсеть. Все бы хорошо, но копий соцсети может быть несколько, даже в рамках одного сайта. И с какого именно инфоблока выводить во вкладке - не вынести в настройки модуля. В общем, кто лазил, тот поймет уныние ситуации
Решение - только настройки компонента соцсети. Но как быть, если мы не оперируем шаблоном соцсети, а только ее отдельной вкладкой?
Помогла фича продукта, при которой шаблона может и не быть, а быть только дополнительный .parameters.php и все. Системный компонент его подхватит и дополнит свои настройки настройками из него.
Размещаем в /bitrix/templates/.default/components/bitrix/socialnetwork/.default единственный файл .parameters.php с нужными нам настройками и получаем нужное нам расширение:

Если кто забыл какие внутренности у файла .parameters.php:
[spoiler]
Ну, грубо говоря, вы выпускаете партнерское решение, которое добавляет вкладку с новостями в соцсеть. Все бы хорошо, но копий соцсети может быть несколько, даже в рамках одного сайта. И с какого именно инфоблока выводить во вкладке - не вынести в настройки модуля. В общем, кто лазил, тот поймет уныние ситуации

Решение - только настройки компонента соцсети. Но как быть, если мы не оперируем шаблоном соцсети, а только ее отдельной вкладкой?
Помогла фича продукта, при которой шаблона может и не быть, а быть только дополнительный .parameters.php и все. Системный компонент его подхватит и дополнит свои настройки настройками из него.
Размещаем в /bitrix/templates/.default/components/bitrix/socialnetwork/.default единственный файл .parameters.php с нужными нам настройками и получаем нужное нам расширение:

Если кто забыл какие внутренности у файла .parameters.php:
<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
$arTemplateParameters = array(
"SOME_CODE" => Array(
"NAME" => "Выберите инфоблок новостей",
"TYPE" => "LIST",
"VALUES" => array("1" => "1", "2" => "2")
),
);
?>
|