Новый шаблон для CinemaPress - «bastard»

Статус
В этой теме нельзя размещать новые ответы.
Енот
Новичо́к, через «о́»
Заблокирован
Регистрация
15 Янв 2020
Сообщения
110
#1
Как установить шаблон «bastard»?

  1. Скачать архив CPBastard
  2. Распаковать на сервер в папку themes
  3. Изменить название темы в админ-панели
screenshot2.png
«Bastard» ведет свое начало от оригинальных шаблонов CinemaPress «tormund» и «snow»

Что нового в шаблоне?

  • Шаблон адаптирован к любым устройствам - от небольших сматрфонов 320px до экранов FullHD 1920px.
  • Встроен новый слайдер flickity. Из его плюсов: малый вес (61Кб), написан на чистом javascript, легко настраивать, а главное, у него отличная реализация кинетической прокрутки на мобильных устройствах.
  • Добавлены скрипты фильтра и бесконечной ленты из шаблона «snow».
  • Встроены скрипты для отображения фотографий и интересных фактов о персоналиях.
1615548350874.png
1615548612955.png
Демо-сайт: https://bastard.bitmovie.ru

База персоналий в шаблон не входит. Но в следующем посте я напишу как это можно реализовать.

Дисклеймер:
Это неофициальный шаблон, без каких-либо гарантий, но возможной поддержкой в этом топике. Распространяется бесплатно из уважения к разработчикам оригинальных шаблонов.


Для связи с автором используйте телеграм @projectionist или личные сообщения на форуме.
 
Последнее редактирование:
Енот
Новичо́к, через «о́»
Регистрация
13 Янв 2018
Сообщения
427
#2
Что в snow, что в этом один минус нет прокрутки при выборе например жанров в фильтре, список раскрывается на весь экран
 
Енот
Новичо́к, через «о́»
Регистрация
13 Янв 2018
Сообщения
427
#4
Может расскажете как реализовать такое на других шаблонах?)
 
Енот
Новичо́к, через «о́»
Заблокирован
Регистрация
15 Янв 2020
Сообщения
110
#5
Встроить фото и биографии актеров можно в любой шаблон.
Для этого потребуется:
  • Установить вывод фотографий в любом месте где хотите видеть на странице movie.ejs
HTML:
<% if (movie.actors_arr.length>0) { %>
    <h4 style="text-align:center;margin-bottom:20px">В ролях: </h4>
    <div class="box-grid">     
        <% movie.actors_arr.forEach(function (person) { %>
            <div class="box-flex">
                <a href="/actor/<%- person %>">
                    <img class="box-img lazy" src="\files/cast/pic/<%- person %>.jpg" onError="this.src='/themes/<%- page.theme %>/public/images/no_actor.jpg'">
                </a>
                <h5 class="box-caption"><a href="/actor/<%- person %>"> <%- person %> </a></h5>
            </div>
        <% }); %>         
    </div>
<% } %>
  • Установить скрипт вывода биографии на странице category.ejs
HTML:
<% actor_tag = 'Все фильмы и сериалы с участием';
if ((page.h1.indexOf(actor_tag)>-1) && (page.h1.indexOf('отсортировано')<=0)) { %>
    <img class="personPhoto" style="margin-left:30px" src="\files/cast/pic/<%- page.h1.slice(actor_tag.length+1) %>.jpg" onError="this.src='/themes/<%- page.theme %>/public/images/no_actor.jpg'">

<script>
var request = new XMLHttpRequest();
request.open('GET', '/files/cast/json/<%- page.h1.slice(actor_tag.length+1) %>.json', true);
request.onload = function() {
  if (this.status >= 200 && this.status < 400) {
    var userData = JSON.parse(this.response);
        if (userData.birthday != null) {
            document.getElementById("birthday").innerHTML = "Дата рождения: " + userData.birthday;
        }
        if (userData.death != null) {
            document.getElementById("death").innerHTML = "Дата смерти: " + userData.death;
        }
        if (userData.birthplace != null) {
            document.getElementById("birthplace").innerHTML = "Место рождения: " + userData.birthplace;
        }
        if (userData.facts) {
            var facts = userData.facts + '';
            document.getElementById("facts").innerHTML = facts.split(".,").join(".<br>");
        }
        if (facts.length <1) {
            document.getElementById("facts").style.height = "30px";
        }

  } else {
        document.getElementById("blank").style.height = "130px";
    }
};
request.send();
</script>

<div id="birthday" style="margin-top:10px"></div>
<div id="death" style="margin-top:10px"></div>
<div id="birthplace" style="margin-top:10px"></div>
<div id="facts" style="margin-top:10px;line-height:1.5; text-align:justify"></div>
<div id="blank" style="height:30px"></div>

<% } %>
  • Скопировать в /files/cast базу актеров (фото + json с описанием).
Можно парсить самостоятельно, относительно бесплатно (только расходы на мобильные прокси с динамическим IP ~ 800р месяц) через ZennoPoster, Selenium или PHP/Python
Воспользоватся сервисами с готовыми API, есть как платные (актуальные), так и бесплатные (редко обновляются) Вот например:
https://api.kinopoisk.dev
https://kinopoiskdev.docs.apiary.io
https://kinopoisk.cloud
Можно также приобрести готовую базу и просто распаковать на сервер.
Когда на самостоятельный парсинг нет времени/желания - обращайтесь в лс или телеграм @projectionist
В паблик база выложена не будет. Но если разработчикам CinemaPress понадобится, для них могу предоставить бесплатно. Это 6 Гб данных, более 250 000 персоналий, свежесть март 2021 г.
 
Последнее редактирование:
Енот
Новичо́к, через «о́»
Заблокирован
Регистрация
15 Янв 2020
Сообщения
110
#6
Что в snow, что в этом один минус нет прокрутки при выборе например жанров в фильтре, список раскрывается на весь экран
Вертикальная полоса прокрутки для списка добавляется всего двумя свойствами CSS:
CSS:
max-height: 300px;
overflow-y: scroll;
1615553785527.png
 
Енот
Новичо́к, через «о́»
Регистрация
9 Май 2020
Сообщения
601
#7
Как установить шаблон «bastard»?

  1. Скачать архив CPBastard
  2. Распаковать на сервер в папку themes
  3. Изменить название темы в админ-панели
Посмотреть вложение 5607
«Bastard» ведет свое начало от оригинальных шаблонов CinemaPress «tormund» и «snow»

Что нового в шаблоне?

  • Шаблон адаптирован к любым устройствам - от небольших сматрфонов 320px до экранов FullHD 1920px.
  • Встроен новый слайдер flickity. Из его плюсов: малый вес (61Кб), написан на чистом javascript, легко настраивать, а главное, у него отличная реализация кинетической прокрутки на мобильных устройствах.
  • Добавлены скрипты фильтра и бесконечной ленты из шаблона «snow».
  • Встроены скрипты для отображения фотографий и интересных фактов о персоналиях.
Посмотреть вложение 5608
Посмотреть вложение 5609
Демо-сайт: https://bastard.bitmovie.ru

База персоналий в шаблон не входит. Но в следующем посте я напишу как это можно реализовать.

Дисклеймер: это неофициальный шаблон, без каких либо гарантий.
Распространяется бесплатно из уважения к разработчикам оригинальных шаблонов.


Для связи с автором используйте телеграм @projectionist или личные сообщения на форуме.
Чё то всё к игре престолов разработчиков тянет:)) ном так то оригинальный шаблончеГ будэмо тэстить Спасибо
 
Енот
Новичо́к, через «о́»
Регистрация
17 Ноя 2019
Сообщения
170
#8
Вертикальная полоса прокрутки для списка добавляется всего двумя свойствами CSS:
CSS:
max-height: 300px;
overflow-y: scroll;
overflow-y: scroll; будет всегда добавлять полосу прокрутки, даже когда она не нужна ( например в полях "фильмы" и "сортировка" ).
В данном случае лучше использовать overflow: auto;
 
Енот
Новичо́к, через «о́»
Заблокирован
Регистрация
15 Янв 2020
Сообщения
110
#9
overflow-y: scroll; будет всегда добавлять полосу прокрутки, даже когда она не нужна ( например в полях "фильмы" и "сортировка" ).
В данном случае лучше использовать overflow: auto;
Да точно, спасибо.
И высоту немного увеличить, вот так идеально:
Код:
max-height: 350px;
overflow-y: auto;
Заменил на демо-сайте https://bastard.bitmovie.ru
 
Последнее редактирование:
Енот
Новичо́к, через «о́»
Заблокирован
Регистрация
15 Янв 2020
Сообщения
110
#12
@Forgotten, а как оставить переход по страницам ?
Уберите скрипт бесконечной ленты из файла categories.ejs
1. Удалить это
HTML:
                                        <a class="button_snow pagination__next" href="<%- page.pagination.next[0].link %>">
                                            <span><%- page.pagination.next[0].number %></span>
                                        </a>
2. Заменить это (все)
HTML:
                        <script src="/themes/<%- page.theme %>/public/js/infinite-scroll.pkgd.min.js"></script>
                        <script>
                            if (typeof next_url !== 'undefined') {
                                let elem = document.querySelector('.filter-results');
                                let infScroll = new InfiniteScroll( elem, {
                                    path: function() {
                                        if (this.loadCount < 2) this.loadCount = 2;
                                        next_url = next_url.replace(/\/[0-9]*($|\?)/i, '/' + this.loadCount + '$1');
                                        document.querySelector('.pagination__next').setAttribute('href', next_url);
                                        document.querySelector('.pagination__next span').innerHTML = '<div class="loader"></div>';
                                        return next_url;
                                    },
                                    append: '.mb-lg',
                                    history: true
                                });
                                infScroll.on('last', function() {
                                    document.getElementById('cinemapress-scroll').style.display = 'none';
                                });
                            } else {
                                document.getElementById('cinemapress-scroll').style.display = 'none';
                            }
                        </script>
На это: <%- include('includes/pagination.ejs'); -%>

3. Поставить лайк.
 
Думает, что помогает
Регистрация
15 Дек 2017
Сообщения
5,031
#13
Хорошее решение в шаблоне с фото актеров!

Попробовать сделать, чтобы оно имело не только визуальную функцию, но и функциональную.
Открыв индексацию актеров, чтобы этот текст входил в индексацию, использовать его в EJS.
Для этого JSON должны находится в папке шаблона (/views/director/Тим Бертон.json):
https://enota.club/threads/vozmozhn...boj-stranicy-na-sajte-otdelno-ot-drugix.1588/

Фото актеров загружать лучше в папку /files/poster/people/Тим Бертон.jpg и они будут в бэкапе статических файлов, а не в ежедневном бэкапе.

По поводу базы актеров, то сейчас запущена команда получения 3 млн актеров на 10 языках, когда/если завершится, будет новая тема на форуме.

https://demo.cinemapress.io/files/poster/people/Tim Burton.jpg
https://demo.cinemapress.io/files/poster/people/Тим Бертон.jpg
https://demo.cinemapress.io/files/poster/people/टिम बर्टन.jpg

Хотя с таким числом файлов, неизвестно какой мощности нужен будет сервер.
 
Новичо́к, через «о́»
Регистрация
28 Янв 2021
Сообщения
24
#14
@Alisa, подскажите пожалуйста как отключить полностью Мультипоиск с главной страницы
 
Енот
Новичо́к, через «о́»
Регистрация
26 Авг 2018
Сообщения
354
#16
@Alisa, подскажите пожалуйста как отключить полностью Мультипоиск с главной страницы
Просто закомментируй или удали код фильтра на главной странице в файле index.ejs
Код хорошо прокомментирован
 
Последнее редактирование:
Енот
Новичо́к, через «о́»
Регистрация
10 Янв 2018
Сообщения
104
#18
Как установить шаблон «bastard»?

  1. Скачать архив CPBastard
  2. Распаковать на сервер в папку themes
  3. Изменить название темы в админ-панели
Посмотреть вложение 5607
«Bastard» ведет свое начало от оригинальных шаблонов CinemaPress «tormund» и «snow»

Что нового в шаблоне?

  • Шаблон адаптирован к любым устройствам - от небольших сматрфонов 320px до экранов FullHD 1920px.
  • Встроен новый слайдер flickity. Из его плюсов: малый вес (61Кб), написан на чистом javascript, легко настраивать, а главное, у него отличная реализация кинетической прокрутки на мобильных устройствах.
  • Добавлены скрипты фильтра и бесконечной ленты из шаблона «snow».
  • Встроены скрипты для отображения фотографий и интересных фактов о персоналиях.

База персоналий в шаблон не входит. Но в следующем посте я напишу как это можно реализовать.

Дисклеймер:
Это неофициальный шаблон, без каких-либо гарантий, но возможной поддержкой в этом топике. Распространяется бесплатно из уважения к разработчикам оригинальных шаблонов.


Для связи с автором используйте телеграм @projectionist или личные сообщения на форуме.
После оплаты базы актеров продавец перестал отвечать. Не рекомендую обращаться к нему!
 
Енот
Новичо́к, через «о́»
Регистрация
10 Янв 2018
Сообщения
104
#19
Как установить шаблон «bastard»?

  1. Скачать архив CPBastard
  2. Распаковать на сервер в папку themes
  3. Изменить название темы в админ-панели
Посмотреть вложение 5607
«Bastard» ведет свое начало от оригинальных шаблонов CinemaPress «tormund» и «snow»

Что нового в шаблоне?

  • Шаблон адаптирован к любым устройствам - от небольших сматрфонов 320px до экранов FullHD 1920px.
  • Встроен новый слайдер flickity. Из его плюсов: малый вес (61Кб), написан на чистом javascript, легко настраивать, а главное, у него отличная реализация кинетической прокрутки на мобильных устройствах.
  • Добавлены скрипты фильтра и бесконечной ленты из шаблона «snow».
  • Встроены скрипты для отображения фотографий и интересных фактов о персоналиях.

База персоналий в шаблон не входит. Но в следующем посте я напишу как это можно реализовать.

Дисклеймер:
Это неофициальный шаблон, без каких-либо гарантий, но возможной поддержкой в этом топике. Распространяется бесплатно из уважения к разработчикам оригинальных шаблонов.


Для связи с автором используйте телеграм @projectionist или личные сообщения на форуме.
Дисклеймер:
Это неофициальный шаблон, без каких-либо гарантий - хотя это моя ошибка... Гарантий продавец не давал
 
Статус
В этой теме нельзя размещать новые ответы.