Как стать автором
Поиск
Написать публикацию
Обновить
0.25

WordPress *

Открытая система управления содержимым сайта

Сначала показывать
Порог рейтинга
Уровень сложности

Нюансы коммерческой разработки на WordPress

Время на прочтение7 мин
Количество просмотров52K


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

По большей части информация будет «технического плана», касательно CMS Worpdress, «по верхушкам». Я рассказываю лишь про наш путь, для кого использование технологий, путей, приемов etc. вопрос религии — просьба воздержаться от холиваров.
Приступим

Преимущества Wordpress

Время на прочтение4 мин
Количество просмотров18K
Эта публикация является ответом на пост «Недостатки Wordpress — техническая сторона».

По традиции автора, уточню несколько моментов:

  1. Дабы внести ясность, сразу скажу, что я тоже намерен рассматривать статью с технической стороны, но через призму всех разработчиков, а не только опытных;
  2. Мне доводилось иметь дело со многими CMS, в том числе и ezpublish, который написан, практически весь, со строгим использованием ООП. В своё время плотно использовал Drupal;
  3. Большую часть времени я программирую с помощью сторонних фреймворков и осведомлён, каким должен быть хороший движок;
  4. Ни в коем случае, не считаю себя гуру PHP, просто знаю, что настоящие гуру возможно обойдут тему WordPress стороной.

Я нигде не встречал более простых и элегантных реализаций функционала, чем в WordPress. Я отнюдь не считаю, что во всех проектах должна использоваться эта CMS, но, на мой взгляд, WordPress хорошо справляется с возложенными на него задачами и отнюдь не без использования ООП. Вся фишка в том, что ООП использовать никто не запрещал. Многие плагины написаны как раз с его использованием.
Читать дальше →

Legacy-код — это рак

Время на прочтение7 мин
Количество просмотров84K
Все чаще и чаще я вижу, что люди уклоняются от новейших технологий, делая выбор в пользу обратной совместимости. «Мы не можем повышать минимальные требования к PHP до 5.5, потому что у нас 50% пользователей еще на 5.4» говорят они. «Нет никакого способа обновиться до Guzzle 4+, у нас бекенд на версии 3 и переделывать его слишком долго и дорого». И самый лучший аргумент от WordPress: «Мы не может придти к полному ООП, потому что большинство пользователей сидят на shared-хостингах с 5.1 или не знают про MVC».

Нонсенс.

Legacy-код – это большое НЕТ


Возможно, это спорный вывод, но я твердо уверен, нет места для legacy-кода в современных системах. Скажу несколько слов, прежде чем вы начнете точить свои вилы и зажжете факелы. Я имею ввиду, что не должно быть ни малейшего повода поддерживать старый функционал, вы добавляете обновления задним числом к старой версии только потому, что некоторые люди все еще используют ее. Даже если этих людей большинство — не делайте так.
Читать дальше →

Недостатки Wordpress — техническая сторона

Время на прочтение12 мин
Количество просмотров110K
Прежде всего, считаю нужным уточнить несколько моментов:

  1. Эта статья не про какие-либо возможные недостатки интерфейса панели администрирования, тем оформления, готовых плагинов для wordpress или что там еще может интересовать типичного веб-мастера? Со всем этим как раз, на мой взгляд, у WordPress всё относительно в порядке. Эта статья про код.
  2. Статья во многом опирается на материалы, мною собранные воедино, вольно переведенные и от себя значительно дополненные. Ссылки представлены в конце статьи.
  3. Популярность — не синоним качества. Не нужно использовать этот довод как доказательство качества технического исполнения. WordPress популярен явно по совершенно иным причинам.

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

Страничное кеширование в WordPress

Время на прочтение6 мин
Количество просмотров31K
image

В последнее время на Хабре появилось довольно много постов по данной теме, но по своей сути их можно назвать: «Смотрите, я поставил Varnish / W3 Total Cache и держу миллион запросов на «Hello world» страничке». Данная же статья рассчитана больше на гиков, желающих познать, как же это все работает и написать собственный плагин для страничного кеширования.

Зачем?


Стандартный вопрос, который возникает у каждого разработчика перед созданием велосипеда уже существующего функционала. Действительно, готовых плагинов уйма и многие из них довольно качественные, но нужно понимать что в первую очередь они рассчитаны на статические блоги. Что же делать, если у вас не стандартный WordPress сайт?
Читать дальше →

Вышел WordPress 4.1.1

Время на прочтение1 мин
Количество просмотров11K
Сегодня вышла минорная версия WordPress 4.1.1, в который был исправлен 21 баг релиза 4.1 «Dinah». Баги были самые разные — от глюков с редактором в Google Chrome до регулярного обращения движка к серверу обновлений при каждой загрузке панели управления сайтом.

Полный список багов можно посмотреть здесь, полный список внесённых изменений — здесь.

Разработчики обращаю внимание на то, что начиная с версии 4.1 обновление системы стало производиться автоматическим образом. Чему многие из нас сегодня утром и стали свидетелями. Если автоматическое обновление у вас не сработало вследствие настроек хостинга, рекомендуют обновиться вручную.

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

Делаем онлайн-кинотеатр для слепых (WCAG 2.0 AAA)

Время на прочтение4 мин
Количество просмотров24K
В РФ живет около 275 тысяч слепых и слабовидящих людей, 22% молодежь, некоторые из них также являются пользователями интернета, как и мы.

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

image
(пример адаптированной темы на GitHub по ссылке с картинки )
про WCAG 2.0 и как ему соответствовать читайте внутри

Руководство по миграции WordPress-сайта

Время на прочтение7 мин
Количество просмотров219K


Каждый веб-разработчик регулярно сталкивается с задачей миграции. Сюда входят и развёртывание (deploy) локальной версии на удалённом сервере, и перенос работающего сайта с одного сервера на другой. Некоторые печатные издания для программистов называются «Cookbook» – что буквально значит «книга рецептов». Рецептов множество, какой из них лучший — дело вкуса. В этом материале автор расскажет о том, какую технологию переноса типичного сайта на WordPress он считает оптимальной, и почему.
Читать дальше →

Внедрение через URL: www.site.ru/?jn=xxxxxxxx

Время на прочтение2 мин
Количество просмотров23K
Буквально на днях столкнулся с новым (*?) вариантом спам-вируса для веб-сайтов. Гугл определяет его как «Внедрение через URL».

Описание

На вашем сайте появляются ссылки которых не было и быть не могло — вы, например, четко знаете структуру сайта и оригинальный вид URL, который отличается от «левых» URL. В частности, в индексе поисковиков появляются ссылки вида:
www.site.ru/?jn=xxxxxxxx

Поиск и устранение

Яндекс-Вебмастер пока не реагирует на них, а вот в инструментах Гугла для вебмастеров выдается предупреждение о возможном взломе сайта. Там же даны рекомендации по поиску. К сожалению они довольно общие и конкретный поиск проблемы занимает время. Антивирусы и он-лайн анализаторы сайтов — результата не дают. Только ручками.

Вариант А: Код не обфусцирован

  1. Ищем в исходниках кто и как у нас пользует переменную $_GET['jn']
  2. Далее по коду смотрим кто где гадит (например: \js\swfupload\plugins\jquery\)

Вариант Б: Код обфусцирован

  1. Ищем каталог с файлами, названия которых идут после "?jn="
  2. Ищем подозрительные исполняемые файлы типа images/c0nfv.php
  3. Можно сделать поиск путей где могут быть файлы а-ля "/img/icon/thumb/jquery.php"
  4. Проверить дату изменения конфигов CMS
  5. Рекомендуется проверить на наличие (корректность) файлов base.php — это само тело вируса, код обфусцирован
  6. Проверяем дату jquery.php и сравниваем ее с датой обнаружения вируса по мониторингу инструментов вебмастеров Гугла.

Встречается

  • CMS: Joomla, WordPress, DLE, PrestaShop, HostCMS
  • Plugins: ImageZoomer, SWFupload, BlockCategories
  • Велика вероятность появления практически во всех плагинах, которые используют JQuery и в тех местах, где у админов ручки не дошли до настройки.

Полный код (необфусцированного) зловредного кода под катом.
Читать дальше →

WordPress обновился до версии 4.1

Время на прочтение3 мин
Количество просмотров27K

Самая популярная в мире система управления сайтами WordPress обновилась до версии 4.1 под кодовым названием «Dinah», в честь джазовой певицы Дины Вашингтон.
Со слов авторов системы версия WordPress 4.1 должна помочь вам сфокусироваться на написании публикаций, а новая тема оформления по-умолчанию позволит показать написанное «в стиле».
Что нового?

WordPress для параноиков, часть 1

Время на прочтение9 мин
Количество просмотров63K
Итак, если вы счастливый владелец nginx, знатный параноик и за каким-то чертом решили поставить wordpress, то… Первое, что пришло в голову — это «надо ограничить сему творению свободу!».

Настройки учетной записи, как и настройки php5-fpm, я опущу, так как у каждого свои тараканы, а кто-то вообще на apache запускает. Но вот общие для Wordpress я опишу в этой части. Напишу о том, что сделал, что получилось и почему.
Читать далее

84% сайтов на WordPress могут быть взломаны: что дальше?

Время на прочтение2 мин
Количество просмотров46K
image

Если вы часто читаете IT-новости, то наверняка уже устали от страшилок об очередной уязвимости, которая нашлась в популярной OS / СУБД / CMS / кофеварке. Поэтому данный пост посвящен не самой уязвимости, а наблюдению за тем, как люди регируют на неё.

Однако сначала — несколько слов о «виновнице торжества». Критическая уязвимость популярном блоговом движке WordPress была найдена в сентябре финскими специалистами из компании с весёлым названием Klikki Oy. Используя эту дыру, хакер может вести в качестве комментария к блогу специальный код, который будет выполнен в браузере администратора сайта при чтении комментариев. Атака позволяет скрытно перехватить управление сайтом и делать разные неприятные вещи под админским доступом.
Читать дальше →

Ближайшие события

Уязвимость в Akeeba Backup и Joomla!

Время на прочтение2 мин
Количество просмотров7.5K

Описание


Уязвимость позволяет удалённому злоумышленнику извлечь архив, хранящийся где-то удалённо, на атакуемый сайт во время распаковки резервной копии или установки обновлений, в зависимости от настроек. Само наличие уязвимости не позволяет её использовать. Злоумышленник должен атаковать именно в то время когда извлекается архив резервных копий или устанавливается пакет обновления Joomla!

Версии программного обеспечения, подверженные уязвимости


  • Akeeba Backup for Joomla! Professional, версии 3.0.0 и выше, включая 4.0.2
  • Akeeba Backup Professional for WordPress, 1.0.b1 и выше, включая 1.1.3
  • Akeeba Solo, 1.0.b1 и выше, включая 1.1.2
  • Admin Tools Core and Professional, version 2.0.0 и выше, включая 2.4.4. Более поздние версии не подвержены, так как не включают в себя Joomla! update.
  • Akeeba CMS Update, version 1.0.a1 и выше, включая 1.0.1
  • Joomla! 2.5, 3.0, 3.1, 3.2, 3.3 и выше, включая 3.3.4

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

Yii + WordPress = <3, или Увлекательный эксперимент получения Франкенштейна

Время на прочтение3 мин
Количество просмотров20K
Всем привет. Я — Денис Мельский. Работаю PHP Developer в DataArt. Область моих профессиональных интересов — Web Development и Linux. Сегодня я хотел бы поговорить с вами о «скрещивании ежа с ужом».

image

Intro


На первый взгляд может показаться, что это безумство и, в некотором роде, архитектурный костыль. Но, если посмотреть с другой стороны, это один из вариантов выхода из часто встречающейся тупиковой ситуации: заказчик хочет WordPress и ничего другого не признает. Скорее всего, что-то он такое услышал, нагуглил, увидел, посоветовал сосед гуру кодер Джон (ну, или Вася).
А программисты наотрез отказываются натягивать на движок блога, с, мягко говоря, не самой лучшей архитектурой, функционал, допустим, интернет-магазина, форума, и вдобавок — REST API для партнёров этого магазина, и сверху — еще пачку кронов с бизнес-логикой.

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

Один из вариантов, который я нашел проводя исследование, на эту тему— скрещивание WordPress и Yii.

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

Первый взгляд на дизайн новой стандартной темы WordPress «Twenty Fifteen»

Время на прочтение2 мин
Количество просмотров17K


Вчера Konstantin Obenland представил в блоге «Make WordPress Core» дизайн новой стандартной темы WordPress под названием «Twenty Fifteen». Matt Mullenweg обратился к Takashi Irie — дизайнеру тем в Automattic — чтобы тот сделал дизайн для новой стандартной темы. Кстати, дизайн «Twenty Fourteen» тоже делал он.
Читать дальше →

Релиз WordPress 4.0 Benny

Время на прочтение2 мин
Количество просмотров28K


Сегодня стала доступна для скачивания четвертая версия WordPress, названная в честь американского джазмена Бенни Гудмана, известного под прозвищем «Король свинга».

Разработка четвертой версии началась в конце апреля под руководством Helen Hou-Sandí. Этот релиз включает в себя сотни улучшений и несколько совершенно новых функций, которые относятся к работе с медиафайлами и редактору. Также появились новые крутые инструменты для разработчиков. Под катом представлен краткий обзор новых фич.
Читать дальше →

5 WordPress плагинов для укрепления поведенческих и социальных метрик сайта

Время на прочтение4 мин
Количество просмотров19K
Привет, Хабр!

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

Easy




Easy – многофункциональный плагин, позволяющий легко и удобно кастоматизировать расположение блоков контента на странице. При этом совсем не обязательно разбираться в HTML и CSS. Страница сайта собирается из «кирпичиков», которые просто передвигаются на необходимые места. Основными «кирпичиками» контента являются: заголовок, текст, изображения, категории, теги, комментарии, автор, shortcode, дата и т. д. Вы можете менять и композицию страницы, передвигая ее логические блоки, такие как количество постов на странице, тип публикаций, различные фильтры и т. д.
Читать дальше →

Понимание и работа с данными в WordPress. Часть 1. Введение

Время на прочтение5 мин
Количество просмотров101K

Данная статья является переводом первой статьи Rachel McCollin из цикла о данных в WordPress. В ней по полочкам разложена структура данных, типы контента и их взаимосвязь в WordPress. Будет полезна в первую очередь новичкам, но и профессионалы могут найти для себя что-либо новое.
Освежить знания по WP

Вклад авторов