Архив метки: Wordpress

WordPress — ограничение доступа к странице

Столкнулся только что с задачей ограничения доступа к определенной странице на сайте, созданном на WordPress. Т.е. задача вроде бы простая: если пользователь не прошел авторизацию — получить доступ к информации на определенной странице он не может. Но по факту без ковыряния в коде реализовать ее не так уж и просто.

Однако — это Worpdress! Несмотря на открытость кода платформа пользуется заслуженной популярностью — ниже представлен срез популярности CMS-систем в Рунете, на основании которого лидерство WordPress вполне очевидно:

Популярность CMS-систем за 2-й квартал 2015 года

Именно благодаря открытости системы с помощью плагинов у неискушенных в кодинге пользователей появляется возможность кастомизировать движок по собственному разумению. Решить можно практически любую задачу и задача, о которой я говорил выше — ограничение доступа к странице — отлично решилась с помощью плагина WP-Members.

Процесс установки плагина стандартен:
1. Загружаем плагин к себе на жесткий диск
2. Закачиваем через FTP на сервер в папку /wp-content/plugins/
3. Активируем плагин в панели управления.

плагин WP-MembersЛибо — заходим на ссылку http://вашсайт/wp-admin/plugin-install.php и вводим в строку поиска название искомого плагина: WP-Members, после чего устанавливаем и активируем его.

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

wp-members

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

WordPress и ссылка на happy wheels

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

Речь идет о ссылке happy wheels, ведущей на сайт happy*wheels*2*full*com (звездочки поставлены преднамеренно, не хочу даже ссылки активными делать — уверен, что этот сайт достаточно активно засветился в спам-листах.
В исходном коде страницы ссылка отображалась следующим образом:code_whells

Просмотрев исходные коды темы я не обнаружил ничего эксклюзивного, и только в файле single.php нашлось искомое:

code_whells_single
Картинка кликабельная 😉

определив помеху — удаляем вредонос их исходного кода и радуемся жизни 🙂

Как всегда — в случае возникновения вопросов милости просим на почту oleksiy@lavrynenko.com

WordPress — отображение виджета на определенной странице

Только что столкнулся с задачей организации вывода содержимого виджета в движке WordPress на определенной странице. В связи с тем, что время — вещь весьма ограниченная, разбираться в кодах не будем — просто рассмотрим плагин Widget Logic, скачать который можно этой ссылке.

Лично для меня плюсом данного плагина в помощи организации отображение виджета на определенной странице явилась простота организации модели поведения вывода — с помощью указаний Conditional Tags (подробнее об этом вы сможете узнать тут) в опциях вывода виджета. Например, на скрине ниже видно, что данный виджет будет отображаться только в категории новостей и на страницах одиночных записей:
отображение виджета на определенной странице

В качестве параметров для примера можно отметить такие:

  • Отображать только на главной странице: is_home()
  • Отображать только на страницах постов: is_single()
  • Отображать только на страницах: is_page()
  • Отображать только на страницах архива (категорий, тэгов и т.д.): is_archive()
  • Отображать на страницах результата поиска: is_search()
  • Отображать на всех страницах, кроме главной: !is_home()
  • Отображать на странице “Blog” или “Contact” : is_page(‘blog’) || is_page(‘contact’)

В случае возникновения вопросов не стесняйтесь задавать их на почту oleksiy@lavrynenko.com

Капча — реальность, ожидания и эксперимент

Новость в блоге Google радует моих глаз вот уже три дня: поисковый гигант, явивший миру чудо Android, спутники связи, Google+, AdSense, Google Wave (кстати, шикарная была штука) и прочее напрягся и произвел «революционные» изменения в технологии капчи. Отныне в любом подозрительном месте вместо размытых и перечеркнутых буквоцифренных кодировок пользователю будет нужно только поставить галочку возле надписи «I’m not a robot» и…… пробки шампанского в потолок, и казалось, что в мире стало чуть веселее.

Но реальность оказалась сложнее 🙁 Все заявления разработчиков об анализе косвенных данных, на основании чего система будет решать — предоставить вам просто поле для галочки возле слов «Я не робот», или явить капчу перестали казаться мне истинными после проведенных экспериментов попытки регистрации нового блога в WordPress (а эта система уже начала пользоваться новинкой). В числе проведенных тестов было:

1. Попытка регистрации в ручном режиме в браузере Chrome, залогиненным под личным аккаунтом Google

2. Попытка регистрации в в ручном режиме в браузере Chrome в режиме Инкогнито (напомню — в этом режиме теоретически не сохраняются куки и не ведется запись хистори)

3. Попытка регистрации по вышеупомянутым процедурам в браузере Firefox

4. Попытка регистрации с помощью VPN-туннелей для подстановки поддельного IP-адреса поочередно тремя вышеуказанными методами

5. Попытка регистрации с помощью TOR-браузера с помощью первых трех методов

Важно отметить, что данные эксперименты проводились с трех разных компьютеров для избежания попадания под систему анализирования как стандартных данных (IP-адрес компьютера, логины, активность пользователя в браузере, но и «отпечатков» системы (тут  важно напомнить, что впервые об этом явлении заговорили еще в 2012 году, когда объединенная команда исследователей из Технического университета Эйндовена в Нидерландах и Дармштадтского технического университета в Бельгии заявила о разработке алгоритма, по результатам которого можно найти различия в обработке данных, которые выполняются графическими системами. Назвали это явление слегка замудренно: «Физически неклонируемые функции на стандартных компонентах ПК» намекая о невозможности подделки этих результатов — в отличии от MAC-адресов, подделку которых не делал только ленивый. Ну или тот, кому не интересно или не нужно 🙂 ) — технология хоть и была заявлена к реализации только к началу 2015, да и то — в тестовом варианте — но… но … Мы же за чистоту эксперимента, правда? 🙂

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

1. Я робот, и Google это знает

2. Система анализирования анализирует с помощью чего-то еще

3. Система учитывает количество активных соединений с социальными сетями и основываясь на этом выдает решение о демонстрации капчи. Чем больше следов социальных сетей в системе — тем выше уровень доверия

4. Кто его знает, что происходит. Тут явно обширная тема для экспериментов, а времени, как всегда — мало.

Понравилась статья? Обязательно поделись на своей странице 😉 Всем хорошего настроения!

User Submitted Posts русификация

На выходных попросили создать быстро сайт с обязательной возможностью самостоятельного добавления новостей на сайт всем желающим.

Из опробованных плагинов наибольшее впечатление произвел плагин User Submitted Posts, скачать который вы сможете по этой ссылке. Важно отметить, что плагин существует в двух вариантах — бесплатный и платный, сравнить функционал которых вы сможете на сайте разработчика, однако… Лично меня и бесплатная версия вполне устроила (заказчика тоже 😉 ). Уже после сдачи сайта заказчику оказалось, что такие мелкие и обычно выбираемые «на автомате» поля, как «Заголовок новости», «Категория» и прочее обязательно должны быть на русском языке. К сожалению, на странице разработчика русифицированной версии не нашлось — пришлось переводить самостоятельно (если кому интересно — наименования полей хранятся в файле viewssubmission-form.php).

Забрать архив плагина User Submitted Posts с русификацией вы сможете по этой ссылке. Напоминаю, что перевод делался на «скорую руку», потому в случае возникновения каких-либо вопросов — пишите на почту: oleksiy@lavrynenko.com

Всем хорошего времени суток!