Архив

Архив раздела ‘CMS’
23 августа 2015 Нет комментариев
function getIdByCode($code,$iblock_id,$type){
	if(CModule::IncludeModule("iblock")){
		if($type=='IBLOCK_ELEMENT'){
			$arFilter=array("IBLOCK_ID"=>$iblock_id,"CODE"=>$code);
			$res=CIBlockElement::GetList(array(),$arFilter,false,array("nPageSize"=>1),array('ID'));
			$element=$res->Fetch();
			if($res->SelectedRowsCount()!=1) return '<p style="font-weight:bold;color:#ff0000">Элемент не найден</p>';
			else return $element['ID'];
		}
		else if($type=='IBLOCK_SECTION'){
			$res=CIBlockSection::GetList(array(),array('IBLOCK_ID'=>$iblock_id,'CODE'=>$code));
			$section=$res->Fetch();
			if($res->SelectedRowsCount()!=1) return '<p style="font-weight:bold;color:#ff0000">Раздел не найден</p>';
			else return $section['ID'];
		}
		else{
			return '<p style="font-weight:bold;color:#ff0000">Укажите тип</p>';
		}
	}
}
$property_type_value=getIdByCode($_REQUEST['type'],42,'IBLOCK_SECTION');

В примере получаем ID раздела из инфоблока с ID 42, у которого символьные код — $_REQUEST[‘type’].
Источники:
http://kadomtsev.ru/bitriks-kak-poluchit-id-razdela-ili-elementa-infobloka-po-simvolnomu-kodu/
http://www.bxdev.ru/posts/iblocks/getIdByCode/

Categories: CMS Tags:
23 августа 2015 Нет комментариев
global $arTypesFilter;
$arTypesFilter=array("PROPERTY_TYPE"=>27);
$APPLICATION->IncludeComponent(
	"bitrix:news.list",
	"tpl",
	Array(
		"FILTER_NAME"=>"arTypesFilter",
		"PROPERTY_CODE"=>array("TYPE"),
	),
	false
);

Где 27 значение свойства TYPE. (Перечислены только параметры, которые участвуют в фильтрации.)

Categories: CMS Tags:

Главная

<?if($APPLICATION->GetCurPage(false)==='/'):?>
	главная...
<?endif;?>

Не главная

<?if($APPLICATION->GetCurPage(false)!=='/'):?>
	не главная...
<?endif;?>
Categories: CMS Tags:
19 марта 2015 2 комментария

После переноса на другой хостинг на всех страницах вместо контента форма авторизации.
Решается так: Настройки - Настройки продукта - Сайты - Список сайтов - Сайт - Путь к корневой папке веб-сервера для этого сайта

Categories: CMS Tags:
18 марта 2015 1 комментарий

На странице:

$APPLICATION->SetPageProperty("og:title","Зголовок страницы");
$APPLICATION->SetPageProperty("og:description","Описание страницы");
$APPLICATION->SetPageProperty("og:url","http://site.ru/page/");
$APPLICATION->SetPageProperty("og:image","http://site.ru/images/image.jpg");

также в /bitrix/php_interface/init.php

AddEventHandler('main','OnEpilog','onEpilog',1);
function onEpilog(){
	global $APPLICATION;
	$arPageProp=$APPLICATION->GetPagePropertyList();
	$arMetaPropName=array('og:title','og:description','og:url','og:image');
	foreach ($arMetaPropName as $name){
		//$key=mb_strtoupper($name,'UTF-8');
		$key=mb_strtoupper($name);
		if (isset($arPageProp[$key])){
			//$APPLICATION->AddHeadString('<meta property="'.$name.'" content="'.htmlspecialchars($arPageProp[$key]).'">',$bUnique=true);
			$APPLICATION->AddHeadString('<meta property="'.$name.'" content="'.$arPageProp[$key].'">',$bUnique=true);
		}
	}
}

Закомментированные строки для utf-8 (заменить аналогичные).
http://max22.ru/bx-solutions/meta-tags/

Categories: CMS Tags: ,
25 февраля 2015 Нет комментариев

Проблема с кодировкой текста из БД:
/includes/database.php
после

$this->_table_prefix = $table_prefix;

(прим. 105 строка) добавить:

@mysql_query("SET NAMES 'cp1251'",$this->_resource);
@mysql_query("set session character_set_server=cp1251",$this->_resource);
@mysql_query("set session character_set_database=cp1251",$this->_resource);
@mysql_query("set session character_set_connection=cp1251",$this->_resource);
@mysql_query("set session character_set_results=cp1251",$this->_resource);
@mysql_query("set session character_set_client=cp1251",$this->_resource);
Categories: CMS Tags:
17 сентября 2014 Нет комментариев
$file=CFile::GetFileArray($arResult['PROPERTIES']['MY_PROPERTY']['VALUE']);
echo $file['SRC'];
Categories: CMS Tags: