Журнал "АКППро"

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

Он имеет плотную интеграцию с проектом АКПП Клуб, поддержку нескольких языков (с определением языка по GeoIP), уникальную систему нанесения водяных знаков на PDF-версии журнала, и еще несколько интересных решений. Подробности под катом...

Мультиязычность с GeoIP

Сама мультиязычность реализована стандартными средствами фреймоврка Yii2, но с рядом особенностей. Каждая страница на сайте (кроме статей - о них ниже) имеет два адреса для двух языков, которые используются на данный момент: как пример приведу https://akppro.com/ru/about и https://akppro.com/en/about. То есть адреса для этих страниц всегда статичные и отображают контент на своем языке. Однако, если убрать идентификатор языка из адреса и ввести в браузере просто https://akppro.com/about, то фреймворк определит страну с использованием GeoIP и сделает редирект на нужную страницу с префиксом en или ru. Например, главную страницу сайта можно открыть либо просто введя https://akppro.com, либо конкретно указав язык https://akppro.com/ru или https://akppro.com/en.

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

Кроме того, если осуществлять авторизацию учетной записью АКПП Клуба, то по умолчанию для определения будет использоваться страна из профиля пользователя, а не GeoIP.


Уникальная система защиты PDF и контента в целом.

Для тех выпусков журнала, которые доступны только по подписке, реализована система нанесения водяных знаков с именем покупателя на все страницы PDF-журнала, а также установкой сложного произвольного пароля на редактирование PDF-документа. Таким образом осуществляется защита от несанкционированного распространения технических статей журнала.

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

Архив номеров и статей

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

Если данная статья  доступна только по подписке, то отображается только ее первые абзацы. При этом поисковым роботам "скармливается" статья целиком, для лучше поисковой индексации.