Все для DataLife Engine / DLE хаки / Хак для DLE / Хаки для DLE Highslide удобный просмотр картинок

Хаки для DLE Highslide удобный просмотр картинок


Данный вариант хак dle поможет вам изменить стандартное от движка DataLife Engine окно просмотра большого количество в полной новости картинок, фото или изображений ещё известный, под названием Highslide.

Представляем вам вариант на https://dle9.com/ хак для Dle Highslide удобный и красивый способ просмотр картинок, который имеет возможность слева выбирать мини картинку или проходить на предыдущую новость обозначенная стрелками и русскими словами. Также фон полностью затемняется, что способствует более улучшенному переходу по необходимым фотографиям.

Хак для Dle Highslide


Установка Highslide удобный просмотр картинок

1. Вначале следует заменить файлы из архива highslide.js, и highslide.css файлы в папке на сервере "engine/classes/highslide"

2. В "index.php" находим :

<script type="text/javascript">  
<!--  
    hs.graphicsDir = '{$config['http_home_url']}engine/classes/highslide/graphics/';
    {$type}
    hs.numberOfImagesToPreload = 0;
    hs.showCredits = false;
    {$dimming}
    hs.lang = {
        loadingText :     '{$lang['loading']}',
        playTitle :       '{$lang['thumb_playtitle']}',
        pauseTitle:       '{$lang['thumb_pausetitle']}',
        previousTitle :   '{$lang['thumb_previoustitle']}',
        nextTitle :       '{$lang['thumb_nexttitle']}',
        moveTitle :       '{$lang['thumb_movetitle']}',
        closeTitle :      '{$lang['thumb_closetitle']}',
        fullExpandTitle : '{$lang['thumb_expandtitle']}',
        restoreTitle :    '{$lang['thumb_restore']}',
        focusTitle :      '{$lang['thumb_focustitle']}',
        loadingTitle :    '{$lang['thumb_cancel']}'
    };
    {$gallery}
//-->
</script>



Замените на:

<script type="text/javascript">  
<!--  
    hs.graphicsDir = '{$config['http_home_url']}engine/classes/highslide/graphics/';
    hs.align = 'center';
    hs.transitions = ['expand', 'crossfade'];
    hs.fadeInOut = true;
    hs.dimmingOpacity = 0.8;
    hs.wrapperClassName = 'borderless floating-caption';
    hs.captionEval = 'this.thumb.alt';
    hs.marginLeft = 100; // make room for the thumbstrip
    hs.marginBottom = 80 // make room for the controls and the floating caption
    hs.numberPosition = 'caption';
hs.lang = {
        cssDirection: 'ltr',
        loadingText: 'Загружается...',
        loadingTitle: 'Нажмите для отмены',
        focusTitle: 'Нажмите чтобы поместить на передний план',
        fullExpandTitle: 'Развернуть до оригинального размера',
        creditsText: 'Использует <i>Highslide JS</i>',
        creditsTitle: 'Перейти на домашнюю страницу Highslide JS',
        previousText: 'Предыдущее',
        nextText: 'Следующее',
        moveText: 'Переместить',
        closeText: 'Закрыть',
        closeTitle: 'Закрыть (esc)',
        resizeTitle: 'Изменить размер',
        playText: 'Слайдшоу',
        playTitle: 'Начать слайдшоу (пробел)',
        pauseText: 'Пауза',
        pauseTitle: 'Приостановить слайдшоу (пробел)',
        previousTitle: 'Предыдущее (стрелка влево)',
        nextTitle: 'Следующее (стрелка вправо)',
        moveTitle: 'Переместить',
        fullExpandText: 'Оригинальный размер',
        number: 'Изображение %1 из %2',
        restoreTitle: 'Нажмите чтобы закрыть изображение, нажмите и перетащите для изменения местоположения. Для просмотра изображений используйте стрелки.'
};
    {$gallery}
//-->
</script>


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

Далее найдите:

 $gallery = "
    hs.align = 'center';
    hs.transitions = ['expand', 'crossfade'];
    hs.addSlideshow({
        interval: 4000,
        repeat: false,
        useControls: true,
        fixedControls: 'fit',
        overlayOptions: {
            opacity: .75,
            position: 'bottom center',
            hideonmouseout: true
        }
    });";


Меняем на:

  $gallery = "
    // Add the slideshow providing the controlbar and the thumbstrip
    hs.addSlideshow({
        //slideshowGroup: 'group1',
        interval: 5000,
        repeat: false,
        useControls: true,
        overlayOptions: {
            className: 'text-controls',
            position: 'bottom center',
            relativeTo: 'viewport',
            offsetX: 50,
            offsetY: -5
        },
        thumbstrip: {
            position: 'middle left',
            mode: 'vertical',
            relativeTo: 'viewport'
        }
    });
    // Add the simple close button
    hs.registerOverlay({
        html: '<div class=\"closebutton\" onclick=\"return hs.close(this)\" title=\"Close\"></div>',
        position: 'top right',
        fade: 2 // fading the semi-transparent overlay looks bad in IE
    });";



Важно для работы на всех страницах:
Находим:

if ($config['thumb_gallery'] AND ($dle_module == "showfull" OR $dle_module == "static") ) {



Заменяем на:

if ($config['thumb_gallery'] AND ($dle_module == "showfull" OR $dle_module == "static") ) {



Найдите так же:

 } else {
        $gallery = "";
    }



Замените на:

   } else {
        $gallery = "";
    }



3. В главном файле шаблона "main.tpl" перед:

</head>


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

<link media="screen" href="/engine/classes/highslide/highslide.css" rel="stylesheet" />



4. В стилях шаблона вставьте, обычно это файл "templates/*/styles/style.css"

/* Center the text in the caption */
.highslide-caption {
    width: 100%;
    text-align: center;
}
/* Remove the close button from the controls since we already have one in the corner of the image */
.highslide-close {
    display: none !important;
}
/* Put the image number in front of the caption */
.highslide-number {
    display: inline;
    padding-right: 1em;
    color: white;
}


Все установка закончена, проверить можно в полной новости с большим количеством фотографий.

Автор: RedRat

Предлагаем ознакомится с Хаки для dle Highslide удобный просмотр картинок

highslide-DLE_9.x.zip [92,25 Kb] (cкачиваний: 380)
  • 40

Комментарии 10

dle9.com от 19 января 2020 05:44
Цитата: матвей
а на версию 13.2 есть ?

только этот вариант, в целом есть форумы с понимающими в js-скритах людьми, которые могли помочь исправить не работающие скрипты, к примеру форум CyberForum ru›dle/

Так скрипт рабочий, просто надо переделать некоторые функции под новую версию движка.
матвей от 16 января 2020 16:50
а на версию 13.2 есть ?
onlaintube_org от 23 декабря 2013 02:21
После того как поставил этот хак на старых новостях все работает нормально, а на новых залитых картинках скрипт не работает! Движок 10.1 Помогите пожалуйста чтоб все заработало!
vintoss от 29 мая 2013 14:07
Описание с ошибками админ
проверяйте у источника
irakli11 от 26 апреля 2013 18:52
дле 9.8 ошибка ...

Parse error: syntax error, unexpected T_STRING,
Toxan76 от 9 января 2013 16:51
Всё прописал, картинки все на месте но не показывает не кнопка "Закрыть" не нижние кнопки
Подскажите в чём причина?
dle9.com от 23 декабря 2012 23:49
GoldPromo,
вроде на скрине все есть,
 // Add the simple close button
    hs.registerOverlay({
        html: '<div class=\"closebutton\" onclick=\"return hs.close(this)\" title=\"Close\"></div>',
        position: 'top right',
        fade: 2 // fading the semi-transparent overlay looks bad in IE
    });";

вот код кнопки он В "index.php" в последней замене, а не в JS

надо смотреть здесь
GoldPromo от 23 декабря 2012 22:11
dle9, спасибо за скорый ответ. версия 9.3
Залил все картинки что есть в версии 9.7 - не помогло, т.к. они одинаковые с моими. А заказчик очень хочет эту кнопку... 3 часа ковыряю - ничего не нашел.
Может у Вас есть еще идеи?

P.S: я даже вытягивал .js и .css отсюда
Внимание! У Вас нет прав для просмотра скрытого текста.
- никакого толку...
dle9.com от 23 декабря 2012 21:49
GoldPromo,
Шутка автора наверное :winked: (но точно не ошибка при добавлении )
Версия движка у Вас какая подозрение, что у вас картинки кнопки нет такой в папке engine/classes/highslide/graphics можно попробовать добавить из версии выше 9.6-9.7
GoldPromo от 23 декабря 2012 21:31
Спасибо за хак, проблемка только одна:
Не выводится кнопка "Закрыть" - ее просто нет. Что делать?

Кстати Ваше обращение "Важно для работы на всех страницах:" это наверное шутка т.к. нужно найти текст и заменить на такой же?

С уважением!
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent