jQuery и плагины: решения для просмотра больших изображений

Владимир | | CSS, HTML, JavaScript, Web дизайн, Web разработка.

jquery img zoom

Приветствую всех!

В этот раз речь пойдет о нескольких плагинах для jQuery, которые помогают организовать просмотр больших изображений на сайте.

Думаю, с этой проблемой в какой-то момент сталкиваются все веб мастера.

Представьте, у вас есть высококачественные изображения с высоким разрешением (фотографии, скриншоты и т.п.) и их нужно показать на сайте. Понятно, что вставить их, не меняя размеры, не получится. Картинки просто «порвут» дизайн. Поэтому предварительно нужно их уменьшить, но и возможность просмотра полноразмерного изображения необходимо обеспечить.

Классическое решение этой задачи – сделать каждую миниатюру ссылкой на полноразмерное изображение. Т.е. использовать разметку вида.

<a href="1.jpg"><img src="1_thumb.jpg" /></a>

где 1_thumb.jpg – уменьшенное изображение 1.jpg.

Главный недостаток такого подхода – посетитель покидает страницу, а затем должен на неё вернуться с помощью кнопки «Назад».

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

Для этого примера я решил остановиться на плагинах к библиотеке jQuery. Т.к. на данный момент она одна из самых популярных и, кроме того, аналоги можно найти для всех распространённых JS библиотек.

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

Я же хочу показать основные подходы с примерами для решения задачи и обсудить их достоинства и недостатки, а какой именно плагин использовать – решать вам.
Читать дальше

Индивидуальное оформление виджетов для WordPress

Владимир | | PHP, Web разработка, WordPress.

wordpress widget styling

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

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

Прежде всего, разберемся, о каких именно стилях идет речь.

Вообще содержимое виджета и его разметка определяются разработчиком. Но для того, чтобы виджеты красиво вписывались в дизайн темы предусмотрены 4 параметра, которые должны использовать разработчики виджетов (по крайней мере в теории 🙂 ).

Эти параметры задаются разработчиком темы при создании сайдбара. Например, так:
Читать дальше

Обновление WordPress плагина Terms Descriptions

Владимир | | PHP, Web разработка, WordPress.

wp terms descriptions logo

Приветствую!

Сегодня выложил очередное обновление WordPress плагина Terms Descriptions.

Для тех, кто слышит о нём впервые, кратко объясню его назначение. Он позволяет создавать списки терминов, назначать им ссылки, автоматически искать термины и преобразовывать их в ссылки в ваших записях. Подробнее можно почитать здесь.

Т.е. принцип довольно простой и поставленная задача решается в полном объеме. Но предусмотреть всё практически не возможно, и пользователи постоянно предлагают хорошие идеи.

Последнее усовершенствование предложил Андрей Х.

Читать дальше

Конференции ZFConf Ukraine & MageConf

Владимир | | PHP, Web разработка.

Приветствую всех читателей!

Сегодня хочу просто поделиться хорошей новостью.

27 ноября (суббота) в Киеве пройдет совместная конференция ZFConf Ukraine & MageConf.

Подобные мероприятия — это в любом случае хорошо, но данная конференция выгодно отличается от большинства. Участие в ней бесплатное.

Тут нужно отдать должное организаторам. Я не знаю как они уговаривали спонсоров и искали докладчиков, но, думаю, это было непросто 😉

Конференция будет длиться один день и пройдет в три потока: Zend Framework, PHP, Magento.

Доклады будут на следующие темы.
Читать дальше

WordPress плагин Terms Descriptions. Новая версия.

Владимир | | PHP, WordPress.

wp terms descriptions logo

Приветствую всех!

Я всё-таки собрался и доделал плагин Terms Descriptions 🙂

Изменений в новой версии не много, но об одном из них меня просили уже несколько раз.

Речь о поддержке словоформ, т.е. нескольких вариантов написания одного и того же термина.

Например, так яблоко|яблоки|яблок и т.д.

Разделять словоформы нужно с помощью символа |. При этом, каждый из вариантов написания может состоять из одного или нескольких слов. Например, жесткий диск|винчестер|HDD.
Читать дальше

Конвертер валют

Владимир | | HTML, JavaScript, Web разработка.

rates converter

В комментариях к прошлой статье «Создаём валютный информер с помощь PHP и JavaScript» читатель с ником php-user предложил хороший вариант усовершенствования скрипта.

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

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

Source

Для того, чтобы не переписывать всё заново, за основу возьмем скрипт из прошлой статьи. Напомню, что он выводит список с курсами указанных валют.

Определим план работ.
Читать дальше

Создаём валютный информер с помощь PHP и JavaScript

Владимир | | Ajax, HTML, JavaScript, PHP, Web разработка.

exchange rates

В этой статье я хочу обсудить подход к добавлению различных информеров на страницы сайта, и показать один из вариантов решения данной задачи.

Сразу хочу уточнить, что в этой статье под термином «информер» я имею в виду блок на странице, содержащий информацию, полученную с другого ресурса. Информация может быть какая угодно: курсы валют, погода, данные счетчиков, последние твиты и т.п.

Результат, который должен получиться, можно посмотреть на демонстрационной страничке или запустив пример из архива.

Source

Подключение информера

Читать дальше

Disqus: очередной холивар

Владимир | | WordPress, Разное.

disqus-logo

Приветствую всех!

Сегодня, просматривая Google Reader, я наткнулся на две статьи о системе комментирования Disqus с диаметрально противоположными мнениями — For Idiotisqus и Системы комментирования для блогов – плюс и минусы. Что же делать?

В принципе, все это смахивает на типичный холивар, в которых я учавствовать не люблю. Но для многих блоггеров вопрос стоит конкретно: «Устанавливать стороннюю систему комментирования или нет?» И ориентироваться они будут именно на такие статьи. К тому же, потестировать такую систему локально не получится, вы просто не получите достаточно объективных данных. А ставить эксперименты на «живом» блоге никто не любит.

В этой статье я хочу рассказать о своем опыте использования Disqus и, возможно, помочь принять правильное решение 😉
Читать дальше

Особенности подключения JS скриптов в WordPress

Владимир | | JavaScript, PHP, Web разработка, WordPress.

wordpress scripts

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

Один из таких примеров – подключение JavaScript кода в WordPress.

Этот движок предоставляет удобную функцию wp_enqueue_script. С её помощью можно обеспечить необходимый порядок подключения скриптов и, при этом, гарантируется, что один и тот же скрипт будет подключён только один раз.

Кстати, аналогичные возможности есть и в различных фреймворках, например, Yii.

Но разница между фреймворком и WordPress в том, что с помощью последнего можно создать сайт, не читая документацию, во всяком случае, ту часть, которая касается API. В этом нет ничего плохого, но можно столкнуться с некоторыми нюансами. О них речь пойдет ниже.

Основные проблемы и причины их появления

Читать дальше

Как «подружить» сервис Loginza и фреймворк Yii

Владимир | | PHP, Web разработка, Yii.

loginza yii

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

Но в статье о Loginza, речь шла о протоколе обмена данными с сервисом, а вопрос аутентификации остался «за бортом». Я, конечно, объяснил когда нужно создавать сессию, но на практике этого явно недостаточно 😉

В этой статье я постараюсь исправить этот недостаток и покажу пример аутентификации пользователя с помощью сервиса Loginza.

Прежде всего, определим требования к такой системе.
Читать дальше