Виджет Fivestar

Главные вкладки

Аватар пользователя y-vo y-vo 17 ноября 2019 в 20:21

Приветствую. Возникла необходимость сделать кастомный виджет для данного модуля. Создал модуль, назвал, создал инфо файл, создал файл модуля, имплементировал hook_fivestar_widgets(), туда же сложил изображения для него и и css файлы. На локалке все работает, однако если заливаю его на хостинг, то в админке сам виджет друпал видит и выводит там его пример корректно, а вот на странице материала изображения уже не видны, подгружаются те что по умолчанию. Уже и перезаливал и права проверял и кеш чистил, в чем может быть проблема, может кто то знает?

Лучший ответ

Аватар пользователя y-vo y-vo 21 ноября 2019 в 22:02

Причина оказалась в том что админка и мэйн тема сайта это разные темы, для того чтобы все отображалось надо css модуля продублировать в css основной темы. Скорее всего это было написано в туториалах модуля, но я пропустил.

Комментарии

Аватар пользователя y-vo y-vo 17 ноября 2019 в 21:07

Ну в логах сервера, если я о тех думаю ничего необычного, в браузере там ничего мне кажется не будет писать, это мне кажется модулем регулируется, потому что он дефолтный виджет подгружает, хотя выбран мой. А вот в логах друпала не знаю, где их искать?

Аватар пользователя y-vo y-vo 18 ноября 2019 в 19:50

Изображение почему то подгружает дефолтное. Очень странно, как это работает вообще? Почему он так же тогда не делает в админке, там все отображается как должно. Да и на локалке все работает корректно. Может у кого то есть мысли что еще посмотреть? Уже где только не копался мне кажется.

Заметил что на локалке он подключает класс виджета и класс модуля, а на проекте только класс модуля.
Вот так это выглядит на локалке

А вот так уже на проекте

При этом он есть в админке и доступен для подключения, там все корректно отображается.

Аватар пользователя y-vo y-vo 20 ноября 2019 в 20:13

Проверил на другом сайте, там тоже виджет отображается только в админке. При этом на локалке все работает отлично. Не понимаю с чем подобное может быть связано.

Аватар пользователя y-vo y-vo 20 ноября 2019 в 21:29

В принципе много где описывается эта проблема, тут в частности. https://www.drupal.org/node/1430016
Вот тут насколько я понимаю решили этот вопрос, но я не совсем понимаю в чем состоит решение. https://drupal.stackexchange.com/questions/168249/custom-fivestar-widget...

Аватар пользователя y-vo y-vo 21 ноября 2019 в 21:39

Попробовал использовать то что там написано так:

<?phpfunction fivestar_widget_fivestar_widgets() {
    $widget_dir = drupal_get_path('module', 'fivestar_widget');
    $files = file_scan_directory($widget_dir, '/\.css$/');
    $css_path = '';

    foreach ($files as $file) {
        if (strpos($file->filename, '-rtl.css') === FALSE) {
            $css_path = $file->uri;
        }
    }
    $widgets = array(
        $css_path => 'Squares',
    );
    return $widgets;

}?>

Но ничего не изменилось - в админке отображается, на сайте нет. Нет специалистов в этой теме на месте?)

Аватар пользователя y-vo y-vo 21 ноября 2019 в 22:02

Причина оказалась в том что админка и мэйн тема сайта это разные темы, для того чтобы все отображалось надо css модуля продублировать в css основной темы. Скорее всего это было написано в туториалах модуля, но я пропустил.