Advertisement
Guest User

Untitled

a guest
Mar 13th, 2017
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.66 KB | None | 0 0
  1. 1. Скопировать весь шаблон в /local/.
  2. 2. $APPLICATION->ShowMeta();
  3. 3. $cp=$this->__component;
  4. 5. Не забыть про <?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?> result_modifier / component_epilog
  5. 6. /local/php_inerface/init.php
  6.  
  7. function d($val)
  8. {
  9.     echo "<pre>";
  10.     if(is_array($val) || is_object($val))
  11.     {
  12.         print_r($val);
  13.     }
  14.     else
  15.     {
  16.         echo $val;
  17.     }
  18.     echo "</pre>";
  19. }
  20. 7. CEventLog::Add(array("DESCRIPTION"=>"текст"))
  21. 8. define("NEWS_IBLOCK_ID", 1);
  22. 9. require_once(dirname(__FILE__)."/askaron/myclass.php");
  23. 10. в обработчках элемента инфоблока
  24. $IBLOCK_ID=$arFields["IBLOCK_ID"];
  25.     if(!$IBLOCK_ID)
  26.     {
  27.         $IBLOCK_ID=GetIblockByID($arFields["ID"]);
  28.     }
  29.    
  30.     if($IBLOCK_ID==NEWS_IBLOCK_ID)
  31.     {
  32.         //...
  33.     }
  34. 11.
  35. global $MESS;
  36. include_once dirname(__FILE__)."/lang/".LANGUAGE_ID."/init.php";
  37. //в файле "/lang/".LANGUAGE_ID."/init.php";
  38. $MESS["HELLO_WORLD"]="Текст номер #NUMBER#"
  39.  
  40.  
  41. function getHelloWorld()
  42. {
  43.    return  GetMessage('HELLO_WORLD', array("#NUMBER#"=>5));
  44. }
  45.  
  46.  
  47.  
  48. 12. Свой компонент - скопировать new.list
  49. В списке "родителей" оставить одного со своим кодом (exam2) и именем
  50.  
  51.  
  52. 13.
  53. В языковых фразах удалять ве лишнее.
  54. Пример parameteres
  55. http://image.prntscr.com/image/8c603389f31b4569a6cc4b74145d6df2.png
  56. component
  57. http://image.prntscr.com/image/a3f56fff9a23419c9d416d4d2edc3904.png
  58.  
  59. Проверить параметры налогично модулю iblock
  60.  
  61. 14.получение свойств (можно посмотреть в catalog.section)
  62. $result = arrat([1]=>array("PROPERTIES"=>array()), [1]=>array("PROPERTIES"=>array()))
  63. $itemsFilter=array("ID"=>ItemsIds, "IBLOCK_ID"=>$arParams["IBLOCK_ID"]);
  64.  CIBlockElement::GetPropertyValuesArray(&$result,$iblock_id, $itemsFilter )
  65.  
  66. 15. Если будет фильтр, то добавить данный массив в startresultCache
  67.  
  68.  Если потребуется - отключать кеш - $arParams["CAHC_TIME"]=0
  69.  
  70.  Не забыть про строгоеравенство и поиск по маске
  71.  
  72.  
  73.  15.1. В слуачае $arFilter не забыть про строгое равенство "=NAME" и поиск по маске "NAME"=>"%слово%"
  74.  16. Комплексный компонент
  75.  
  76.   .parameters.php
  77.  16.1)Для ЧПУ
  78.  SEF_MODE
  79.   "section" ключ - файл - section.php
  80.   VARIABLES - пременные
  81.   DEFAULT  - адрес страницы поумолчанию
  82.    "section" => array(
  83.                 "NAME" => GetMessage("SECTION_PAGE"),
  84.                 "DEFAULT" => "#SECTION_ID#/",
  85.                 "VARIABLES" => array("SECTION_ID"),
  86.             ),
  87.  
  88.  16.2) для НЕ ЧПУ
  89. даём возможность задать параметры
  90.  "VARIABLE_ALIASES" => Array(
  91.             "SECTION_ID" => Array("NAME" => GetMessage("SECTION_ID_DESC")),
  92.  
  93.  
  94.  
  95. 0)в component.php
  96.   Списоr переменных которые будут использованы
  97. $arComponentVariables = array(
  98.     "SECTION_ID",
  99.     "SECTION_CODE",
  100.     "ELEMENT_ID",
  101.     "ELEMENT_CODE",
  102. );
  103.  
  104. Распарсить(разобрать)адрес страницы  -
  105. получить переменные и определить какая будет страницы(news, section)
  106. надо два раза для ЧПУ и для не ЧПУ режима(важно!)
  107. !)с ЧПУ не надо менять
  108. !!)с не ЧПУ указать страниц которая бцдет открываться примерно там же
  109.  
  110. 1)if(isset($arVariables["ELEMENT_ID"]) && intval($arVariables["ELEMENT_ID"]) > 0)
  111.         $componentPage = "detail";
  112.        
  113. 2)$arResult = array(
  114.         "FOLDER" => "",
  115.         "URL_TEMPLATES" => Array(
  116.             "section" => htmlspecialcharsbx($APPLICATION->GetCurPage())."?".$arVariableAliases["SECTION_ID"]."=#SECTION_ID#",
  117.  
  118. 17.вывести полный адрес к странице с exampage!
  119. Проверить в режиме ЧПУ м не ЧПУ
  120.  
  121. 18. 5-е задание
  122. template.php:
  123. <?$this->SetViewTarget("sidebar");?>
  124.  
  125.     <div >
  126.         //вапвапвапвапвап
  127.     </div>
  128.  
  129. <?$this->EndViewTarget();?>
  130.  
  131.  
  132. header.php:
  133. <div id="sidebar">
  134.     <?$APPLICATION->ShowViewContent("sidebar")?>
  135. </div>
  136. 19.
  137. (!) $templateFolder
  138. (!) CJSCore::Init(array("jquery"));
  139. (!) $.ajax({
  140.     url:"hjhjghj",
  141.     data:{},
  142.     success:function(data){}
  143. });
  144.  
  145. можно посмотреть в /bitrix/tools/ajax_captcha.php
  146.  
  147. require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
  148.  
  149.  
  150. CUtil::PhpToJSObject();
  151. CBitrixComponentTemplate::GetFolder
  152. $this->GetFolder();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement