Подключение дополнительных стилей и js

Тема в разделе "Внешний вид, шаблоны, графика", создана пользователем lesnikoff, 02.04.2009.

  1. Offline

    lesnikoff Недавно здесь

    Регистрация:
    02.04.2009
    Сообщения:
    13
    Симпатии:
    0
    Такая вот проблемка - есть 4 отдельных страницы (аудио, видео, изображения, слайдшоу) которые требуют подключения дополнительных *.js и стилей.. Можно ли как-нибудь сделать, что бы эти стили и скрипты загружались только на этих страницах.. а не прописывать их все в шаблоне (а-то увесисто уж очень получается). :)
    P.s. Заранее спасибо! Версия joomla - 1.5
    P.p.s. Единственное, что пока пришло на ум - использование разных шаблонов (точнее разных шапок - а остальные параметры устанавливать как в оригинальном шаблоне). но может есть способ по-проще? :D
     
  2.  
  3. Offline

    _voland_ Местный => Cпециалист <=

    Регистрация:
    12.04.2008
    Сообщения:
    2 171
    Симпатии:
    102
    Пол:
    Мужской
    можно модуль опубликовать и из него подключать
     
  4. Fanamura
    Offline

    Fanamura Доброта

    Регистрация:
    12.03.2007
    Сообщения:
    5 094
    Симпатии:
    158
    Пол:
    Мужской
    lesnikoff, GET параметры слушаем, попадаем на страницу с нужным id статьи, выводим скрипт. Есть в FAQ пример для 1.0 как определить главную страницу, думаю, что особой разницы не будет, основной принцип там написан
     
  5. Offline

    lesnikoff Недавно здесь

    Регистрация:
    02.04.2009
    Сообщения:
    13
    Симпатии:
    0
    А можно немного по-подробнее? :[ Как я понял эта тема: Как определить главную страницу? - но там ответа как такового нет.. :)
     
  6. Fanamura
    Offline

    Fanamura Доброта

    Регистрация:
    12.03.2007
    Сообщения:
    5 094
    Симпатии:
    158
    Пол:
    Мужской
    lesnikoff, я об этом: http://www.joomla-docs.ru/Фишки_шаблонов_Joomla
    Код (CODE):
    1. if ($option=='com_content' && $task=='view') {
    2.  
    3.     echo "Пользователь смотрит статью с идентификатором, равным $id";
    4. }

    $option=='com_content' && $task=='view' - это заменяем на свое, к примеру:
    Код (CODE):
    1. if ($itemid=='16') //идентификатор статьи {
    2.  
    3.     echo "подключаем JS";
    4. }
     
  7. Offline

    lesnikoff Недавно здесь

    Регистрация:
    02.04.2009
    Сообщения:
    13
    Симпатии:
    0
    ОГРОМНОЕ СПАСИБО! [!]
    P.s. Еще один маленький вопрос - а через какой параметр можно указать вывод скриптов по определенным линкам - "***.ru/info/", "***.ru/audio/" и т.д. (если например, на сайте стоит компонет JoomSEF).. В его настройках id скрыты, и страницы идентифицироваться не хотят.. :[
     
  8. Fanamura
    Offline

    Fanamura Доброта

    Регистрация:
    12.03.2007
    Сообщения:
    5 094
    Симпатии:
    158
    Пол:
    Мужской
    lesnikoff, просто на время SEF отключите и смотрите идентификаторы, составьте код, затем все включайте. Работать будет.
     
  9. Offline

    lesnikoff Недавно здесь

    Регистрация:
    02.04.2009
    Сообщения:
    13
    Симпатии:
    0
    Не хочет что-то.. :( ItemId - смотрел уже и через админку, и через выключенный Sef.
    Код (CODE):
    1. index.php?option=com_content&view=article&id=9&Itemid=97



    Пробовал и так:

    Код (CODE):
    1. <?php if ($itemid=='97') { ?>
    2. <link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template1.css" type="text/css" />
    3. <script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/time1.js"></script>
    4. <?php } else { ?>
    5. <link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template2.css" type="text/css" />
    6. <script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/time2.js"></script>
    7. <?php } ?>


    Код (CODE):
    1. <?php if ($id='9' && $itemid=='97') { ?>
    2. <link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template1.css" type="text/css" />
    3. <script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/time1.js"></script>
    4. <?php } else { ?>
    5. <link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template2.css" type="text/css" />
    6. <script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/time2.js"></script>
    7. <?php } ?>

    :hunter:
     
  10. Fanamura
    Offline

    Fanamura Доброта

    Регистрация:
    12.03.2007
    Сообщения:
    5 094
    Симпатии:
    158
    Пол:
    Мужской
    lesnikoff, а разве не через echo надо все это дело подключать? Поправьте плиз, кто хорошо php знает
     
  11. Offline

    lesnikoff Недавно здесь

    Регистрация:
    02.04.2009
    Сообщения:
    13
    Симпатии:
    0
    Ну, так в примерах было указано.. ?:\

    Так тоже не хочет:
    Код (CODE):
    1. <?php
    2. if ($itemid=='97'){
    3. echo '<script language="javascript" type="text/javascript" src="****.ru/js/time.js"></script>'; }
    4.  ?>

    Хотя, в коде все получается правильно, ведь через this выводится все нормально:
    Код (CODE):
    1. <?php
    2. if ($this){
    3. echo '<script language="javascript" type="text/javascript" src="****.ru/js/time.js"></script>'; }
    4.  ?>

    :(
     
    Последнее редактирование: 04.04.2009
  12. Offline

    lesnikoff Недавно здесь

    Регистрация:
    02.04.2009
    Сообщения:
    13
    Симпатии:
    0
    Елки-палки! :D Сделал - все гениальное просто!
    Сегодня весь день сидел над скриптом и так извращался и так.. Даже все параметры в значении выводил:
    Код (CODE):
    1. $option=='com_content' && $view=='article' && $id='9' && $Itemid='97'
    И в head.php пытался прописать.
     
    Последнее редактирование: 07.04.2009

Поделиться этой страницей

Загрузка...