FAQ по работе с плагином «Main Preview»
Больше всего вопросов при использовании моих шаблонов возникает по поводу работы плагина «Main Preview». Ниже — небольшой FAQ по плагину.
Первое что следует уяснить: созданием превью занимается не шаблон, а плагин. В шаблоне лишь указывается какого размера превью выводить, если плагин не создал превью такого размера, шаблон ничего не выведет. Соответственно вся настройка вывода превьюшек сводится к указанию одинаковых размеров в плагине и шаблоне.
Но давайте пройдемся по наиболее частым вопросам и попробуем разобраться во всех тонкостях работы плагина.
В первую очередь, внимательно прочитайте ридми шаблона и выполните все, что там написано. Внимательно. Вплоть до копировал-вставил. Потому как первая причина — это нераскомментированные настройки плагина. Смотрим в конфиг:
В нем настройки ширины и высоты превью закомментированы и они просто не читаются (воспринимаются как комментарий, пояснение к коду). Какие бы размеры Вы не поставили, плагин просто ничего не сгенерирует. Все, что необходимо сделать, убрать /* и */ в этой части:
Далее, в настройках необходимо указать изображения какого размера Вам необходимы.
Что касается моих шаблонов, то чаще всего там речь идет о ширине превью в 700-750 пикселей. Такой размер выбран для того, чтобы превью выводились на всю ширину при переходе на мелкие экраны и выводе содержимого страницы в один столбец (телефоны). Загрузка больших изображений ведет к увеличению времени загрузки страницы, поэтому Вам необходимо решить для себя какие размеры будете использовать, что для Вас важнее — трафик или отображение. Соответственно, эти размеры и необходимо прописать в плагине и шаблоне.
Обратите внимание на то, до какого размера ужимаются изображения при загрузке их в топики. Данный параметр прописывается в конфиге сайта и, если он меньше, чем ширина превью заданная в плагине, то все логично, смотрите:
В конфиге сайта Вы указали:
А в конфиге плагина:
В итоге происходит следующее: изображение загружается в топик и ужимается до ширины в 500 пикселей, соответственно под условие плагина оно не подходит, т.к. плагин делает превьюшки только из изображений шире 750 пикселей. Поэтому после прописывания необходимых размеров в плагине «Main Preview», открываем конфиг сайта и проверяем, чтобы заданный там размер был не менее указанного.
Причина такая же, как и в пункте №2: ширина изображений для фотосета в конфиге сайта меньше ширины заданной в плагине. Находим в конфиге следующие строчки:
и проверяем, чтобы второе значение в списке размеров превью (500) было больше, чем ширина заданная в плагине «Main Preview».
Здесь опять же проблема пункта №2: к примеру, в конфиге сайта у Вас стояла ширина для загружаемых в топики изображений 500 пикселей, а в конфиге плагина Вы указываете 750. Естественно, что при генерации превью плагин не находит изображений удовлетворяющих его конфигу и ничего не генерирует.
Решения в данном случае вижу два:
1. Если на сайте много материалов и заливать превью вручную для каждого топика не вариант — ставим в конфиге плагина ширину такую же, как в конфиге шаблона и запускаем генерацию. Для топиков без изображений превьюшки заливаем вручную (если необходимо).
2. Если топиков на сайте немного и нужны превью большего размера, чем загруженные в топики, то для новых топиков в конфиге сайта меняем размер изображений, а для существующих — добавляем превью вручную.
Случается и такое, да. Происходит потому, что некоторые изображения не подходят под новые размеры. Для устранения проблемы необходимо либо перезалить вручную превью для таких топиков, либо попробовать указать в конфиге плагина меньшие размеры (если это допустимо).
Давайте разберем его более детально. Итак, конфиг:
Первая строчка отвечает за создание превьюшек для видео вставленного в топик. Работает не со всеми видеосервисами, на Ютуб тоже были жалобы. Оставим без изменений, но при создании топика обращаем внимание создалась или нет превьюшка, если нет — загружаем какое-нибудь изображение вручную.
Вторая строчка отвечает за автоматическое создание превью из первого изображения загруженного в топик. Все изображения топика плагин не перебирает, поэтому если первая картинка в тексте будет меньшего размера, чем указано в конфиге, превью не создастся, даже если следующая картинка в топике будет удовлетворять условиям конфига.
Далее, две следующие строчки:
Здесь тоже бывают ошибки — в настройках размеров превью указываются большие значения, чем здесь. В итоге, в топик загружено изображение 350х200, к примеру, а сделать из него превью размером 700х500 проблема. Поэтому, следим за тем чтобы ширина и высота требуемых превью была меньше либо равна значениям указанным в данных строчках.
Самое интересное, задаем какие превьюшки нам нужны:
Не забываем про удаление /* и */! :) В данной части конфига: 'w' — необходимая ширина превью, 'h' — необходимая высота, 'crop' — надо ли обрезать лишнее с изображения после ужимания одной из сторон до заданного размера.
Здесь, кроме банального изменения размеров 100х100 на какие-то свои, можно и другие варианты использовать. Например, прописать так:
И тогда высота Ваших превью не будет ограничена жесткими рамками и будет изменяться пропорционально исходным размерам. Если использовать шаблон с masonry, то можно в итоге получить что-нибудь в стиле www.pinterest.com.
Бывает, что некоторым шаблонам необходимы превью различных размеров, в таком случае конфиг можно переписать следующим образом:
В данном примере на выходе мы получим четыре изображения: исходное и три с размерами 750х500, 300х200 и 64х64. Но и место на сервере будет заканчиваться быстрее, поэтому такие моменты рекомендую продумывать тщательно и заранее.
На этом пока все. Возможно, я что-то забыл или упустил, вспомню — добавлю в топик, а вы задавайте вопросы, если что-то не ясно.
Топик — кросспост из моего блога.
Первое что следует уяснить: созданием превью занимается не шаблон, а плагин. В шаблоне лишь указывается какого размера превью выводить, если плагин не создал превью такого размера, шаблон ничего не выведет. Соответственно вся настройка вывода превьюшек сводится к указанию одинаковых размеров в плагине и шаблоне.
Но давайте пройдемся по наиболее частым вопросам и попробуем разобраться во всех тонкостях работы плагина.
1. У меня не выводятся превью, что делать?
В первую очередь, внимательно прочитайте ридми шаблона и выполните все, что там написано. Внимательно. Вплоть до копировал-вставил. Потому как первая причина — это нераскомментированные настройки плагина. Смотрим в конфиг:
/** * Список размеров превью топика * Обычно задается другим плагином или шаблоном */ $config['size_images_preview']=array( /* array( 'w' => 100, 'h' => 100, 'crop' => true, ) */ );
В нем настройки ширины и высоты превью закомментированы и они просто не читаются (воспринимаются как комментарий, пояснение к коду). Какие бы размеры Вы не поставили, плагин просто ничего не сгенерирует. Все, что необходимо сделать, убрать /* и */ в этой части:
/* array( 'w' => 100, 'h' => 100, 'crop' => true, ) */
Далее, в настройках необходимо указать изображения какого размера Вам необходимы.
Что касается моих шаблонов, то чаще всего там речь идет о ширине превью в 700-750 пикселей. Такой размер выбран для того, чтобы превью выводились на всю ширину при переходе на мелкие экраны и выводе содержимого страницы в один столбец (телефоны). Загрузка больших изображений ведет к увеличению времени загрузки страницы, поэтому Вам необходимо решить для себя какие размеры будете использовать, что для Вас важнее — трафик или отображение. Соответственно, эти размеры и необходимо прописать в плагине и шаблоне.
2. У меня не создаются автоматические превью, при загрузке изображения через форму все работает.
Обратите внимание на то, до какого размера ужимаются изображения при загрузке их в топики. Данный параметр прописывается в конфиге сайта и, если он меньше, чем ширина превью заданная в плагине, то все логично, смотрите:
В конфиге сайта Вы указали:
$config['view']['img_resize_width'] = 500; // до какого размера в пикселях ужимать картинку по ширине при загрузки её в топики и комменты
А в конфиге плагина:
$config['preview_minimal_size_width'] = 750; // Минимальная ширина превью, если изображение меньше, то на его основе превью создаваться не будет. Актуально только для автоматических превью
В итоге происходит следующее: изображение загружается в топик и ужимается до ширины в 500 пикселей, соответственно под условие плагина оно не подходит, т.к. плагин делает превьюшки только из изображений шире 750 пикселей. Поэтому после прописывания необходимых размеров в плагине «Main Preview», открываем конфиг сайта и проверяем, чтобы заданный там размер был не менее указанного.
3. Не создаётся превью при создании фотосета.
Причина такая же, как и в пункте №2: ширина изображений для фотосета в конфиге сайта меньше ширины заданной в плагине. Находим в конфиге следующие строчки:
/** * Настройка топика-фотосета */ $config['module']['image']['photoset']['jpg_quality'] = 100; // настройка модуля Image, качество обработки фото $config['module']['topic']['photoset']['photo_max_size'] = 6*1024; // максимально допустимый размер фото, Kb $config['module']['topic']['photoset']['count_photos_min'] = 2; // минимальное количество фоток $config['module']['topic']['photoset']['count_photos_max'] = 30; // максимальное количество фоток $config['module']['topic']['photoset']['per_page'] = 20; // число фоток для одновременной загрузки $config['module']['topic']['photoset']['size'] = array( // список размеров превью, которые необходимо делать при загрузке фото array( 'w' => 1000, 'h' => null, 'crop' => false, ), array( 'w' => 500, 'h' => null, 'crop' => false, ), array( 'w' => 100, 'h' => 65, 'crop' => true, ), array( 'w' => 50, 'h' => 50, 'crop' => true, ) );
и проверяем, чтобы второе значение в списке размеров превью (500) было больше, чем ширина заданная в плагине «Main Preview».
4. Я установил шаблон и плагин на существующий сайт, запустил генерацию превью, но они так и не появились.
Здесь опять же проблема пункта №2: к примеру, в конфиге сайта у Вас стояла ширина для загружаемых в топики изображений 500 пикселей, а в конфиге плагина Вы указываете 750. Естественно, что при генерации превью плагин не находит изображений удовлетворяющих его конфигу и ничего не генерирует.
Решения в данном случае вижу два:
1. Если на сайте много материалов и заливать превью вручную для каждого топика не вариант — ставим в конфиге плагина ширину такую же, как в конфиге шаблона и запускаем генерацию. Для топиков без изображений превьюшки заливаем вручную (если необходимо).
2. Если топиков на сайте немного и нужны превью большего размера, чем загруженные в топики, то для новых топиков в конфиге сайта меняем размер изображений, а для существующих — добавляем превью вручную.
5. При перегенерации превью к новым размерам некоторые из них выводятся размером выше или ниже остальных.
Случается и такое, да. Происходит потому, что некоторые изображения не подходят под новые размеры. Для устранения проблемы необходимо либо перезалить вручную превью для таких топиков, либо попробовать указать в конфиге плагина меньшие размеры (если это допустимо).
Ну и в заключение, несколько слов по конфигу плагина.
Давайте разберем его более детально. Итак, конфиг:
/** * Настройки */ $config['make_preview_video'] = true; // Создавать или нет автоматические превью топика на основе вставленного в текст видео $config['make_preview_image'] = true; // Создавать или нет автоматические превью топика на основе вставленного в текст изображения $config['preview_minimal_size_width'] = 300; // Минимальная ширина превью, если изображение меньше, то на его основе превью создаваться не будет. Актуально только для автоматических превью $config['preview_minimal_size_height'] = 150; // Минимальная высота превью, если изображение меньше, то на его основе превью создаваться не будет. Актуально только для автоматических превью /** * Список размеров превью топика * Обычно задается другим плагином или шаблоном */ $config['size_images_preview']=array( /* array( 'w' => 100, 'h' => 100, 'crop' => true, ) */ );
Первая строчка отвечает за создание превьюшек для видео вставленного в топик. Работает не со всеми видеосервисами, на Ютуб тоже были жалобы. Оставим без изменений, но при создании топика обращаем внимание создалась или нет превьюшка, если нет — загружаем какое-нибудь изображение вручную.
Вторая строчка отвечает за автоматическое создание превью из первого изображения загруженного в топик. Все изображения топика плагин не перебирает, поэтому если первая картинка в тексте будет меньшего размера, чем указано в конфиге, превью не создастся, даже если следующая картинка в топике будет удовлетворять условиям конфига.
Далее, две следующие строчки:
$config['preview_minimal_size_width'] = 300; // Минимальная ширина превью, если изображение меньше, то на его основе превью создаваться не будет. Актуально только для автоматических превью $config['preview_minimal_size_height'] = 150; // Минимальная высота превью, если изображение меньше, то на его основе превью создаваться не будет. Актуально только для автоматических превью
Здесь тоже бывают ошибки — в настройках размеров превью указываются большие значения, чем здесь. В итоге, в топик загружено изображение 350х200, к примеру, а сделать из него превью размером 700х500 проблема. Поэтому, следим за тем чтобы ширина и высота требуемых превью была меньше либо равна значениям указанным в данных строчках.
Самое интересное, задаем какие превьюшки нам нужны:
/** * Список размеров превью топика * Обычно задается другим плагином или шаблоном */ $config['size_images_preview']=array( /* array( 'w' => 100, 'h' => 100, 'crop' => true, ) */ );
Не забываем про удаление /* и */! :) В данной части конфига: 'w' — необходимая ширина превью, 'h' — необходимая высота, 'crop' — надо ли обрезать лишнее с изображения после ужимания одной из сторон до заданного размера.
Здесь, кроме банального изменения размеров 100х100 на какие-то свои, можно и другие варианты использовать. Например, прописать так:
/** * Список размеров превью топика * Обычно задается другим плагином или шаблоном */ $config['size_images_preview']=array( array( 'w' => 100, 'h' => null, 'crop' => false, ) );
И тогда высота Ваших превью не будет ограничена жесткими рамками и будет изменяться пропорционально исходным размерам. Если использовать шаблон с masonry, то можно в итоге получить что-нибудь в стиле www.pinterest.com.
Бывает, что некоторым шаблонам необходимы превью различных размеров, в таком случае конфиг можно переписать следующим образом:
/** * Список размеров превью топика * Обычно задается другим плагином или шаблоном */ $config['size_images_preview']=array( array( 'w' => 750, 'h' => 500, 'crop' => true, ), array( 'w' => 300, 'h' => 200, 'crop' => true, ), array( 'w' => 64, 'h' => 64, 'crop' => true, ) );
В данном примере на выходе мы получим четыре изображения: исходное и три с размерами 750х500, 300х200 и 64х64. Но и место на сервере будет заканчиваться быстрее, поэтому такие моменты рекомендую продумывать тщательно и заранее.
На этом пока все. Возможно, я что-то забыл или упустил, вспомню — добавлю в топик, а вы задавайте вопросы, если что-то не ясно.
Топик — кросспост из моего блога.
11 комментариев
Меню меняется в header_top.tpl, стили можно просто в стилевые файлы скопипастить или отдельным файлом подключить, скрипт в файле header.tpl в секцию head прописать. А дальше молоток, зубило, напильник и доводить до требуемого состояния.
Вы бы лучше в своем топике описали подробно что сделали, что у Вас получилось/не получилось, демку дали напосмотреть — глядишь и помощи больше было бы. Убивать вечер для того, чтобы разобраться со сторонним скриптом, прикрутить, вылизать и расписать «за пивко» вряд ли кому-то захочется, а так с миру по нитке — глядишь и сами докрутили бы, да и полезней для саморазвития было бы.
P.S. Большое спасибо за плагин и отличную работу!
А то вначале подумал, что глюк каталога какой-то.