Темизация Drupal урок 6 Темизация Views slideshow и jcarousel

В этом видео я буду темизировать  Views slideshow, я переопределю несколько шаблонов и подключу плагин jcarousel для темизации пейджера слайдшоу.

Используемые модули

Views slideshow - http://drupal.org/project/views_slideshow

Плагины:

jQuery jCarousel - http://sorgalla.com/projects/jcarousel/

Код для работы jcarousel:

(function ($, Drupal, window, document, undefined) {


  $(document).ready(function(){
    $('#widget_pager_bottom_portfolio_slideshow-block').jcarousel();
  });


})(jQuery, Drupal, this, this.document);

 

 

Комментарии

Добавить комментарий

Войти, используя Loginza Google Account Yandex Mail.ru Vkontakte Facebook

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.

Добрый день! Очень нужна ваша

Добрый день! Очень нужна ваша помощь ! 

На главной странице сайта есть слайдшоу созданное через views_slideshow.

На странице портфолио создаю еще слайдшоу для выполненных работ, и прикручиваю jcarousel.

Для jcarousel изменяю файл views-slideshow-pager-fields.tpl (как у вас в видеоуроке) и вывод списка меняется везде на сайте (в том числе на слайдшоу на гавной странице)

Как сделать чтобы список менялся только на странице портфолио? 

 Зарание спасибо!

Здравствуйте, в шаблоне

Здравствуйте,

в шаблоне views-slideshow-pager-fields.tpl нужно сделать проверку нужного вам view, распечатайте переменную dsm($view), посмотрите какой там выводится $view->name и по нужному $view->name сделайте проверку:

<?php
switch ($view->name){
  case 'slideshow':
?>
  здесь шаблон для slideshow
<?php
  break;
  default:
?>
  здесь стандартный шаблон
<?php

}

Здравствуйте Иван, Спасибо

Здравствуйте Иван, Спасибо большое за вашу работу, следуя вашим урокам удалось немного разобратьься в Drupal. Не подскажите как сделать слайдер, чтобы в нём выводилось несколько типов материалов  с полями 'body' и 'image'. Три картинки и три боди каждая ведущая на свою ноду.   

Здравствуйте, если вы

Здравствуйте, если вы выводите через Views slideshow, то в настройках вывода есть параметр Items per slide, вам нужно поставить 3, тогда вы сможете выводить три ноды на слайде.

Доброе времья суток

Доброе времья суток Иван.

спасибо за ваши уроки,очень понятно и доступно.

у меня к вам варос по поводу функции views_get_view()

у мея почемуто не выводится вюс через эту функци хотя вюс

работает нормально.

вы немогли бы подскозать в чем модет быть вричина?

за рабнние спасибо.

Возможно дело в том, что

Возможно дело в том, что нужно еще передавать аргументы в функцию views_get_view():

 

When theming Drupal and wanting to output a view there are occasions where using a view display (e.g. a page, or a block - perhaps placed within a custom region ;-) ), or using Views Attach will not suffice.

Instead, you can embed a view using the following PHP snippet:
(NOTE: you'll need to have the core PHP input filter enabled if embedding in a node body)

  1. <?php
  2. $view =views_get_view('VIEWNAME');
  3. print$view->preview('default');
  4. ?>

or, if you need to use an argument with the view:

  1. <?php
  2. $args = array(ARGUMENTS);
  3. $view =views_get_view('VIEWNAME');
  4. print$view->preview('default',$args);
  5. ?>

NOTE:

  • replace VIEWNAME with your actual view name - e.g. 'my_drupal_posts'
  • replace ARGUMENTS with the argument(s) your view is expecting - e.g. this may be a node id

The PHP snippets above will output your view's 'default' display. However, you can output other displays from your view (if your view has multiple displays) - e.g. to output a view's first block display you'd modify the snippet by replacing the Views display id 'default' with 'block_1' and use:

  1. <?php
  2. $args = array(ARGUMENTS);
  3. $view =views_get_view('VIEWNAME');
  4. print$view->preview('block_1',$args);
  5. ?>

Здравствуйте, Иван.   Два

Здравствуйте, Иван.

 

Два раза пересмотрел это видео, пытаясь заставить карусель работать, уже с десяток раз всё проверил, но карусель упорно отказывается что-то делать, никаких новых классов она не добавляет и вообще 0 реакции.. чувствую себя дебилом :) Может, вы знаете, почему она может не работать?

 

Вот так всегда, стоит только написать о проблеме, как она решается :) Полностью заменил script.js вашим, и всё заработало. Этот файл у меня отличался от вашего, но сам код вызова был одинаковый.

Добрый день, Иван! Спасибо за

Добрый день, Иван! Спасибо за уроки очень помогают в освоении drupal. У меня возникла проблема описаная выше. Не меняються классы хоть убей. Перепробывал все и частичное изменение и полную замену на код указынный в уроке и ничего. помогите пожалуйста.

Полный код что я использую в script.js:

(function ($, Drupal, window, document, undefined) {

Drupal.behaviors.my_custom_behavior = {

  attach: function(context, settings) {

    $(document).ready(function(){

$('#widget_pager_bottom_global_product-block').jcarousel();

});

  }

};

})(jQuery, Drupal, this, this.document);