+7 495 008 8452
  • Загрузка
Выберите ваш цвет

Как с помощью отложенных функций вывести разные данные в разных местах страницы

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


Источник: http://dev.1c-bitrix.ru/community/forums/messages/forum6/topic57638/message301982/#message301982
вариант 1 (функция с параметрами)

вывод выполнения отложенной функции
Код
$APPLICATION->AddBufferContent(Array('myClass', "myFunc"),false);  
//в вашем случае в header  
//передаем false чтобы функция ничего не вывела
вызов функции которую нужно отложить
Код
$params = 'text'; 
$APPLICATION->AddBufferContent(Array('myClass', "myFunc"), $params);  
//передаем 'test', но можно передать сколько угодно параметров через запятую
ну и конечно чтобы отложить выполнение. то на странице должен быть доступен класс myClass и метод myFunc
Код
class myClass {

   public function myFunc($params){
   
      if($params) {
         echo 'function myFunc, class myClass. params - '.$params;
      }
      else {
         return; //это первый вызов на странице с false
      }
   
   }
}


$params = 'text';
$APPLICATION->AddBufferContent(Array('myClass', "myFunc"), $params); //вывод пойдет в header
вариант 2 (просто функция без параметров)

вывод выполнения отложенной функции  
Код
$APPLICATION->AddBufferContent('myFuncEmp');  //в вашем случае в header

сама функция которую нужно отложить
Код
function myFuncEmp() { 
   echo 'function myFuncEmpty run'; 
}
вариант 3 (используем механизмы буферизации)

вывод
Код
$APPLICATION->ShowViewContent('mycontent');
в шаблоне любого компонента
Код
<?$this->SetViewTarget("mycontent");//дальше контент который буферизируется?> 
<div class="test">test</div> 
<?$this->EndViewTarget();//конец буферизации?>
вариант 4... ну и т.п.

Назад в раздел

Подписаться на новые материалы раздела:
Загрузка...