Пустой компонент

пустые файлы

 
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1868
Вопрос скорее к тем, кто хоть раз собрал хоть 1 компонент.

Задача: сделать пустой компонент "test":

1.создается в темплейтах файл com_test.tpl
2.правильный (чистый файл) frontend.php и router.php и model.php в одноименной папке test в компонентах

Результат: при переходе на шттп://сайт.ру/test выводится компонент и содержание файла com_test.tpl

------------
Прошу в вику не отправлять, только оттуда пришел.

А кто знает прошу подсказать.
Дополнения для InstantCMS
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 683
kreator, вот то что нужно в components/test:
frontend.php
Код PHP:
  1. <?php
  2. if(!defined('VALID_CMS')) { die('ACCESS DENIED'); }
  3. \\понадобиться, тоже вписал
  4. $inCore = cmsCore::getInstance();
  5. $inConf = cmsConfig::getInstance();
  6. $inDB = cmsDatabase::getInstance();
  7. $do = $inCore->request('do', 'str', 'view');
  8.  
  9. if ($do=='view'){
  10. $smarty = $inCore->initSmarty('components', 'com_test.tpl');
  11. $smarty->display('com_test.tpl');
  12. }
  13. ?>
router.php
Код PHP:
  1. <?php
  2. function routes_test(){
  3.  
  4. $routes[] = array(
  5. '_uri' => '/^test\/index.html$/i',
  6. 'do' => 'view'
  7. );
  8.  
  9. return $routes;
  10. }
  11. ?>
Редактировалось: 1 раз (Последний: 23 апреля 2012 в 20:18)
Реклама
cms
Модератор
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 964
WALTERZ, не в обиду, не смог пройти мимо )
Файл выдаст ошибку. Комментарии нужно так "//". Это первое. Второе в файле frontend.php данный код нужно заключить в функцию с названием компонента, так:
Код PHP:
  1.  
  2. if(!defined('VALID_CMS')) { die('ACCESS DENIED'); }
  3. function test(){
  4. $smarty = $inCore->initSmarty('components', 'com_test.tpl');
  5. $smarty->display('com_test.tpl');
  6. }
  7.  
Если хотите, чтобы компонент был доступен только по адресу шттп://ваш_сайт.ру/test , то файл router.php вообще не нужен. В последнем точно не уверен. Надо проверить.
kreator:
Прошу в вику не отправлять, только оттуда пришел.
А вот это зря. По-моему, там всё подробно было описано и понятно.
Хватит париться, живи как нравится!
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1868
А как в данном файле шаблона заставить работать следующий код:
Код PHP:
  1.  
  2. <script type="text/javascript" src="http://api-maps.yandex.ru/2.0/?coordorder=longlat&load=package.full&wizard=constructor&lang=ru-RU"></script>
  3.  
  4. <script type="text/javascript">ymaps.ready(function() {var map = new ymaps.Map("ymaps-map-container", {center: [47.248374999999996, 56.13980199999326], zoom: 12, type: "yandex#map"}, {geoObjectHint: false});map.controls.add("zoomControl").add("mapTools").add(new ymaps.control.TypeSelector(["yandex#map", "yandex#satellite", "yandex#hybrid", "yandex#publicMap"]));});</script>
  5. <div id="ymaps-map-container" style="width: 450px; height: 350px;"></div>
  6. <div style="width: 450px; text-align: right;"><a href="http://api.yandex.ru/maps/tools/constructor/?lang=ru-RU" target="_blank" style="color: #1A3DC1; font: 13px Arial,Helvetica,sans-serif;">Создано с помощью инструментов Яндекс.Карт</a></div>
И хотелось бы услышать комментарий, почему и на что ругается если вставить этот код в темплейт?
Иль как это можно осуществить такой вывод?
Дополнения для InstantCMS
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 683
Марат, Какие обиды :)
Да я сплю сижу, извиняюсь за такие ошибки.
kreator, гораздо проще приинклюдить файлом.
Модератор
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 964
kreator, попробуйте завести в {literal}
Код PHP:
  1.  
  2. <script type="text/javascript" src="http://api-maps.yandex.ru/2.0/?coordorder=longlat&load=package.full&wizard=constructor&lang=ru-RU"></script>
  3.  
  4. {literal}
  5. <script type="text/javascript">ymaps.ready(function() {var map = new ymaps.Map("ymaps-map-container", {center: [47.248374999999996, 56.13980199999326], zoom: 12, type: "yandex#map"}, {geoObjectHint: false});map.controls.add("zoomControl").add("mapTools").add(new ymaps.control.TypeSelector(["yandex#map", "yandex#satellite", "yandex#hybrid", "yandex#publicMap"]));});</script>
  6. {/literal}
  7. <div id="ymaps-map-container" style="width: 450px; height: 350px;"></div>
  8. <div style="width: 450px; text-align: right;"><a href="http://api.yandex.ru/maps/tools/constructor/?lang=ru-RU" target="_blank" style="color: #1A3DC1; font: 13px Arial,Helvetica,sans-serif;">Создано с помощью инструментов Яндекс.Карт</a></div>
  9.  
Хватит париться, живи как нравится!
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1868
Заработало. То что надо. Плюсую обоим.

{literal} - это команды шаблонизатора смарти?
Дополнения для InstantCMS
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.