<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
  <channel>
    <language>ru</language>
    <title>WordPress</title>
    <description>WordPress — самая популярная система управления содержимым сайта со встроенными темами и плагинами. В этом разделе вы найдёте всю информацию по работе с CMS Вордпресс.</description>
    <link>https://tproger.ru/tag/wordpress</link>
    <atom:link href="https://tproger.ru/tag/wordpress/feed" rel="self" type="application/rss+xml"/>
    <lastBuildDate>Tue, 29 Sep 2026 07:27:03 GMT</lastBuildDate>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>12</sy:updateFrequency>
    <image>
      <title>WordPress</title>
      <link>https://tproger.ru</link>
      <url>https://tproger.ru/apple-touch-icon.png</url>
    </image>
    <item>
      <title>WP2Shell: хакеры атакуют критические уязвимости WordPress</title>
      <link>https://tproger.ru/news/wp2shell-hakery-atakuyut-kriticheskie-uyazvimosti-wordpress</link>
      <comments>https://tproger.ru/news/wp2shell-hakery-atakuyut-kriticheskie-uyazvimosti-wordpress?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Евгений Стребков]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wp2shell-hakery-atakuyut-kriticheskie-uyazvimosti-wordpress</guid>
      <description><![CDATA[<p>WordPress выпустил экстренные патчи 6.9.5 и 7.0.2 для цепочки WP2Shell. Уязвимости позволяют получить контроль над сайтом без авторизации. Проверьте версию CMS.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wp2shell-hakery-atakuyut-kriticheskie-uyazvimosti-wordpress">WP2Shell: хакеры атакуют критические уязвимости WordPress</a>»</p>]]></description>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Хакеры]]></category>
      <category><![CDATA[Информационная безопасность]]></category>
      <category><![CDATA[Уязвимость]]></category>
      <category><![CDATA[CMS]]></category>
      <category><![CDATA[Кибербезопасность]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 21 Jul 2026 08:38:27 GMT</pubDate>
      <content:encoded><![CDATA[<p>Если ваш сайт работает на WordPress 6.9.x или 7.0.x — проверьте версию прямо сейчас. 17 июля 2026 года WordPress выпустил экстренные обновления 6.9.5, 7.0.2 и 6.8.6, закрывающие критическую цепочку уязвимостей WP2Shell. Уже через несколько дней после релиза патчей компании Patchstack, Hexastrike и WatchTowr зафиксировали реальные атаки: злоумышленники получают полный контроль над сайтами без учётной записи и без установленных плагинов.</p><p>WP2Shell — цепочка CVE-2026-63030 и CVE-2026-60137 в ядре WordPress.</p><p>Под угрозой полного удалённого выполнения кода: WordPress 6.9.0–6.9.4 и 7.0.0–7.0.1.</p><p>Атака работает без авторизации на стоковой установке без плагинов и тем.</p><p>WordPress.org применил редкую меру — принудительные автообновления для уязвимых версий.</p><p>Решение: обновиться до 6.9.5, 7.0.2 или 6.8.6 и проверить журналы доступа.</p><h2>Что такое WP2Shell</h2><p>WP2Shell — это комбинация двух багов в ядре WordPress, а не в стороннем плагине или теме. CVE-2026-63030 связана с путаницей маршрутов в пакетном endpoint REST API /wp-json/batch/v1. CVE-2026-60137 — SQL-инъекция в параметре author__not_in компонента WP_Query. По отдельности они серьёзны, вместе дают удалённое выполнение кода от анонимного пользователя.</p><h2>Какие версии под угрозой</h2><p>Полная цепочка RCE работает на WordPress 6.9.0–6.9.4 и 7.0.0–7.0.1. SQL-инъекция CVE-2026-60137 также присутствует в ветке 6.8.0–6.8.5, но там она не превращается в удалённый шелл, поскольку REST API batch endpoint появился только в 6.9. Исправления — версии 6.9.5, 7.0.2 и 6.8.6.</p><h2>Масштаб угрозы</h2><p>По официальной статистике WordPress, уязвимые версии установлены на более чем 400 миллионах сайтов. Исследователь Дэниэл Кард проанализировал выборку около 3500 площадок и оценил долю уязвимых экземпляров менее чем в 15%. Даже при такой оценке речь идёт о десятках миллионах потенциальных жертв.</p><h2>Что делать</h2><ol><li>Проверить версию WordPress в админ-панели или через WP-CLI.</li><li>Обновиться до 6.9.5, 7.0.2 или 6.8.6 в зависимости от текущей ветки.</li><li>Убедиться, что принудительное автообновление действительно применилось.</li><li>Проверить журналы доступа на обращения к /wp-json/batch/v1.</li><li>Если обновление невозможно срочно — временно заблокировать endpoint /wp-json/batch/v1 на WAF.</li></ol><h2>Выводы</h2><blockquote>Атака не требует предварительных условий и может быть использована анонимным пользователем на стоковой установке WordPress без плагинов.</blockquote><p>WP2Shell — редкий случай, когда уязвимость затрагивает ядро CMS, а не стороннее расширение. WordPress.org пошёл на нехарактерный шаг — принудительную доставку патчей, — что говорит о серьёзности угрозы. Если вы администратор сайта на WordPress, обновление до актуальных версий — приоритетная задача.</p><p>Источник: <a href="https://tech.slashdot.org/story/26/07/20/234246/hackers-are-exploiting-recently-patched-wordpress-bugs-putting-millions-of-websites-at-risk">Slashdot</a> (цитирует TechCrunch).</p>]]></content:encoded>
    </item>
    <item>
      <title>Операция Endgame отключила 106 серверов SocGholish и очистила почти 15 000 сайтов на WordPress</title>
      <link>https://tproger.ru/news/operaciya-endgame-otklyuchila-106-serverov-socgholish-i-ochistila-po</link>
      <comments>https://tproger.ru/news/operaciya-endgame-otklyuchila-106-serverov-socgholish-i-ochistila-po?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Евгений Стребков]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/operaciya-endgame-otklyuchila-106-serverov-socgholish-i-ochistila-po</guid>
      <description><![CDATA[<p>Международная операция Endgame вывела из строя 106 серверов SocGholish и очистила 14 971 заражённый сайт на WordPress. Разбираем угрозу и защиту.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/operaciya-endgame-otklyuchila-106-serverov-socgholish-i-ochistila-po">Операция Endgame отключила 106 серверов SocGholish и очистила почти 15 000 сайтов на WordPress</a>»</p>]]></description>
      <category><![CDATA[JavaScript]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Хакеры]]></category>
      <category><![CDATA[Информационная безопасность]]></category>
      <category><![CDATA[Кибербезопасность]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sat, 20 Jun 2026 06:45:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Международная операция <b>Endgame</b> вывела из строя 106 серверов малвари <b>SocGholish</b> и очистила 14 971 заражённый сайт на WordPress. За действиями стоят правоохранительные органы Нидерландов, Канады, Германии и США.</p><p>В рамках Operation Endgame отключены 106 серверов SocGholish и очищены 14 971 заражённый сайт на WordPress.</p><p>SocGholish (он же FakeUpdates) — JavaScript-даунлоудер, активен с 2017 года и доставляет шифровальщиков и шпионское ПО.</p><p>Распространяется через скомпрометированные сайты под видом обновлений Chrome, Firefox и популярного софта.</p><p>Связан с группами Evil Corp, LockBit, RansomHub, Dridex и Raspberry Robin.</p><p>Владельцам сайтов рекомендовано обновить CMS, сменить учётные данные и удалить подозрительные аккаунты.</p><p>Операция прошла в рамках инициативы <b>Operation Endgame</b>, запущенной в 2024 году для борьбы с ботнетами и криминальной инфраструктурой. Владельцам очищенных сайтов уже разосланы уведомления: обновить CMS, изменить пароли и удалить подозрительные учётные записи.</p><p><b>SocGholish</b> — один из старейших JavaScript-даунлоудеров. Он заражает компьютеры через взломанные сайты, предлагая посетителям фальшивые обновления браузеров или популярного ПО. После установки малварь открывает начальный доступ к системе, который затем используется для атак шифровальщиками и шпионским ПО.</p><p>За годы активности за SocGholish закрепились множество имён: FakeUpdates, Gold Prelude, TA569 и UNC1543. Инфраструктура малвари тесно связана с группами <b>Evil Corp</b>, <b>LockBit</b>, <b>RansomHub</b>, <b>Dridex</b> и <b>Raspberry Robin</b>.</p><h2>Как защитить свой сайт</h2><ul><li>Регулярно обновляйте WordPress, плагины и темы.</li><li>Используйте сложные уникальные пароли и двухфакторную аутентификацию.</li><li>Проверьте список администраторов и удалите подозрительные аккаунты.</li><li>Мониторьте файлы сайта на наличие внедрённого JavaScript-кода.</li></ul><p>Operation Endgame называет эту операцию началом дальнейших действий против SocGholish. Хотя часть инфраструктуры отключена, экосистема малвари включает аффилиатов и системы распределения трафика, поэтому угроза сохраняется. Подробности — в <a href="https://thehackernews.com/2026/06/operation-endgame-disrupts-socgholish.html">первоисточнике на The Hacker News</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Сэкономили на CMS при запуске магазина — а через полгода заплатили втройне за переезд</title>
      <link>https://tproger.ru/articles/sekonomili-na-cms-pri-zapuske-magazina-a-cherez-polgoda-zaplati</link>
      <comments>https://tproger.ru/articles/sekonomili-na-cms-pri-zapuske-magazina-a-cherez-polgoda-zaplati?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Pavel Pat]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/sekonomili-na-cms-pri-zapuske-magazina-a-cherez-polgoda-zaplati</guid>
      <description><![CDATA[<p>Зачем CMS для магазина — это не «витрина», а контур продаж: каталог, 1С, промо, масштаб. Разбор Битрикса, WooCommerce, облака и самописа, плюс честно про миграцию и ошибки на старте.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/sekonomili-na-cms-pri-zapuske-magazina-a-cherez-polgoda-zaplati">Сэкономили на CMS при запуске магазина — а через полгода заплатили втройне за переезд</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[API]]></category>
      <category><![CDATA[SEO]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[Быстрый старт]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[DevOps]]></category>
      <category><![CDATA[Боты]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Magento]]></category>
      <category><![CDATA[OpenCart]]></category>
      <category><![CDATA[HR]]></category>
      <category><![CDATA[Маркетинг]]></category>
      <category><![CDATA[Игра]]></category>
      <category><![CDATA[Разработка]]></category>
      <category><![CDATA[Сервер]]></category>
      <category><![CDATA[Дизайн]]></category>
      <category><![CDATA[CMS]]></category>
      <category><![CDATA[Бизнес]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Wed, 06 May 2026 08:20:34 GMT</pubDate>
      <content:encoded><![CDATA[<p>Мне часто приносят историю в таком виде: «Сделали сайт дёшево, всё летало на старте». Потом каталог раздувается до десятков тысяч SKU, поиск начинает подвисать, 1С не дружит с админкой — и вместо продаж получается проект спасения.</p><p>Один такой кейс я помню особенно болезненно. Заказчик специально ушёл от «тяжёлых» платформ ради самописного решения: быстрее сроки, ниже чек на входе. Полгода спустя каталог перевалил за 10 000 позиций. Страницы открывались по 8–12 секунд, поиск фактически умер, обмен с учёткой превратился в ручной ад. В итоге пришлось пересобирать магазин на другой системе — и суммарно это стоило примерно в три раза больше, чем если бы выбрать нормальный фундамент сразу.</p><p>Вывод простой и непопулярный: для интернет-магазина CMS — это не «движок сайта», а контур бизнеса. Если он не тянет каталог, склады, оплаты и промо — экономия на старте превращается в налог на переделку.</p><h2>Почему «красивая витрина» не спасает</h2><p>Товар и дизайн важны. Но когда речь про оборот, в игру входят другие вещи: скорость выдачи каталога под нагрузкой, связка с 1С или CRM, гибкость скидок, безопасность оплат, возможность масштабировать без ручного копания в ядре.</p><p>Я бы проверял любую платформу не по «можно ли сделать красиво», а по чек-листу: большой каталог без комы в выдаче, интеграции без лютого кастома, промо-логика без боли, понятный путь от заказа до оплаты. Всё остальное — уже вторичный дизайн.</p><h2>Где Битрикс реально оправдан</h2><p>На корпоративных и сетевых историях Битрикс заходит потому, что это не «лендинг с корзиной», а связка магазина с процессами: каталог, заказы, складские и клиентские сценарии из коробки, обмен с 1С как отдельная экосистема.</p><p>Был у нас запуск для стройсети: 80 000 товаров, несколько складов, отдельная математика скидок для B2B. На чистом PHP такое можно дописать, но это месяцы и жирный бюджет. На готовом контуре мы вышли в прод заметно быстрее — потому что решали задачу бизнеса, а не изобретали велосипед.</p><p>Цена лицензии и сервера — да, это не «бесплатный WordPress». Зато это честная модель: вы платите за то, что масштаб и интеграции уже заложены в архитектуру, а не пробиты латками.</p><h2>Kогда разумнее WooCommerce и облако</h2><p>Если у вас не миллион SKU и не десять складов, а тысяча позиций и простая воронка — связка WordPress + WooCommerce часто выигрывает по скорости запуска и по цене входа. Экосистема плагинов закрывает типовые задачи без заказной разработки на каждый чих.</p><p>Облачные SaaS вроде Shopify годятся, когда компании нужен быстрый старт без администрирования сервера и команды DevOps. Комиссии и ограничения платформы нужно закладывать в юнит-экономику заранее — но для проверки гипотезы это иногда лучший компромисс.</p><p>OpenCart и аналоги я чаще видел у проектов, где важна предсказуемость и «руки разработчика на аутсорсе»: проще найти исполнителя, меньше сюрпризов, чем на экзотике. Magento и тяжёлый enterprise-класс имеют смысл, когда команда уже сильная технически и каталог — это отдельный продукт, а не «сайт с корзиной».</p><h2>Самопис — не зло, но это отдельная ставка</h2><p>Своя CMS имеет смысл, когда продукт по сути уникален и типовые решения мешают. Во всех остальных случаях вы покупаете не «уникальность», а дорогую поддержку собственного монстра: каждый апдейт PHP, каждый новый способ оплаты — ваш головняк.</p><h2>Если уже понятно, что платформа не та</h2><p>Переезд между системами редко бывает «копипастой базы». Обычно это заново собранная карточка товара, перепроверенные атрибуты, аккуратная переездная SEO-схема и пауза в маркетинге на время технических работ. Я закладываю такие работы как отдельный проект с понятным бэклогом — иначе получится хаос и простой продаж.</p><p>На этом этапе экономить опаснее всего: «перенесём как получится» почти всегда означает битые URL, дубли в выдаче и потерянные заказы в переходный месяц. Если уж делаете миграцию — делайте её один раз и основательно.</p><h2>Что мы делаем перед выбором</h2><ul><li>Считаем не «стоимость запуска», а стоимость трёх лет жизни: лицензии, хостинг, доработки, интеграции.</li><li>Фиксируем сценарии: каталог, промо, B2B/B2C, обмен с учёткой, маркетплейсы.</li><li>Закладываем буфер на рост — если через год SKU вырастет в пять раз, платформа должна выдержать без полной переделки.</li><li>Перед подписанием уточняем у подрядчика три неудобных вещи: сколько стоит час поддержки после запуска, как закрываются интеграции «не из коробки», и что будет, если через полгода понадобится второй склад или новый тип оплаты.</li></ul><p>Ответы без конкретики («сделаем как надо») для меня красный флаг. Нормальный исполнитель называет риски и диапазоны хотя бы порядка величины.</p><p>Если очень коротко: не экономьте на фундаменте там, где сайт — канал продаж. Экономия почти всегда вернётся чеком на миграцию.</p><p>Подробнее разобрал платформы и критерии в материале на сайте: <a href="https://webfull.ru/blog/vybor-cms-dlya-internet-magazina/">как выбрать CMS для интернет-магазина — сравнение подходов</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Хакер купил 30 WordPress-плагинов и вшил бэкдор — C2 спрятан в смарт-контракте Ethereum</title>
      <link>https://tproger.ru/news/haker-kupil-30-wordpress-plaginov-i-vwil-bekdor-c2-spryatan-v-s</link>
      <comments>https://tproger.ru/news/haker-kupil-30-wordpress-plaginov-i-vwil-bekdor-c2-spryatan-v-s?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Евгений Стребков]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/haker-kupil-30-wordpress-plaginov-i-vwil-bekdor-c2-spryatan-v-s</guid>
      <description><![CDATA[<p>WordPress.org закрыл 30+ плагинов Essential Plugin: бэкдор спал 8 месяцев, C2 резолвится через смарт-контракт Ethereum. Проверьте wp-config.php.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/haker-kupil-30-wordpress-plaginov-i-vwil-bekdor-c2-spryatan-v-s">Хакер купил 30 WordPress-плагинов и вшил бэкдор — C2 спрятан в смарт-контракте Ethereum</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 14 Apr 2026 07:00:06 GMT</pubDate>
      <content:encoded><![CDATA[<p>Если на вашем сайте стоит хоть один плагин от автора <b>Essential Plugin</b> (бывший WP Online Support) — прямо сейчас откройте wp-config.php и ищите инъекции PHP после стандартной секции констант. 7 апреля 2026 года WordPress.org навсегда закрыл <b>30+ плагинов</b> этого автора: во все был встроен бэкдор, который дремал 8 месяцев, а в начале апреля активировался и начал раздавать SEO-спам.</p><p>Новый владелец бизнеса купил плагины на <a href="https://flippa.com">Flippa</a> (маркетплейс, где продают готовые онлайн-бизнесы) в конце 2024 года — вместе с легальной компанией, которой было почти десять лет. Первый же его SVN-коммит в репозиторий WordPress.org содержал бэкдор через PHP-десериализацию — приём, когда данные с чужого сервера превращаются в PHP-объекты и вызывают произвольную функцию. А командный сервер (C2, command-and-control) он спрятал за <b>смарт-контрактом Ethereum</b> — чтобы его нельзя было отключить классическим domain takedown.</p><p>На WordPress.org закрыли 30+ плагинов автора <b>Essential Plugin</b> — все получили бэкдор в августе 2025.</p><p>Бэкдор спал 8 месяцев и активировался 5–6 апреля 2026: вшивал PHP-код в wp-config.php.</p><p>C2-сервер резолвится через смарт-контракт Ethereum — атакующий меняет домен одной транзакцией, блокировка DNS не спасает.</p><p>Полезная нагрузка — SEO-спам, видимый только Googlebot: скрытые редиректы и фейковые страницы.</p><p>Исходный бизнес купили на Flippa в конце 2024 года. Покупатель — человек с бэкграундом в SEO, крипте и гембле.</p><h2>Как нашли: письмо в поддержку</h2><p>В начале апреля 2026 года клиент хостинга <a href="https://anchor.host">Anchor</a> (Рики из Improve &amp; Grow) получил в админке WordPress уведомление от команды WordPress.org: плагин <b>Countdown Timer Ultimate</b> содержит код, позволяющий сторонним лицам получить неавторизованный доступ. Плагин уже принудительно обновили до версии 2.6.9.1, но к этому моменту сайт был скомпрометирован.</p><p>Основатель Anchor Hosting <b>Остин Гиндер</b> поднял резервные копии за 8 разных дат через <a href="https://restic.net">restic</a> и бинарным поиском определил точное окно инъекции: <b>6 апреля 2026 года, с 04:22 до 11:06 UTC</b>. Шесть часов 44 минуты.</p><h2>Как устроен бэкдор</h2><p>В версии 2.6.7, вышедшей 8 августа 2025 года, в плагин добавили 191 строку кода. В changelog было безобидное «Проверка совместимости с WordPress 6.8.2». Файл class-anylc-admin.php вырос с 473 до 664 строк.</p><p>Добавили три вещи:</p><ul><li>Метод fetch_ver_info() — делает file_get_contents() на сервер атакующего и передаёт ответ в @unserialize().</li><li>Метод version_info_clean() — вызывает функцию через $clean(...), где и имя функции, и оба её аргумента пришли из десериализованных удалённых данных.</li><li>REST API-эндпоинт без аутентификации: permission_callback: __return_true.</li></ul><p>Это учебный пример <b>arbitrary function call</b>: удалённый сервер контролирует имя функции, аргументы и данные. Бэкдор дремал 8 месяцев специально — чтобы накопить установки новой версии и разорвать в глазах комьюнити связь между сменой владельца и вредоносным коммитом.</p><h3>Что делает активированный код</h3><p>В начале апреля 2026 года модуль wpos-analytics обратился к analytics.essentialplugin.com, скачал файл wp-comments-posts.php (маскируется под системный wp-comments-post.php) и вшил большой блок PHP прямо в wp-config.php.</p><p>Этот блок подтягивает с C2 ссылки-спам, редиректы и фейковые страницы — и показывает их <b>только Googlebot</b>. Владелец сайта открывает страницу и видит обычный контент, поисковый робот индексирует спам. Это называется <i>cloaking</i> — классический приём чёрного SEO: разный контент для посетителей и для поисковиков.</p><h3>C2 через смарт-контракт Ethereum</h3><p>Главный трюк: домен C2 не хранится в коде бэкдора и не резолвится обычным DNS. Вместо этого код запрашивает публичные RPC-эндпоинты Ethereum и читает адрес C2 из <b>смарт-контракта</b>.</p><p>Последствия простые и неприятные. Классический <i>domain takedown</i> — когда регистратор блокирует домен C2 по жалобе — больше не работает: атакующий одной транзакцией обновляет смарт-контракт и переводит все заражённые сайты на новый домен. Остаются более дорогие меры: блокировка исходящих запросов к Ethereum RPC на уровне хостинга или WAF, мониторинг самого контракта (любая транзакция атакующего видна публично), абьюз-репорты крупным RPC-провайдерам вроде Infura или Alchemy. Сам контракт в блокчейне остаётся навсегда.</p><h2>Как плагины попали к атакующему</h2><p>Исходная команда — <b>Minesh Shah</b>, <b>Anoop Ranawat</b> и <b>Pratik Jain</b> — работала с 2015 года под брендом «WP Online Support», позже ребрендилась в «Essential Plugin» и разрослась до <b>30+ бесплатных плагинов</b> с премиум-версиями.</p><p>К концу 2024 года выручка упала на 35–45%. Minesh выставил весь бизнес на <a href="https://flippa.com">Flippa</a>. Покупателем стал человек по имени <b>«Kris»</b> — с бэкграундом в SEO, криптовалютах и маркетинге онлайн-казино. Сумма — шестизначная в долларах. Flippa даже <a href="https://flippa.com/case-studies">выпустила case study</a> о сделке в июле 2025 года. Первый SVN-коммит нового владельца и был бэкдором.</p><blockquote>В 2017 году покупатель под ником Daley Tias скупил плагин Display Widgets (200 000 установок) за 15 000 долларов и встроил туда спам-редиректы на payday loans. Потом он таким же способом скомпрометировал ещё как минимум 9 плагинов. Сейчас мы видим тот же сценарий, только на масштабе в 30+ плагинов и с современной инфраструктурой.</blockquote><h2>Полный список скомпрометированных плагинов</h2><p>WordPress.org закрыл их все в один день — 7 апреля 2026 года. Если хоть один из этих плагинов у вас установлен, считайте сайт скомпрометированным:</p><ul><li>Accordion and Accordion Slider</li><li>Album and Image Gallery Plus Lightbox</li><li>Audio Player with Playlist Ultimate</li><li>Blog Designer for Post and Widget</li><li>Countdown Timer Ultimate</li><li>Featured Post Creative</li><li>Footer Mega Grid Columns</li><li>Hero Banner Ultimate</li><li>HTML5 VideoGallery Plus Player</li><li>Meta Slider and Carousel with Lightbox</li><li>Popup Anything on Click</li><li>Portfolio and Projects</li><li>Post Category Image with Grid and Slider</li><li>Post Grid and Filter Ultimate</li><li>Preloader for Website</li><li>Product Categories Designs for WooCommerce</li><li>Responsive WP FAQ with Category (sp-faq)</li><li>SlidersPack — All in One Image Sliders</li><li>SP News And Widget</li><li>Styles for WP PageNavi — Addon</li><li>Ticker Ultimate</li><li>Timeline and History Slider</li><li>Woo Product Slider and Carousel with Category</li><li>WP Blog and Widgets</li><li>WP Featured Content and Slider</li><li>WP Logo Showcase Responsive Slider and Carousel</li><li>WP Responsive Recent Post Slider</li><li>WP Slick Slider and Image Carousel</li><li>WP Team Showcase and Slider</li><li>WP Testimonial with Widget</li><li>WP Trending Post Slider and Widget</li></ul><h2>Что делать прямо сейчас</h2><p>Принудительное обновление от WordPress.org (версия 2.6.9.1 для Countdown Timer Ultimate и аналогичные для остальных) просто добавило return; в начало функций дозвона на C2. Это пластырь: модуль wpos-analytics со всем вредоносным кодом остаётся в файловой системе. При следующем обновлении от злоумышленника (если он поднимет новый плагин) достаточно убрать этот return;.</p><p>Минимальный чеклист:</p><ol><li>Выгрузите список активных плагинов: wp plugin list --format=csv.</li><li>Сверьте авторов с закрытым списком выше. Ищите «Essential Plugin», «WP Online Support», «SpiceThemes», «Bestwebsoft» — на всякий случай проверьте все корпоративные сборки старше 5 лет.</li><li>Удалите или переустановите из чистых источников. Anchor <a href="https://anchor.host/someone-bought-30-wordpress-plugins-and-planted-a-backdoor-in-all-of-them/">выложил пропатченные версии</a> с вырезанным модулем wpos-analytics.</li><li>Проверьте wp-config.php на посторонний PHP-код после стандартных констант. Особенно подозрительно — require или include файла wp-comments-posts.php.</li><li>Проверьте логи исходящих соединений за март–апрель 2026 на домен analytics.essentialplugin.com и обращения к Ethereum RPC (Infura, Alchemy, публичные ноды).</li><li>Если сайт получал заметный органический трафик с Google — проверьте Search Console на «страницы с проблемами» и сделайте re-submission после очистки.</li></ol><p>Команды на проверку wp-config.php:</p><h2>Выводы</h2><p>Масштаб supply-chain атак на WordPress-плагины вырос: в истории с Display Widgets в 2017 году было 9 плагинов, здесь — 30+. Маркетплейсы вроде Flippa не умеют (и не обязаны) проверять покупателя на криминальный потенциал. Почти десятилетняя легальная история плагина создаёт доверие, которое атакующий конвертирует в 8-месячный период скрытности.</p><p>Связка <b>marketplace + PHP-десериализация + C2 в блокчейне</b> делает классические методы защиты (DNS-блокировки, репутация автора) бесполезными. Единственное, что работает, — <b>аудит реального кода</b> каждого обновления и мониторинг исходящих соединений. Для больших инсталляций — автоматический diff changelog против diff кода: если changelog говорит «compatibility check», а реальный diff — 191 новая строка, это красный флаг.</p><p>Пока WordPress.org не внедрит обязательную проверку личности новых мейнтейнеров при смене владельца плагина и автоматический diff-анализ SVN-коммитов, подобные истории будут повторяться. Проверьте свои сайты сегодня — принудительный апдейт закрыл только активацию, а не сам код модуля wpos-analytics.</p><p><b>Источники:</b> <a href="https://anchor.host/someone-bought-30-wordpress-plugins-and-planted-a-backdoor-in-all-of-them/">расследование Остина Гиндера (Anchor Hosting)</a>, официальные closed-страницы WordPress.org Plugins Team.</p>]]></content:encoded>
    </item>
    <item>
      <title>Cloudflare запустила EmDash — open-source CMS на TypeScript, которая решает главную проблему WordPress</title>
      <link>https://tproger.ru/news/cloudflare-zapustila-emdash---open-source-cms-na-typescript--kot</link>
      <comments>https://tproger.ru/news/cloudflare-zapustila-emdash---open-source-cms-na-typescript--kot?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Алексей Михайлишин]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/cloudflare-zapustila-emdash---open-source-cms-na-typescript--kot</guid>
      <description><![CDATA[<p>Cloudflare выпустила EmDash — open-source CMS на TypeScript с песочницей для плагинов, MCP-сервером для ИИ-агентов и миграцией с WordPress. Разбираем архитектуру.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/cloudflare-zapustila-emdash---open-source-cms-na-typescript--kot">Cloudflare запустила EmDash — open-source CMS на TypeScript, которая решает главную проблему WordPress</a>»</p>]]></description>
      <category><![CDATA[Open Source]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[Node.js]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Фреймворки и библиотеки]]></category>
      <category><![CDATA[Cloudflare]]></category>
      <category><![CDATA[CMS]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 02 Apr 2026 10:18:14 GMT</pubDate>
      <content:encoded><![CDATA[<p>Если вы хоть раз обновляли WordPress-плагин и молились, чтобы сайт не упал — Cloudflare сделала кое-что для вас.</p><p><a href="https://blog.cloudflare.com/emdash-wordpress/">EmDash</a> — это новая open-source CMS (система управления контентом) на TypeScript от Cloudflare, которую компания <a href="https://blog.cloudflare.com/emdash-wordpress/">называет</a> «духовным наследником WordPress». Главная идея: плагины работают в изолированных песочницах и не могут навредить сайту, даже если содержат уязвимости.</p><ul><li>Cloudflare выпустила EmDash v0.1.0 — open-source CMS на TypeScript с MIT-лицензией</li><li>Каждый плагин запускается в изолированной песочнице (Dynamic Workers) и декларирует нужные разрешения в манифесте</li><li>96% уязвимостей WordPress-сайтов приходится на плагины — EmDash решает эту проблему архитектурно</li><li>Под капотом — Astro, serverless-архитектура, Portable Text вместо HTML, встроенный MCP-сервер для ИИ-агентов</li><li>Проект создан за 2 месяца с помощью ИИ-агентов, доступен на GitHub (3200+ звёзд за сутки)</li></ul><p>WordPress исполнится 23 года в этом году (основан в 2003 году). Платформа <a href="https://w3techs.com/technologies/details/cm-wordpress">обслуживает</a> более 40% всех сайтов в интернете, но её архитектура родом из эпохи, когда AWS EC2 ещё не существовал. Плагинная система WordPress — главное преимущество и главная боль одновременно.</p><h2>Почему безопасность плагинов WordPress — нерешаемая проблема</h2><p>В WordPress плагин — это PHP-скрипт, который встраивается напрямую в ядро и получает полный доступ к базе данных и файловой системе. Нет изоляции, нет ограничений. Установить плагин — значит полностью ему довериться.</p><p>Статистика <a href="https://www.wordfence.com/">Wordfence</a> и других ИБ-компаний неутешительна:</p><ul><li><b>96% уязвимостей</b> WordPress-сайтов происходят из плагинов</li><li>В 2025 году нашли больше критических уязвимостей в экосистеме WordPress, чем за два предыдущих года вместе</li><li>Очередь ревью в маркетплейсе WordPress.org — <b>800+ плагинов</b>, ожидание — минимум 2 недели</li></ul><p>WordPress не может решить эту проблему, не переписав архитектуру с нуля. Cloudflare решила это сделать.</p><h2>Как EmDash изолирует плагины</h2><p>В EmDash каждый плагин запускается в собственном изолированном воркере (<a href="https://developers.cloudflare.com/workers/">Dynamic Worker</a> — легковесная v8-песочница, запускающаяся за миллисекунды). Вместо полного доступа ко всему, плагин <b>декларирует</b> в манифесте, какие возможности ему нужны:</p><p>Этот плагин запрашивает ровно два разрешения: чтение контента и отправку email. <b>Ничего другого он сделать не может</b> — ни обратиться к внешнему серверу, ни прочитать файловую систему, ни получить доступ к базе данных напрямую.</p><p>Модель напоминает OAuth: при установке плагина вы видите, какие именно разрешения он запрашивает, и принимаете осознанное решение. Администратор может задать политики — какие capabilities допустимы для каких ролей.</p><h2>Архитектура и стек</h2><p>EmDash построен на современном стеке:</p><ul><li><b>TypeScript</b> — весь код, включая плагины и темы</li><li><b>Astro</b> — фреймворк для контентных сайтов, рендеринг тем</li><li><b>Portable Text</b> — структурированный JSON вместо HTML, контент не привязан к DOM</li><li><b>Serverless</b> — масштабируется до нуля, работает на Cloudflare Workers или любом Node.js-сервере</li><li><b>Passkeys</b> — аутентификация без паролей по умолчанию (WebAuthn)</li><li><b>MIT-лицензия</b> — без ограничений GPL, плагины могут иметь любую лицензию</li></ul><h3>Хранение и совместимость</h3><p>На Cloudflare EmDash использует D1 (база данных), R2 (файлы), Workers (вычисления). Но абстракции портируемы: можно запустить на SQLite, PostgreSQL, AWS S3 или локальном файловом хранилище. Команда для развёртывания:</p><h2>ИИ-нативная CMS: MCP, CLI, Agent Skills</h2><p>EmDash <a href="https://github.com/emdash-cms/emdash">спроектирован</a> для работы с ИИ-агентами:</p><ul><li><b>Встроенный MCP-сервер</b> — Claude, ChatGPT и другие ИИ-инструменты могут управлять сайтом напрямую через Model Context Protocol</li><li><b>Agent Skills</b> — файлы-инструкции для ИИ-агентов: как писать плагины, портировать темы с WordPress, работать со схемами контента</li><li><b>CLI</b> — программное управление контентом, медиа, схемами</li></ul><p>По сути, рутинную работу — миграцию контента, создание плагинов, адаптацию тем — можно поручить ИИ-агенту, и EmDash даст ему весь необходимый контекст.</p><h2>Встроенная монетизация через x402</h2><p>Каждый сайт на EmDash поддерживает стандарт <a href="https://x402.org">x402</a> — нативные интернет-платежи. Клиент (например, ИИ-агент) отправляет HTTP-запрос, получает ответ 402 Payment Required и оплачивает доступ к контенту на лету. Настроить монетизацию можно без единой строчки кода — указать, какой контент платный, и привязать кошелёк.</p><h2>Миграция с WordPress</h2><p>EmDash поддерживает импорт существующих WordPress-сайтов:</p><ol><li>Экспорт WXR-файла (WordPress eXtended RSS) из WordPress-админки</li><li>Или установка плагина EmDash Exporter, который создаёт защищённый endpoint для миграции</li><li>Автоматический перенос постов, страниц, медиафайлов и таксономий</li></ol><p>Кастомные типы контента (которые в WordPress требуют Advanced Custom Fields) в EmDash задаются через визуальный конструктор схем в админке.</p><h2>Что стоит учесть</h2><p>EmDash находится в статусе <b>бета-превью (v0.1.0)</b>. Несколько моментов:</p><ul><li>Проект молодой — 62 коммита, 4 контрибьютора, 34 релиза</li><li>Песочница для плагинов через Dynamic Workers требует платного аккаунта Cloudflare (от $5/мес), но EmDash запускается и без неё — плагины будут работать в safe mode без изоляции</li><li>Экосистема плагинов и тем ещё не сформировалась — на старте доступны формы, встраивания, SEO, аудит-лог</li><li>Привязка к инфраструктуре Cloudflare — можно запустить на Node.js, но максимальную производительность даёт именно Cloudflare</li></ul><h2>Выводы</h2><blockquote>WordPress — триумф open source, который дал возможность публиковаться миллионам. Но экосистеме нужен вариант, который даёт ту же свободу и доступность, решая при этом проблемы, которые WordPress не может решить.</blockquote><p>EmDash — амбициозная заявка Cloudflare на рынок CMS. За 24 часа после анонса проект набрал более 3200 звёзд на <a href="https://github.com/emdash-cms/emdash">GitHub</a> и 600+ баллов на Hacker News. Продакшн-готовности пока нет — это бета. Но идея изолированных плагинов с декларативными разрешениями решает реальную проблему, которая мучает WordPress-экосистему десятилетиями.</p><p>Попробовать EmDash можно в <a href="https://emdash.dev/playground">онлайн-песочнице</a> или развернуть локально через CLI.</p>]]></content:encoded>
    </item>
    <item>
      <title>Headless WordPress: архитектура с Next.js, GraphQL и Cloudflare</title>
      <link>https://tproger.ru/articles/headless-wordpress--arhitektura-s-next-js--graphql-i-cloudflare</link>
      <comments>https://tproger.ru/articles/headless-wordpress--arhitektura-s-next-js--graphql-i-cloudflare?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Александр Пехота]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/headless-wordpress--arhitektura-s-next-js--graphql-i-cloudflare</guid>
      <description><![CDATA[<p>Разбираем headless WordPress на практике: Next.js, Cloudflare Workers, GraphQL и архитектура быстрых и масштабируемых сайтов.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/headless-wordpress--arhitektura-s-next-js--graphql-i-cloudflare">Headless WordPress: архитектура с Next.js, GraphQL и Cloudflare</a>»</p>]]></description>
      <category><![CDATA[API]]></category>
      <category><![CDATA[JavaScript]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Оптимизация]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[React]]></category>
      <category><![CDATA[Cloudflare]]></category>
      <category><![CDATA[CMS]]></category>
      <category><![CDATA[CDN]]></category>
      <category><![CDATA[CI/CD]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 26 Mar 2026 11:29:45 GMT</pubDate>
      <content:encoded><![CDATA[<h2>Почему WordPress?</h2><p>WordPress часто не любят backend-разработчики, и у каждого на это есть свои причины. Кому-то не нравится функциональный стиль разработки, кто-то критикует form-builder и экосистему плагинов. У других WordPress как CMS и PHP как язык программирования до сих пор ассоциируются со стереотипами 10–15-летней давности - будто они устарели и уступают современным технологиям.</p><p>При этом реальность такова, что и PHP, и WordPress - отличные и современные инструменты, которые очень хорошо выполняют свои задачи. Опустим PHP - статья не об этом. Что же можно сказать про WordPress как про продукт и как CMS?</p><p>WordPress по‑прежнему остаётся самой популярной системой управления контентом. Согласно данным команды WordPress, платформа обслуживает более 43% всех веб-сайтов и занимает долю в 61% на рынке CMS. Также статистика показывает, что WordPress используется примерно на 59% сайтов, где известна CMS (это около 42% всего веба).</p><p>Данные были взяты из официального блога WordPress и сайта w3techs.com:</p><ul><li><a href="https://wordpress.com/blog/2025/04/17/wordpress-market-share/" rel="nofollow">https://wordpress.com/blog/2025/04/17/wordpress-market-share/ </a></li><li><a href="https://w3techs.com/technologies/overview/content_management" rel="nofollow">https://w3techs.com/technologies/overview/content_management</a></li><li><a href="https://w3techs.com/technologies/details/cm-wordpress" rel="nofollow">https://w3techs.com/technologies/details/cm-wordpress</a></li></ul><p>При этом, традиционный WordPress объединяет CMS, шаблоны на PHP и монолитные темы. Такая связка усложняет разработку с использованием современных JS фреймворков, а также затрудняет независимое масштабирование фронтенда и бэкенда, и оптимизацию производительности и безопасности. Жёсткая связка страниц, устаревшие PHP‑функции и не самый удобный девелоперский опыт часто заставляют команды искать альтернативы.</p><p>Headless WordPress решает эти проблемы: CMS становится админ-панелью для управления контентом, а отдельный фронтенд отвечает за UI. Такое разделение обязанностей даёт несколько преимуществ: четкое разделение ответственности, независимое масштабирование интерфейса и CMS, упрощенную локальную разработку и CI/CD. CMS превращается в API‑ориентированное хранилище, а современные фреймворки вроде Next.js берут на себя маршрутизацию и рендеринг.</p><h2>Headless WordPress с использованием WPGraphQL</h2><p>Чтобы использовать WordPress как headless‑CMS, нужен API. Также есть интересный пост про headless wordpress в их <a href="https://wordpress.com/blog/2025/03/20/headless-wordpress/" rel="nofollow">официальном блоге</a>.</p><p>В WordPress из коробки есть REST API, но для frontend и mobile приложений часто удобнее использовать GraphQL. <a href="https://wordpress.org/plugins/wp-graphql/" rel="nofollow">WPGraphQL</a> - это open source плагин, который добавляет GraphQL API в WordPress. Используя WPGraphQL, мы получаем:</p><ul><li>Гибкие запросы к таким сущностям, как посты, страницы, произвольным типам постов, таксономиям и пользователям.</li><li>Систему расширений которая позволяет расширять функционал GraphQL бекенда и таким образом поддерживать популярные плагины, тем самым позволяя возвращать дополнительные поля которые не относятся к стандартным полям Wordpress.</li><li>GraphQL API, который даёт очень удобный формат для интеграции фронтенд фреймворков таких как Next.js, Astro и SvelteKit.</li><li>Оптимизацию производительности, поскольку клиент запрашивает только нужные поля и данные делая один запрос вместо группы REST запросов + отдельный фронтенд забирает на себя часть запросов.</li></ul><p>В дополнение к доступному функционалу WPGraphQL можно добавлять дополнительные плагины-расширения, такие как <a href="https://wordpress.org/plugins/add-wpgraphql-seo/" rel="nofollow">WPGraphQL Yoast SEO</a> и <a href="https://woographql.com/" rel="nofollow">WooGraphQL</a> (WPGraphQL для WooCommerce). Таким образом добавив несколько плагинов в базовую инсталляцию CMS можно из коробки получить полностью функциональный GraphQL бекенд, который может покрыть запросы для блога, сео функционал, онлайн-магазин и тд.</p><p>Важно отметить, что изначальная идея использовать WPGraphQL пришла из статьи в блоге <a href="https://vercel.com/kb/guide/wordpress-with-vercel" rel="nofollow">Vercel</a>.</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/838bc085-bfe5-4888-a326-6dcc00b0aaf5.webp" alt="Сравнение традиционного WordPress и headless WordPress: монолитная CMS с PHP темами против архитектуры с WPGraphQL API и Next.js фронтендом" /><figcaption>Традиционный WordPress vs Headless WordPress: разделение CMS и frontend через API (WPGraphQL + Next.js)</figcaption></figure><h2>Фронтенд на Next.js</h2><p><a href="https://nextjs.org/" rel="nofollow"> Next.js</a> - production-ready React-фреймворк, который разрабатывается компанией Vercel. Многие используют его по умолчанию для разных headless‑проектов. Наш пример headless-wordpress не исключение. Фреймворк предлагает удобную <a href="https://nextjs.org/docs/pages/building-your-application/routing" rel="nofollow">маршрутизацию</a> на базе файловой системы, где любой файл в папке pages автоматически становится маршрутом и поддерживает несколько стратегий рендеринга:</p><ul><li>Server‑side rendering (SSR) позволяет генерировать HTML при каждом запросе.</li><li>Статическая генерация (включая [Incremental Static Regeneration])</li><li>React Server Components, стратегия которая дает гибкость в балансировании производительности и кэширования.</li></ul><p>Это делает Next.js хорошей платформой для работы с GraphQL API и рендеринга страниц React‑компонентами. Если у вас нет опыта с <a href="http://nex.js">Next.js</a> и React, то это не повод не попробовать набросать POC в свободное время. Современные <a href="http://next.js">Next.js</a> и React templates + хороший AI agent помогут адаптировать UI под GraphQL для вас.</p><h2>Почему Cloudflare?</h2><p>Vercel очень часто является платформой по умолчанию для Next.js‑приложений. Более того Next.js адаптирован для запуска из коробки на серверах Vercel. При этом нужно добавить, что идея этой статьи не в том чтобы как-то компрометировать Vercel. Что же нужно знать про Cloudflare чтобы обратить внимание на этот сервис с точки зрения альтернативы для хостинга Next.js?</p><p>Согласно <a href="https://w3techs.com/technologies/details/cn-cloudflare" rel="nofollow">статистике</a>, реверс-прокси сервисы Cloudflare используются примерно на 21,9% всех сайтов в интернете, а это более 82% сайтов, где используется прокси‑сервисы в принципе. Такая распространённость говорит о масштабе, надежности и глобальном охвате сервиса. Но Cloudflare - это не только reverse-proxy. Компания разрабатывает целую группу облачных сервисов, включая такие сервисы, как Cloudflare Pages - альтернатива Github Pages, Workers - Serverless functions (по аналогии с AWS Lambda), Контейнеры, Очереди, AI сервисы, R2 Object Storage, и другие. В дополнение ко всему, компания предоставляет такие сервисы, как защита сайта (site-protection), VPN и капча (human-detection captcha). Такое разнообразие сервисов делает сервис очень распространенным.</p><h2>Лимиты бесплатного тарифа Cloudflare</h2><p>Одним из самых интересных аргументов в пользу Cloudflare можно считать их бесплатный тариф. Защита от DDoS, Universal SSL и глобальную CDN доступны бесплатно. Также бесплатный тариф включает большинство из вышеперечисленных облачных сервисов. Например, Cloudflare Workers, который можно использовать для хостинга Next.js-проектов, бесплатно даёт 100,000 запросов в день. Или R2 object storage - альтернатива S3 по умолчанию дает 10GB пространства, которое можно использовать для хранения статики или других данных. Этого более чем достаточно чтобы поэкспериментировать на выходных с новым стеком и вполне достаточно для того, чтобы бесплатно хостить ваш проект до тех пор пока у вас не пойдет серьезный трафик. Ниже приведена таблица с некоторыми из Cloudflare сервисов и что включено в бесплатный тариф.</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/826d92c6-cecd-4d70-a2ee-78733a324a70.webp" alt="Таблица сервисов Cloudflare (Workers, KV, D1, R2 и др.) с лимитами бесплатного тарифа и их назначением" /><figcaption>Cloudflare free tier: сервисы и лимиты, достаточные для запуска headless WordPress + Next.js проекта. Взято с https://dev.to/ioniacob/which-cloudflare-services-are-free-2025-free-tier-guide-53jl.</figcaption></figure><h2>Запуск Serverless функций на edge-серверах</h2><p>Cloudflare Workers позволяют запускать серверлесс‑код по всей сети Cloudflare. Ниже приведено изображение показывающее как работает Edge CDN, когда например статика продублирована на все доступные сервера и таким образом пользователь получает ресурсы с самого близлежащего сервера.</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/6c12d101-f282-4d1a-8d7a-b4119fabdfda.webp" alt="Схема работы CDN: пользователи обращаются к ближайшим edge-серверам, которые кешируют контент и уменьшают нагрузку на origin-сервер" /><figcaption>Как работает CDN: пользователь получает контент с ближайшего edge-сервера, снижая задержку и нагрузку на origin. Источник: https://www.cloudflare.com/learning/cdn/what-is-a-cdn/</figcaption></figure><p>Эта картинка хороша тем, что аналогично CDN статике на этих же серверах можно запускать и Workers (Lambda) функции, тем самым ускоряя вашу инфраструктуру еще больше.</p><p>Одной из интересных особенностей Workers-функций является отсутствие cold-starts. Любой cloud provider обычно подымает docker container или виртуализированное окружение в момент первого запуска программы, а это всегда задержка. Минусом Workers-функций является тот факт что их Runtime API требует чтобы код мог использовать их Web platform APIs. А это в свою очередь ограничивает выбор языка программирования: Javascript, Typescript и WebAssembly. Но благодаря такому подходу Workers используют изолированную модель запуска  и могут быть прогреты еще до момента запуска кода этого воркера. Прогрев начинается еще на этапе TLS-соединения между клиентом и серверами Cloudflare. Полный текст статьи можно почитать в их <a href="https://blog.cloudflare.com/eliminating-cold-starts-with-cloudflare-workers/" rel="nofollow">блоге</a>.</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/4bcd2a0a-5161-46f5-984c-87f4097411dc.webp" alt="Схема работы Cloudflare Workers: прогрев (warmup) и загрузка воркера происходят во время TLS handshake до выполнения HTTP-запроса" /><figcaption>Как Cloudflare Workers устраняют cold-start: прогрев воркера происходит ещё на этапе TLS-соединения.</figcaption></figure><p>Воркеры выполняются на edge-серверах, которые находятся ближе всего к пользователям, тем самым уменьшая задержку и разгружая origin‑сервер (в нашем случае WordPress backend). По аналогии с другими cloud-провайдерами, код внутри Workers Runtime может использовать другие сервисы Cloudflare, такие как:</p><ul><li><a href="https://developers.cloudflare.com/workers/runtime-apis/cache/" rel="nofollow">Cache API</a> - позволяет читать и записывать данные в глобальный edge‑кэш через caches.default, что удобно для кэширования GraphQL‑ответов или страниц Next.js.</li><li><a href="https://developers.cloudflare.com/kv/" rel="nofollow">Workers KV</a> - распределенное key‑value‑хранилище для конфигурации и небольших наборов данных; можно хранить и получать данные глобально с низкой задержкой.</li><li><a href="https://developers.cloudflare.com/workers/configuration/cron-triggers/" rel="nofollow">Cron Triggers</a> - можно сопоставить cron‑выражение с обработчиком scheduled(), чтобы запускать периодические задачи, например, уборку кэша или обновление данных. Триггеры выполняются на малоиспользуемых машинах, максимизируя эффективность.</li></ul><p>Наличие доступа к дополнительным сервисам, таким как базы данных (D1), объектное хранилище (R2), очереди и AI даёт свободу строить более сложные и гибкие архитектуры, что очень полезно в дальнейшем на больших масштабах.</p><h2>OpenNext: мост между Next.js и Cloudflare</h2><p>Самостоятельный деплой Next.js на разные платформы непрост, поскольку среда исполнения Vercel отличается от других. Можно поднять Next.js на Node‑сервере, но его работа отличается от edge‑режима Vercel. OpenNext - это проект с открытым исходным кодом, который адаптирует Next.js для разных серверлесс‑платформ. Важно сказать что у Next.js нет нативного способа само разворачивания на других платформах, кроме Vercel; существующие отдельные адаптеры разрознены и сложны в поддержке. <a href="https://opennext.js.org/" rel="nofollow">OpenNext</a> объединяет усилия в одном адаптере, переводя выход сборки Next.js в формат, совместимый с основными облачными платформами. Проект поддерживают сообщество SST (AWS), команда Cloudflare и Netlify. Соответственно, с помощью OpenNext можно развернуть Next.js на Cloudflare Workers, сохраняя SSR, статическую генерацию и API‑маршруты.</p><p>Cloudflare‑адаптер устанавливается через @opennextjs/cloudflare. Далее следует установить<a href="https://developers.cloudflare.com/workers/wrangler/"> Wrangler</a>, настроить wrangler.toml с вашим Account ID и создать open-next.config.ts для управления кэшем и ассетами. Адаптер собирает приложение Next.js под среду Cloudflare, создает edge‑воркер и конфигурирует кэш для статики и ISR‑страниц (например, используя R2). После публикации Git‑интеграция Cloudflare автоматически разворачивает приложение при каждом пуше в GitHub или GitLab, а для pull‑request создает превью.</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/ffd3d8f8-9e94-4ee2-b1b8-7b7d075a9bbd.webp" alt="Логотипы OpenNext, Cloudflare, AWS Amplify и Netlify, показывающие поддержку деплоя Next.js на разные cloud-платформы" /><figcaption>OpenNext как единый адаптер для деплоя Next.js приложений на разные платформы: Cloudflare, AWS и Netlify</figcaption></figure><h2>Кэширование и уровни производительности</h2><p>Архитектура headless WordPress + Next.js + Cloudflare обычно включает несколько уровней кэша:</p><ol><li>Кэш браузера - стандартный HTTP‑кэш на стороне клиента.</li><li>Кэш edge‑рантайма - Cache API Cloudflare Workers сохраняет HTML‑страницы или GraphQL‑ответы рядом с пользователем; при попадании в кэш контент отдаётся мгновенно, а промахи идут к воркеру или origin.</li><li>Кэш ISR Next.js - технология Incremental Static Regeneration сохраняет отрендеренные страницы на сервере и обновляет их по запросу, снижая нагрузку на WordPress API.</li><li>Кэш GraphQL - API WPGraphQL может реализовывать кэширование по времени или тегам (например, через WPGraphQL Smart Cache), чтобы управлять сроком жизни ответов.</li></ol><p>Эта многоуровневая иерархия кэша обеспечивает, что большинство запросов вообще не доходят до вашего WordPress‑сервера, повышая производительность и снижая нагрузку.</p><p>Пример конечной архитектуры показан на изображении ниже.</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/37141150-e160-423b-a8cd-3784117e6499.webp" alt="" /><figcaption>Архитектура headless WordPress + Next.js на Cloudflare: edge-рендеринг, многоуровневый кэш и взаимодействие с WPGraphQL</figcaption></figure><h2>Автоматизация периодических задач</h2><p>Headless‑сайтам часто требуются периодические действия - например, обновление кэша ISR или синхронизация данных. Cron Triggers Cloudflare позволяют планировать запуск воркера по cron‑выражению. Обработчик scheduled() срабатывает по расписанию и подходит для обслуживания и получения сторонних данных. Триггеры выполняются на малоиспользуемых машинах по всему миру и легко управляются через Wrangler или панель Cloudflare.</p><h2>Модернизация PHP‑стека с Roots toolkit</h2><p>Хотя headless WordPress переносит рендеринг на JavaScript, CMS всё ещё нужно поддерживать. В качестве бонуса хочется порекомендовать экосистему <a href="https://roots.io/" rel="nofollow">Roots</a>, которая предлагает современный инструментарий для разработки на WordPress:</p><figure><img src="https://media.tproger.ru/user-uploads/136948/2026-03-25/27e070e5-39c8-425b-8142-b0b2ce0af69d.webp" alt="Скриншот сайта Roots с описанием инструментов для разработки WordPress: Bedrock, Sage, Trellis и Acorn" /><figcaption>Roots — современный инструментарй для разработки WordPress с использованием Composer, Blade и автоматизированного деплоя. Источник: Roots - https://roots.io/</figcaption></figure><ul><li><a href="https://roots.io/bedrock/" rel="nofollow">Bedrock</a> - шаблон WordPress, которая устанавливает ядро, плагины и темы через Composer. Таким образом Bedrock дает современную для PHP проектов структуру проекта, улучшает структуру папок, использует концепты Двенадцать факторов для конфигурации приложения с помощью .env‑файлы и тд. Более того, управление зависимостями через Composer повышает надежность и позволяет делать деплой приложения на разные сервера без страха что-то забыть или упустить.</li><li><a href="https://roots.io/sage/" rel="nofollow">Sage</a> - стартовая тема WordPress, использующая Blade от Laravel для шаблонов и интегрирующая Tailwind CSS. Sage автоматически генерирует theme.json из конфигурации Tailwind, поддерживает live preview блокового редактора с Vite и позволяет создавать компоненты на Blade. Это помогает фронтенд‑разработчикам отойти от устаревших подходов для разработки тем Wordpress с нуля.</li><li><a href="https://roots.io/trellis/" rel="nofollow">Trellis</a> - DevOps‑инструмент на базе Ansible, который поднимает серверы и автоматизирует деплой. Trellis предоставляет LEMP‑стек (Ubuntu 24.04, Nginx, PHP 8.3, MariaDB), выполняет деплой без downtimes и из коробки поддерживает SSL‑сертификаты. CLI помогает создавать и настраивать серверы, а также разворачивать проекты с атомарными релизами и откатами.</li><li><a href="https://roots.io/acorn/" rel="nofollow">Acorn</a> - интеграция, позволяющая использовать функционал Laravel в WordPress. С Acorn становятся доступны такие инструменты как Blade‑шаблоны, миграции, роутинг, кэширование и Artisan‑подобный CLI внутри WordPress. Это позволяет разработчикам строить плагины и фичи WordPress с использованием современных PHP‑подходов и современного фреймворка .</li></ul><p>Эти инструменты показывают, что экосистема WordPress продолжает развиваться и хорошо сочетается с современными подходами. Иными словами, WordPress - отличное решение, если знать, как его правильно готовить.</p><h2>Собираем всё вместе</h2><p>Архитектура приложения headless WordPress + Next.js + Cloudflare выглядит приблизительно так:</p><ol><li>WordPress (headless) - работает на традиционном сервере или в контейнере. Редакторы управляют контентом в админке. WPGraphQL и его расширения предоставляют GraphQL‑endpoint с данными, SEO и другой информацией, например данными о магазине.</li><li>Next.js фронтенд - React‑приложение, которое получает данные через GraphQL, рендерит страницы на сервере (SSR) или статически (ISR/SSG) и обрабатывает маршрутизацию и взаимодействие с клиентом. Код хранится в Git и автоматически разворачивается благодаря Git‑интеграции Cloudflare.</li><li>Cloudflare Workers - размещают приложение Next.js на edge через OpenNext. Workers исключают cold-starts и работают по аналогии с CDN как можно ближе к пользователю. Они также выполняют кэширование, обрабатывают API‑маршруты и запускают cron‑задачи.</li><li>Кэш на edge и в браузере - несколько уровней кэша гарантируют быструю отдачу статики и отрендеренных страниц. KV, R2 или D1 могут хранить дополнительные данные вроде сессий или объектов.</li></ol><h2>Заключение</h2><p>Headless‑архитектура объединяет универсальность WordPress и гибкость современных JavaScript‑фреймворков. Экспонируя контент через WPGraphQL и потребляя его в Next.js, можно получить больше контроля над рендерингом и тем самым улучшить производительность. Размещение фронтенда на Cloudflare Workers через OpenNext позволяет приблизить фронтенд код к пользователям, устраняет cold-starts, позволяет использовать free-tier и продвинутые уровни кэширования. Инструменты вроде Bedrock, Sage, Trellis и Acorn модернизируют PHP/Wordpress‑сторону и делают CMS такой же удобной в работе, как и современный Next.js/React-фронтенд. Вместе эти технологии создают мощный стек для создания быстрых, масштабируемых и безопасных сайтов, будь то хакатон, pet‑проект или серьёзный продакшн.</p>]]></content:encoded>
    </item>
    <item>
      <title>ИИ все чаще выдает номера мошенников, когда пользователи ищут техподдержку</title>
      <link>https://tproger.ru/news/ii-vse-chashhe-vydaet-nomera-mowennikov--kogda-polzovateli-ishhut-tehpodderzhku</link>
      <comments>https://tproger.ru/news/ii-vse-chashhe-vydaet-nomera-mowennikov--kogda-polzovateli-ishhut-tehpodderzhku?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Булат Яббаров]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/ii-vse-chashhe-vydaet-nomera-mowennikov--kogda-polzovateli-ishhut-tehpodderzhku</guid>
      <description><![CDATA[<p>ИИ-боты все чаще выдают мошенников как «службы поддержки»: фальшивые номера попадают в ответы через отравленный контент в сети</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/ii-vse-chashhe-vydaet-nomera-mowennikov--kogda-polzovateli-ishhut-tehpodderzhku">ИИ все чаще выдает номера мошенников, когда пользователи ищут техподдержку</a>»</p>]]></description>
      <category><![CDATA[SEO]]></category>
      <category><![CDATA[Google]]></category>
      <category><![CDATA[Искусственный интеллект]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Сервисы]]></category>
      <category><![CDATA[YouTube]]></category>
      <category><![CDATA[Взлом]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Wed, 10 Dec 2025 10:39:58 GMT</pubDate>
      <content:encoded><![CDATA[<p><b>Киберпреступники</b> нашли новый способ ловить жертв: теперь <b>они подсовывают фейковые телефоны техподдержки</b> не только в Google, но и в ответы ИИ чат-ботов.</p><p>Об этом говорится в новом отчете компании <i>Aurascape</i>, специализирующейся на информационной безопасности для систем с ИИ.</p><p>Схема проста: <b>злоумышленники массово размещают спам-контент с нужными им номерами на разных сайтах</b>. Более сложный вариант — взломать «уважаемый» ресурс на WordPress: сайт госоргана, университета или популярный блог и незаметно вставить туда блок «помощи» с ложным номером.</p><p>Есть методы и попроще. Например, использовать площадки с пользовательским контентом: YouTube, форумы и отзывы о компаниях. Там публикуются «гайды» вида <i>«номер телефона для брони Emirates: +1-8xx…»</i>, щедро пересыпая текст ключевыми фразами «служба поддержки», «официальный номер» и т.п.</p><h2>GEO/AEO: новый уровень SEO для обмана ИИ</h2><p>Главный трюк — не просто попасть в поисковую выдачу, а <b>стать единственным источником</b>, который выберет ИИ-ассистент.</p><p>Aurascape называет это <b>Generative/Answer Engine Optimization (GEO/AEO)</b>. То есть злоумышленники специально оформляют контент в формате вопрос–ответ или списков, которые модели любят превращать в «готовые» ответы.</p><p>Итог: когда пользователь спрашивает у ИИ <i>«номер бронирования Emirates»</i>, некоторые системы (в тестах Aurascape это были <b>Perplexity</b> и <b>Google AI Overviews</b>) выдавали прямо в ответе телефон мошенников, уверенно называя его «службой поддержки».</p><p>Важно, что сами модели при этом не взламывают: они просто честно пересказывают отравленный контент, который нашли в сети.</p><h2>Как реагируют сервисы и что делать пользователям</h2><p>После публикации отчета, журналисты Gizmodo <a href="https://gizmodo.com/ai-scam-phone-numbers-2000697589">повторили</a> запросы к Perplexity. Теперь бот вместо номера советует открыть официальный сайт Emirates.</p><p>Пока универсальное правило защиты одно:</p><ul><li><b>не доверять номерам</b>, которые выдал чат-бот;</li><li><b>всегда проверять телефоны и ссылки</b> на официальных сайтах компаний;</li><li><b>внимательно смотреть на домен</b> (разница между emirates.com и похожими подделками — критична).</li></ul><p>ИИ может помочь найти информацию, но ответственность за проверку по-прежнему на пользователе.</p>]]></content:encoded>
    </item>
    <item>
      <title>Как сделать свой первый сайт на HTML и CSS: пошаговая инструкция</title>
      <link>https://tproger.ru/articles/kak-sdelat-svoj-pervyj-sajt-na-html-i-css--powagovaya-instrukciya</link>
      <comments>https://tproger.ru/articles/kak-sdelat-svoj-pervyj-sajt-na-html-i-css--powagovaya-instrukciya?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Вадим Егорцев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/kak-sdelat-svoj-pervyj-sajt-na-html-i-css--powagovaya-instrukciya</guid>
      <description><![CDATA[<p>Как сделать на HTML и CSS. Показываем, какими навыками нужно обладать для создания сайтов. Рассматриваем пошаговую инструкцию и основные нюансы ✔ Tproger</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/kak-sdelat-svoj-pervyj-sajt-na-html-i-css--powagovaya-instrukciya">Как сделать свой первый сайт на HTML и CSS: пошаговая инструкция</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[JavaScript]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[Опрос]]></category>
      <category><![CDATA[MySQL]]></category>
      <category><![CDATA[Google]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[CSS]]></category>
      <category><![CDATA[SQL]]></category>
      <category><![CDATA[Работа]]></category>
      <category><![CDATA[HTML]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[HR]]></category>
      <category><![CDATA[Фронтенд]]></category>
      <category><![CDATA[Сервер]]></category>
      <category><![CDATA[Бизнес]]></category>
      <category><![CDATA[Разработка]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 23 Jun 2025 14:00:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Tilda, Wix, WordPress — конструкторы сайтов кажутся простым решением. Согласны, на готовых блоках можно сделать интернет-магазин за 1 час. Но учтите, что в конструкторе непонятно, как всё работает изнутри. Вы не поймёте, почему сайт долго грузится, как увеличить кнопку для смартфонов и т. д.</p><p><b>Выбрали путь программиста</b>? Значит навсегда запомните, когда опубликовали первый самописный сайт. Откосить не получится: мы сразу перейдём к практике — к концу статьи у вас будет ссылка на сайт-визитку.</p><p><b>Мало времени</b>? Выделите 10 минут — мы используем только HTML и CSS.</p><p>Вы узнаете:</p><ul><li>как подключать стили,</li><li>как верстать блоки,</li><li>как опубликовать сайт.</li></ul><p>Возможно сейчас вы убедитесь, что веб-разработка — это ваше призвание, и захотите продолжить обучение профессии.</p><h2>Шаг 1. Подготовим инструменты и папку проекта</h2><p>Сайт можно писать и в блокноте. Это как забивать гвозди камнем – работает, но зачем мучиться? <b>Редактор кода подсвечивает синтаксис, подсказывает команды и сразу указывает на ошибки</b>.</p><p>Новичкам рекомендуем ставить <b>Visual Studio Code (VS Code)</b>. Он бесплатный, не тормозит и понимает любой код. Плюс у него огромное сообщество — если нужно установить плагин или увеличить шрифт, ответ на вопрос уже есть в интернете.</p><p><a href="https://code.visualstudio.com/download">Скачайте VS Code с официального сайта</a>.</p><h2>Как устроен веб-проект</h2><p><b>Сайт</b> — это папка с файлами для браузера.</p><p>HTML-файл содержит текст и разметку страницы, CSS-файл — правила оформления. Браузер берёт эти два файла и показывает веб-страницу.</p><p>Основной файл сайта обычно называют <i>index.html</i>. Стили хранятся в <i>style.css</i>.</p><p>Кроме файлов HTML и CSS, в нашем проекте будут папки:</p><ul><li><i>img </i>— для картинок.</li><li><i>fonts </i>— для шрифтов.</li></ul><p><b>Создайте на рабочем столе папку с названием сайта</b>, например <i>first-site</i>, и соберите начальную структуру — это займёт 1 минуту.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/5ba1fa76-6d96-4b7b-aac4-633a4d251a7e.jpg" alt="" /><figcaption>Типичная структура веб-проекта</figcaption></figure><h2>Шаг 2. Создадим базовую HTML-страницу</h2><p>В VS Code есть удобная фишка: наберите символ «!» и нажмите Tab. Редактор <b>автоматически </b>создаст базовую структуру HTML-документа.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/3fbcd34e-cf7c-473c-b0cf-84260e9aa42c.jpg" alt="" /><figcaption>Структура HTML-документа в VS Code</figcaption></figure><p>Как читать структуру:</p><ul><li><i></i><b>&lt;!DOCTYPE html&gt; </b>—<b> </b>сообщает браузеру, что это HTML-документ.</li><li><i></i><b>&lt;html&gt; </b>—<b> </b>корневой элемент, внутри которого живёт страница.</li><li><i></i><b>&lt;head&gt; </b>—<b> </b>служебная информация, которую не видно на странице.</li><li><i></i><b>&lt;body&gt; </b>—<b> </b>то, что увидят пользователи на странице.</li></ul><p><b>Измените Document на название вашего сайта</b> — это текст, который появится во вкладке браузера.</p><p>Добавим контент в &lt;body&gt;:</p><p>Мы не комментируем каждый тег и атрибут, потому что это тема для отдельной статьи. Наша задача — показать, как быстро собрать сайт и выложить его в интернет.</p><p><b>Сохраните HTML-файл и откройте его в браузере</b>. Поздравляем, ваша первая веб-страница готова! Она недоступна другим пользователям, но мы это исправим.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/c3588fae-fe59-447a-9045-d7f7ada0161c.jpg" alt="" /><figcaption>HTML-страница без стилей</figcaption></figure><h2>Шаг 3. Подключим стили CSS</h2><p>Сейчас сайт выглядит странно — чёрный текст на белом фоне. Так не пойдёт, добавим стилей в файле <i>style.css</i>.</p><p>CSS можно писать внутри HTML или в отдельном файле. Мы выберем второй вариант, потому что это удобнее.</p><p>Подключим CSS к HTML. В секции <i></i> вашего <i>index.html</i> добавьте строчку:</p><p>Тег <i> </i>говорит браузеру: «Возьми файл <i>style.css</i> из той же папки и примени все стили к этой странице».</p><p>Добавьте в <i>style.css </i>первое правило:</p><p><b>Сохраните оба файла </b>—<b> HTML и CSS</b>. Обновите страницу в браузере.</p><p>Фон поменял цвет? Значит, CSS подключён правильно. Можете вернуть белый фон или оставить голубой — далее мы добавим более интересные стили.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/95a0bd53-c4a5-4139-92c5-1c1fdda3916b.jpg" alt="" /><figcaption>Применили стиль к фону страницы</figcaption></figure><h2>Шаг 4. Подключим шрифты</h2><p>Есть три способа избавиться от дефолтного Times New Roman:</p><ul><li>Google Fonts — бесплатная библиотека шрифтов от Google.</li><li>Локальные файлы — загружаете шрифт на свой сервер.</li><li>Системные шрифты — используете то, что уже есть на компьютере пользователя.</li></ul><p><b>Для первого сайта на HTML и CSS рекомендуем Google Fonts</b> — это просто, быстро и надёжно.</p><p>Перейдите на <a href="http://fonts.google.com">fonts.google.com</a> и выберите шрифт. Популярные варианты: Roboto, Open Sans, Lato, Montserrat. Нажмите на понравившийся шрифт, выберите начертания (тонкий, обычный или жирный), скопируйте код подключения и вставьте в <i>head</i>.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/19c3409f-ea46-42fb-a56d-2680820d1fb3.jpg" alt="" /><figcaption>Подключение всех начертаний Montserrat в Google Fonts</figcaption></figure><p>На Google Font собраны популярные шрифты. Если этого мало, нужно скачать шрифт (.woff, .woff2, .ttf) и поместить в папку fonts.</p><p>Путь к файлу указывается относительно CSS-файла. Подключаем начертания через <i>@font-face:</i></p><p>Теперь используйте шрифт в CSS:</p><p>Для каждого начертания (обычный, жирный, курсив) нужно отдельное правило <i>@font-face</i>.</p><h2>Шаг 5. Сверстаем блоки</h2><p>Замените содержимое вашего <i>style.css</i> на этот код:</p><p>Что мы делаем:</p><ul><li>Убираем стандартные отступы браузера и задаём голубой фон.</li><li>Центрируем карточку по всей странице с помощью flexbox.</li><li>Создаём белую карточку с тенью и скруглёнными углами.</li><li>Делаем круглый аватар с рамкой.</li><li>Стилизуем текст и кнопку.</li><li>Добавляем эффект при наведении на кнопку.</li></ul><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/d89d9cf8-b178-4794-bd56-00997cf45750.jpg" alt="" /><figcaption>Простая визитка на HTML и CSS с анимированной кнопкой и ссылкой на Телеграм</figcaption></figure><h2>Шаг 6. Загрузим сайт на хостинг</h2><p>Чтобы визиткой можно было поделиться, нужно загрузить файлы на <b>хостинг</b>. Это сервер, который работает круглосуточно и показывает ваш сайт всем желающим. Посмотреть, как это работает, можно на бесплатном тарифе.</p><p>Заходим на сайт хостинга (Beget, Hostiman, InfinityFree) и регистрируемся. После подтверждения email вы попадёте в панель управления. Система предложит выбрать домен — берите бесплатный типа название.<b>fwh.is</b>.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/26a6c762-28f6-4c16-9db2-9963b1468a14.jpg" alt="" /><figcaption>Выбор бесплатного поддомена на InfinityFree</figcaption></figure><h2>Загружаем файлы на сервер</h2><p>После создания аккаунта появится доступ к файловому менеджеру. Через веб-интерфейс можно управлять файлами на сервере прямо из браузера. Перейдите в папку <i>htdocs </i>— это корневая директория вашего сайта, куда нужно загружать структуру.</p><p>Удалите лишние файлы по типу <i>default.php</i> и загрузите ваши файлы: <i>index.html</i>, <i>style.css</i>,  <i>папки img и fonts</i>. Основной <i>index.html </i>должен лежать прямо в <i>htdocs</i>, а не во вложенной папке — иначе сайт не откроется.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/142fed8d-33ff-4d1a-bc2c-0bb97effdbb8.jpg" alt="" /><figcaption>Менеджер файлов InfinityFree</figcaption></figure><p>Более продвинутый способ — использовать FTP-клиент <a href="https://filezilla-project.org/">FileZilla</a>. В панели хостинга найдите FTP-данные и подключитесь через программу. Это удобнее для больших проектов, но для первого сайта веб-менеджера будет достаточно.</p><h2>Проверяем результат</h2><p>Через несколько минут после загрузки ваш сайт будет доступен по адресу. Откройте его в браузере — если всё сделано правильно, увидите свою страницу. Если что-то не работает, проверьте, что <i>index.html</i> лежит в корне <i>htdocs</i>, а <i>style.css</i> загружен в ту же папку.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-06-06/28368cd4-887b-41fe-8930-37b51e3875e2.jpg" alt="" /><figcaption>Опубликованная визитка на HTML и CSS</figcaption></figure><h2>Реальность бесплатного хостинга</h2><p>Для изучения основ и создания первых проектов на HTML и CSS это отличный вариант. Регистрация занимает 1 минуту, никаких настроек, можно сразу экспериментировать и видеть результат.</p><p><b>Помните про обратную сторону медали</b>. Бесплатные хостинги жёстко ограничивают ресурсы — трафик, место на диске, нагрузку на сервер. Иногда вставляют рекламу на ваш сайт. Серверы часто «падают» — страница может быть недоступна по несколько часов.</p><p>Самая большая проблема — нестабильность бизнеса. Бесплатные хостинги закрываются без предупреждения. Сегодня ваш сайт работает, а завтра компания решила, что бесплатные услуги больше не окупаются.</p><p>Скрытые ограничения:</p><ul><li>В рекламе бесплатные хостинги обещают безлимитный трафик и неограниченное место, но вынуждают переходить на платный тариф после 100 посетителей в день.</li><li>Про индексацию можно забыть — поисковые системы не пропустят бесплатные поддомены на первые страницы выдачи.</li><li>На бесплатных хостингах слабая защита. Ваш сайт могут использовать для размещения вредоносного кода, а вы об этом даже не узнаете.</li></ul><h2>Когда стоит переходить на платный хостинг</h2><p>Бесплатный хостинг — это тренировочная площадка, а не постоянное решение. Если планируете заниматься веб-разработкой, создавать портфолио или коммерческие проекты, лучше сразу инвестировать в качественный хостинг и собственный домен.</p><p>Самый простой домен стоит 200-1000 рублей/год, а базовый хостинг — 100-300 рублей/месяц. Плюс получите доступ к технологиям (PHP, MySQL), более стабильную работу и нормальную техподдержку. <b>Начните с минимального тарифа </b>— <b>его хватит на тренировочные проекты, а потом можно масштабироваться</b>.</p><h2>Куда двигаться дальше?</h2><p>Мы создали первый сайт и опубликовали его в интернете. Если повторяли за нами то поздравляем — многие останавливаются на теории, а вы дошли до результата. Теперь у вас есть понимание основ:</p><ul><li>как работает HTML,</li><li>зачем нужен CSS,</li><li>что такое хостинг и домен.</li></ul><p><b>Следующий шаг</b> — подробнее изучить CSS. Сайт-визитка из примера нормально отображается только на больших экранах. Однако 60% пользователей <a href="https://gs.statcounter.com/platform-market-share/desktop-mobile-tablet">заходит</a> с телефонов. Изучите медиазапросы, они применяются только на определённых размерах дисплея.</p><p>Подробнее про адаптив рассказал старший фронтенд-разработчик Никита Кушнарёв: <a href="https://tproger.ru/articles/esli-vy-umeete-pokrasit-knopochku-no-hotite-uznat-bolshe-o-vjorstke-veb-prilozhenij">Если вы умеете покрасить кнопочку, но хотите узнать больше о вёрстке веб-приложений</a>.</p><p>Попробуйте переделать карточку так, чтобы она нормально выглядела на телефоне. Уменьшите размеры, измените отступы, сделайте кнопку на всю ширину. Потом изучите <a href="https://tproger.ru/articles/css-grid-i-flexbox--evolyuciya-maketov-v-veb-dizajne">Flexbox и CSS Grid</a> — современные способы вёрстки макетов.</p><p>Когда почувствуете уверенность в CSS, пора знакомиться с <b>JavaScript</b>. Это язык программирования, который делает сайты интерактивными. Сложные анимации, всплывающие окна, динамическое изменение контента — это JS. Предупреждаем, он сложнее HTML и CSS. В нём есть функции, условия, циклы — всё то, что пугает новичков.</p><p>Подробнее про JavaScript: <a href="https://tproger.ru/articles/javascript-s-nulja-dorozhnaja-karta">Разработка на JavaScript с нуля: дорожная карта</a>.</p><p><b>Изучайте инструменты разработчика</b> в браузере. Нажмите F12 на любом сайте — откроется интерфейс для просмотра структуры сайта, отладки JS, тестирования адаптива. Смотрите, как устроены другие сайты, изучайте чужой код.</p><p>Самое время узнать о большем количестве инструментов программиста. Читайте в нашем <a href="https://t.me/+N9AAs1a82VA1MDMy">тг-канале!</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Разработчик развеял мифы о чистом коде, трендах и идеальном программировании</title>
      <link>https://tproger.ru/news/--razrabotchik-razveyal-mify-o-chistom-kode--trendah-i-idealnom-programmirovanii-255770</link>
      <comments>https://tproger.ru/news/--razrabotchik-razveyal-mify-o-chistom-kode--trendah-i-idealnom-programmirovanii-255770?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Булат Яббаров]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/--razrabotchik-razveyal-mify-o-chistom-kode--trendah-i-idealnom-programmirovanii-255770</guid>
      <description><![CDATA[<p>Разработчик развеял мифы о чистом коде и трендах — почему идеальное программирование не всегда оправдано в реальных проектах</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/--razrabotchik-razveyal-mify-o-chistom-kode--trendah-i-idealnom-programmirovanii-255770">Разработчик развеял мифы о чистом коде, трендах и идеальном программировании</a>»</p>]]></description>
      <category><![CDATA[Java]]></category>
      <category><![CDATA[C++]]></category>
      <category><![CDATA[Производительность]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[Работа]]></category>
      <category><![CDATA[Советы]]></category>
      <category><![CDATA[Rust]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 12 May 2025 03:42:44 GMT</pubDate>
      <content:encoded><![CDATA[<p>В мире разработки часто звучат советы писать чистый код, использовать TDD и быть в курсе последних технологий. Однако Амрит Пандей — разработчик с многолетним опытом, работавший как с модными фреймворками, так и с «устаревшими» технологиями — <a href="https://amritpandey.io/programming-myths-we-desperately-need-to-retire/">развеял</a> несколько мифов об идеальном программировании.</p><p>Больше новостей — в нашем тг-канале «<a href="https://t.me/your_tech">Представляешь»</a></p><p>Он отмечает, что многие советы кажутся логичными на бумаге, но в реальной работе теряют свою ценность.</p><p>Например, философия чистого кода, популяризированная дядей Бобом, действительно помогает писать понятный и поддерживаемый код, но её применение может быть сложным в старых, нагруженных легаси-системах. Многие из них были созданы задолго до появления современных принципов, и переписывать их просто ради красоты — не всегда оправданно.</p><h2>Тренды не всегда важны</h2><p>Ещё один миф — необходимость следовать последним технологическим трендам. Разработчик напоминает, что PHP, которому часто предрекают конец, всё ещё используется на большинстве сайтов, включая WordPress. А Java и C/C++ продолжают работать в критически важных системах и управляют миллиардами устройств:</p><blockquote><i>«Новые технологии, такие как Rust или Next.js, действительно крутые, но это не значит, что работа с устаревшими системами делает вас менее ценным специалистом»</i></blockquote><h2>Производительность не главное</h2><p>Автор также развенчивает культ оптимизации. Многие разработчики стремятся к максимальной скорости кода, забывая, что для большинства бизнес-систем надёжность и стабильность важнее скорости.</p><p>Например, банкоматы работают на старых финансовых системах, и никто не требует от них микросекундной реакции — главное, чтобы деньги выдавались исправно.</p><h2>Масштабируемость — не всегда приоритет</h2><p>Разработчик подчёркивает, что большинство стартапов не требуют архитектур, готовых к миллионам пользователей. Стремление проектировать системы для гипотетических нагрузок часто приводит к усложнению кода и потере фокуса на реальных задачах бизнеса.</p><h2>ИИ не заменит программистов</h2><p>И наконец, автор отрицает миф о том, что ИИ заменит разработчиков. По его словам, ИИ может помочь автоматизировать рутинные задачи, но не заменит людей, которые понимают бизнес-логику и умеют принимать сложные архитектурные решения.</p>]]></content:encoded>
    </item>
    <item>
      <title>Курсы по WordPress: бесплатные и платные варианты — обучение созданию сайтов с нуля</title>
      <link>https://tproger.ru/articles/kursy-po-sozdaniyu-sajtov-na-wordpress-254288</link>
      <comments>https://tproger.ru/articles/kursy-po-sozdaniyu-sajtov-na-wordpress-254288?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Анастасия Шишкина]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/kursy-po-sozdaniyu-sajtov-na-wordpress-254288</guid>
      <description><![CDATA[<p>Рейтинг и сравнение всех онлайн-курсов по разработке на WordPress. Выбирайте лучшие обучающие курсы по созданию сайта. Отзывы про школы и курсы</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/kursy-po-sozdaniyu-sajtov-na-wordpress-254288">Курсы по WordPress: бесплатные и платные варианты — обучение созданию сайтов с нуля</a>»</p>]]></description>
      <category><![CDATA[Для начинающих]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Образование]]></category>
      <category><![CDATA[Обучающие курсы]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 06 Feb 2025 17:00:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Верстка сайтов востребована как среди малых бизнесов, так и среди крупных компаний, поэтому курсы по WordPress пользуются спросом. На таких программах вы освоите навыки веб-разработки: от настройки хостинга до создания уникального дизайна. WordPress известен своей простотой и универсальностью, благодаря чему администрировать сайт могут даже те, кто не имеет технического образования. Вы научитесь создавать лендинги, корпоративные сайты и блоги, настраивать плагины для SEO и оптимизации скорости, а также обеспечивать безопасность веб-ресурсов.</p><p>Вместе с экспертами <a href="https://kursfinder.ru/">Kursfinder</a> я изучила более 50 предложений, чтобы отобрать 36 лучших онлайн-курсов по созданию сайтов на WordPress. Для удобства я разделила курсы на несколько подборок. В первой вы найдете 10 лучших программ, которые выделяются своим качеством и содержанием. Далее представлены 6 дополнительных вариантов на случай, если ни один из лидеров вам не подойдет. А в заключении — список бесплатных курсов для тех, кто хочет начать обучение без вложений. С <a href="https://kursfinder.ru/kursy-wordpress/">полным каталогом курсов по WordPress</a> можно ознакомиться на сайте Kursfinder.</p><h2>ТОП-10 лучших курсов по WordPress в 2026 году</h2><ol><li><a href="https://experts2.ru/SvsmgA?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=1">Онлайн-курс по WordPress</a> от HEDU (irs.academy) — интенсивные занятия для полного погружения в тему.</li><li><a href="https://experts2.ru/gfiyAT?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=2">Посадка верстки и создание тем на CMS WordPress</a> от beONmax.com — курс для освоения не только верстки, но и «изнанки» сайта.</li><li><a href="https://experts2.ru/EkayHp?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=3">WordPress Интернет магазин с нуля</a> от itProger — создание своего онлайн-магазина с любого уровня подготовки.</li><li><a href="https://experts2.ru/oxvIfU?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=4">WordPress – Быстрый старт!</a> от beONmax.com — экспресс-обучение для первого знакомства с CMS.</li><li><a href="https://experts2.ru/amngLG?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=5">Создание сайта на WordPress</a> от itProger — основы работы с интструментом Wordpress.</li><li><a href="https://experts2.ru/JpvaBm?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=6">WordPress разработчик</a> от Glo Academy — подробный курс с глубокой проработкой смежный тем по разработке сайта</li><li><a href="https://experts2.ru/HiujKo?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=7">WordPress. Уровень 1. Создание и настройка сайта</a> от Специалист.ru — онлайн или офлайн формат учебы по желанию.</li><li><a href="https://experts2.ru/nzHTrb?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=8">Создание сайтов на базе CMS WordPress: WP_01</a> от Сетевой Академии Ланит — исключительно практические знания по администрированию веб-страниц в CMS.</li><li><a href="https://experts2.ru/eOlqLy?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=9">WordPress. Уровень 2. Разработка сайтов со сложной структурой и создание тем оформления</a> от Специалист.ru — программа для опытных разработчиков и желающих администрировать сайты со сложной структурой.</li><li><a href="https://experts2.ru/zygNmP?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=10">WordPress 5 с Нуля до Гуру</a> от Михаила Русакова — мини-курс для создания своего первого сайта без изучения HTML.</li></ol><p>Курсы по WordPress подойдут начинающим веб-разработчикам, предпринимателям и фрилансерам, которые хотят создавать сайты быстро и без глубоких знаний программирования. Они также будут полезны маркетологам и контент-менеджерам для управления веб-ресурсами и их оптимизации. Это отличный выбор для тех, кто ищет новую профессию или хочет развить актуальные навыки.</p><h2>Онлайн-курсы по Wordpress</h2><p><b>1.</b> <a href="https://experts2.ru/SvsmgA?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=1">Онлайн-курс по WordPress</a> | <b>HEDU </b></p><p>Это компактный курс, который подойдет широкому кругу людей — от новичков, впервые пробующих себя в веб-разработке, до опытных программистов и контент-менеджеров, желающих углубить знания и улучшить навыки работы с WordPress. В рамках программы вас ждут вебинары, насыщенные практической информацией, самостоятельные задания для закрепления материала и поддержка менторов, готовых ответить на вопросы и помочь с решением сложных задач. К концу курса вы не только освоите основы платформы, но и сможете защитить полноценный проект, который станет отличным дополнением к вашему портфолио.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/685328b2-09c1-4fa4-93d1-d1557ab4cab6.png" alt="" /></figure><ul><li>Стоимость: 43 500 руб.</li><li>Длительность: 18 часов</li><li>Формат обучения: вебинары, видеолекции, домашние задания, защита проекта</li><li>Сертификат: электронный сертификат</li></ul><p><b>Кому подойдет: </b>разработчикам, желающим переквалифицироваться в веб-сферу; администраторам и контент-менеджерам; блогерам и бизнесменам, которые хотят самостоятельно сделать себе сайт. Можно приходить совсем с нуля и получить твердые навыки веб-разработки.</p><p><b>Преимущества:</b></p><ul><li>без воды и посторонних тем;</li><li>много практики;</li><li>гибкий график;</li><li>обучение основам СЕО;</li><li>готовая работа для портфолио;</li><li>архив видеоуроков в постоянное пользование;</li></ul><p><b>Недостатки:</b></p><ul><li>один готовый проект по шаблону.</li></ul><p><b>Программа обучения:</b></p><ul><li>Введение и настройка WordPress;</li><li>Блок по СЕО;</li><li>Сайт-визитка;</li><li>Первый лендинг;</li><li>Блог (по готовым шаблонам);</li><li>Онлайн-магазин;</li><li>Дополнительные настройки сайта.</li></ul><p><a href="https://experts2.ru/SvsmgA?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=1">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>2. </b><a href="https://experts2.ru/gfiyAT?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=2">Посадка верстки и создание тем на CMS WordPress</a> |<b> beONmax.com</b></p><p>Короткое интенсивное обучение WordPress для тех, кто хочет лучше понять backend разработку. Создание административной части страницы, настройка систем безопасности, совмещение верстки с движком Wordpress — все это вы найдете в данном обучении. После окончания учебы вы сможете создавать полноценный, законченный продукт.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/53f7985a-71a1-4bbe-81f3-b63bb876caf7.png" alt="" /></figure><ul><li>Стоимость: от 1 497 руб.</li><li>Длительность: 6 часов</li><li>Формат обучения: видеоуроки с самостоятельной проработкой материала</li><li>Сертификат: сертификат</li></ul><p><b>Кому подойдет: </b>только тем, кто хорошо знаком с HTML и CSS. Новичкам лучше начинать с более базовых вещей.</p><p><b>Преимущества:</b></p><ul><li>свой темп прохождения программы;</li><li>глубокая проработка темы backend-разработки;</li><li>обучение работе с локальными серверами;</li><li>знакомство с плагинами WordPress.</li></ul><p><b>Недостатки:</b></p><ul><li>не подходит начинающим;</li><li>нет обратной связи;</li><li>неудобный формат оплаты при выборе только одного курса.</li></ul><p><b>Программа обучения:</b></p><ul><li>Знакомство с CMS Wordpress;</li><li>Динамическая работа с сайтом через админку;</li><li>Сайты-многостраничники;</li><li>Заключение и итоговый проект.</li></ul><p><a href="https://experts2.ru/gfiyAT?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=2">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>3. </b><a href="https://experts2.ru/EkayHp?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=3">WordPress Интернет магазин с нуля</a> |<b> itProger</b></p><p>Это мини-курс для начинающих, посвященный созданию интернет-магазинов на платформе WordPress. Программа курса построена таким образом, что даже человек без опыта в веб-разработке сможет разобраться с настройкой шаблонов, установкой плагинов для электронной коммерции и созданием каталога товаров. Однако стоит учитывать, что обучение ориентировано исключительно на формат интернет-магазинов и не охватывает другие типы сайтов, такие как лендинги, сайты-визитки или многостраничные проекты.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/de966291-4f4d-4213-91d3-3f116da9e894.png" alt="" /></figure><ul><li>Стоимость: от 716 руб.</li><li>Длительность: 6 уроков</li><li>Формат обучения: видеоуроки с домашними заданиями</li><li>Сертификат: не предусмотрен</li></ul><p><b>Кому подойдет: </b>владельцам бизнеса, администраторам, менеджерам. Эта программа для быстрого самостоятельного создания онлайн-магазина для людей, которые раньше этим не занимались.</p><p><b>Преимущества:</b></p><ul><li>доступно для начинающих;</li><li>обучение в комфортном темпе;</li><li>видео доступны бесплатно.</li></ul><p><b>Недостатки:</b></p><ul><li>платный доступ к самостоятельной работе;</li><li>мало взаимодействия с менторами.</li></ul><p><b>Программа обучения:</b></p><ul><li>Знакомство с ECommerce;</li><li>Базовая настройка сайта;</li><li>Дизайн;</li><li>Наполнение товарами;</li><li>Система оплаты;</li><li>Заключение.</li></ul><p><a href="https://experts2.ru/EkayHp?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=3">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>4.</b> <a href="https://experts2.ru/oxvIfU?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=4">WordPress – Быстрый старт!</a> | <b>beONmax.com</b></p><p>Этот мини-курс по WordPress посвящен основам работы с популярной CMS WordPress, что делает его отличным выбором для тех, кто только начинает знакомство с веб-разработкой. В ходе обучения вы получите базовые знания, которые помогут вам освоить ключевые функции платформы: от создания веб-страниц и настройки шаблонов до управления контентом и администрирования сайтов. Программа курса рассчитана на новичков, не требуя предварительной подготовки, поэтому даже человек без технического опыта сможет понять основы работы с системой. Этот курс станет полезным стартом для дальнейшего изучения веб-разработки или началом самостоятельной работы над собственными проектами.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/20f6f52d-d400-45a2-8469-04bc8d0d5e86.png" alt="" /></figure><ul><li>Стоимость: от 1 497 руб.</li><li>Длительность: 3 часа</li><li>Формат обучения: видеоматериалы с практическими заданиями</li><li>Сертификат: сертификат о прохождении обучения</li></ul><p><b>Кому подойдет: </b>начинающим, которые раньше не имели никакого отношения к разработке. Не требуются знания HTML, CSS, основ дизайна.</p><p><b>Преимущества:</b></p><ul><li>кратчайшие сроки обучения;</li><li>индивидуальный темп освоения программы;</li><li>знакомство со всеми основными темами (создание сайта, дизайн, перенос с хостинга на хостинг, администрирование);</li><li>быстрый результат в виде готового сайта.</li></ul><p><b>Недостатки:</b></p><ul><li>курс предполагает самостоятельную работу;</li><li>очень мало взаимодействия с кураторами;</li><li>неудобный формат оплаты для тех, кто хочет пройти один курс.</li></ul><p><b>Программа обучения:</b></p><ul><li>Знакомство с темой CMS;</li><li>Основы WordPress;</li><li>Дизайн и оформление сайта;</li><li>Перенос и резервное копирование.</li></ul><p><a href="https://experts2.ru/oxvIfU?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=4">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>5. </b><a href="https://experts2.ru/amngLG?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=5">Создание сайта на WordPress</a> | <b>itProger</b></p><p>Небольшой онлайн-курс по созданию веб-страниц на платформе WordPress. Удобный и доступный формат обучения для тех, кто готов самостоятельно и вдумчиво работать с полученной информацией. В программе курса основное внимание уделяется основам работы с платформой, включая изучение интерфейса, базовые настройки и установку необходимых плагинов. Отдельный блок посвящен созданию простого сайта с использованием готовых шаблонов. Это компактное и эффективное обучение подойдет тем, кто хочет освоить базовые навыки и понять, как работать с WordPress, чтобы в дальнейшем развивать свои умения в этой сфере.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/7cf9c92e-3e1c-4872-8c4e-0cc5755c905b.png" alt="" /></figure><ul><li>Стоимость: от 716 руб.</li><li>Длительность: 6 уроков</li><li>Формат обучения: видео в открытом доступе + задания для отработки навыков</li><li>Сертификат: не предусмотрен</li></ul><p><b>Кому подойдет:</b> продвинутым разработчикам и контент-менеджерам не подойдет, а начинающим и желающим самостоятельно делать простые сайты это обучение будет полезно.</p><p><b>Преимущества:</b></p><ul><li>открытый бесплатный доступ к видеоматериалам;</li><li>свободный темп обучения;</li><li>понятные и наглядные задания;</li><li>сжатая подача материала без воды;</li><li>небольшие теоретические блоки под видео.</li></ul><p><b>Недостатки:</b></p><ul><li>оплата нужна для доступа к заданиям;</li><li>мало подробной информации;</li><li>нет документа о завершении курса.</li></ul><p><b>Программа обучения:</b></p><ul><li>Установка нужных программ;</li><li>Плагины;</li><li>Интерфейс WordPress;</li><li>Главная страница сайта;</li><li>Дополнительные страницы;</li><li>Заключительный урок.</li></ul><p><a href="https://experts2.ru/amngLG?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=5">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>6. </b><a href="https://experts2.ru/JpvaBm?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=6">WordPress разработчик</a> | <b>Glo Academy</b></p><p>Этот курс представляет собой тщательно проработанную программу, которая подходит для тех, кто хочет освоить веб-разработку на профессиональном уровне. После его завершения вы сможете создавать полноценные, сложные сайты, включая интернет-магазины, корпоративные порталы и многопользовательские платформы. В программу входит не только базовое знакомство с CMS, но и основны HTML, PHP, Figma. Вы научитесь СЕО-оптимизации, подробно разберете бэкенд, и, конечно, очень тщательно изучите Wordpress.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/cacab662-5924-4a77-87e5-9a54111419e1.png" alt="" /></figure><ul><li>Стоимость: 1 490 руб.</li><li>Длительность: 3 модуля</li><li>Формат обучения: уроки с заданиями на отдельной закрытой платформе</li><li>Сертификат: не предполагается</li></ul><p><b>Кому подойдет: </b>этот вариант учебы для тех, кто настроен долго работать с WordPress и заниматься созданием сайтов профессионально. Подойдет серьезно настроенным новичкам.</p><p><b>Преимущества:</b></p><ul><li>глубокое погружение в тему;</li><li>разные инструменты для работы;</li><li>единовременный доступ сразу ко всем материалам;</li><li>поддержка преподавателей;</li><li>объемная дипломная работа, которую можно будет предъявлять заказчикам и работодателям.</li></ul><p><b>Недостатки:</b></p><ul><li>для планомерной работы требуется самодисциплина;</li><li>сложные темы для совсем не подготовленных людей;</li><li>нет сертификата.</li></ul><p><b>Программа обучения:</b></p><ul><li>Основы кода;</li><li>Что такое сервер;</li><li>HTML;</li><li>PHP;</li><li>Figma;</li><li>Работа с хостингом;</li><li>Работа в WordPress;</li><li>СЕО-оптимизация;</li><li>Дипломная работа.</li></ul><p><a href="https://experts2.ru/JpvaBm?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=6">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>7. </b><a href="https://experts2.ru/HiujKo?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=7">WordPress. Уровень 1. Создание и настройка сайта</a> | <b>Специалист.ru</b></p><p>Онлайн-курс для всех желающих освоить создание веб-страниц в Wordpress. Программа рассчитана на 24 часа интенсивного обучения, в рамках которого вы научитесь создавать сайты с нуля: от установки платформы и настройки хостинга до подключения всех необходимых плагинов и инструментов для полноценной работы. Для жителей Москвы доступно очное обучение. Особенность курса — формат обучения: его можно пройти онлайн, а для жителей Москвы доступен очный формат, где есть возможность работать в небольшой группе под руководством преподавателя.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/118e7001-e7c6-4f31-867a-cdcf2a2b3f20.png" alt="" /></figure><ul><li>Стоимость: от 18 490 руб.</li><li>Длительность: 24 часа</li><li>Формат обучения: 4 модуля обучения онлайн или офлайн с отработкой полученных знаний</li><li>Сертификат: сертификат или удостоверение о повышении квалификации</li></ul><p><b>Кому подойдет: </b>менеджерам, администраторам и веб-разработчикам, которые только в начале своего пути найдут в этом курсе много полезного. Подойдет также и фрилансерам, которые хотят освоить новую профессию.</p><p><b>Преимущества:</b></p><ul><li>возможность учиться онлайн и офлайн</li><li>живое взаимодействие с кураторами;</li><li>подробный разбор темы во всех модулях;</li><li>готовый сайт для вашего портфолио;</li><li>опытные преподаватели-практики.</li></ul><p><b>Недостатки:</b></p><ul><li>учеба по расписанию — нет возможности работать в своем темпе;</li><li>нужны базовые знания верстки в HTML.</li></ul><p><b>Программа обучения:</b></p><ul><li>Введение, настройка сервера;</li><li>Оформление сайта, готовые темы;</li><li>Плагины;</li><li>Структура HTML;</li><li>СЕО-оптимизация;</li><li>Итоговая работа.</li></ul><p><a href="https://experts2.ru/HiujKo?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=7">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>8. </b><a href="https://experts2.ru/nzHTrb?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=8">Создание сайтов на базе CMS WordPress: WP_01</a> | <b>Сетевая Академия Ланит</b></p><p>Экспресс-курс для обучения Wordpress с нуля. Он создан для всех желающих научиться создавать собственные веб-приложения или страницы. Магазины, организации, стремящиеся привлечь новых клиентов, популярные блогеры — все они могут стать заказчиками человека, владеющего навыками работы в CMS Wordpress.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/055ed9bc-47ce-4dae-a2b4-66d657e1eedf.png" alt="" /></figure><ul><li>Стоимость: 12 000 руб.</li><li>Длительность: 16 часов</li><li>Формат обучения: 5 модулей с уроками, практические задания</li><li>Сертификат: не предусмотрен</li></ul><p><b>Кому подойдет: </b>всем желающим освоить новый навык и научиться верстать сайты с нуля. Достаточно основных умений работы с компьютером.</p><p><b>Преимущества:</b></p><ul><li>онлайн и офлайн форматы;</li><li>каждая тема закрепляется практикой;</li><li>практические навыки по административной работе с веб-страницей;</li><li>без воды и лишних тем.</li></ul><p><b>Недостатки:</b></p><ul><li>нет сертификата;</li><li>установленное расписание.</li></ul><p><b>Программа обучения:</b></p><ul><li>Начальные знания о WordPress;</li><li>Работа с темами оформления;</li><li>Различные плагины;</li><li>Основы безопасности веб-страниц.</li></ul><p><a href="https://experts2.ru/nzHTrb?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=8">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>9. </b><a href="https://experts2.ru/eOlqLy?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=9">WordPress. Уровень 2. Разработка сайтов со сложной структурой и создание тем оформления</a> |<b> Специалист.ru</b></p><p>Курс для продвинутых веб-программистов, которые уже обладают опытом работы и стремятся углубить свои знания. Программа сосредоточена на тонкостях бэкенда, администрировании сложных, многосайтовых платформ и оптимизации их производительности. Вы узнаете, как эффективно работать с расширенными функциями WordPress, такими как настройка пользовательских типов записей, взаимодействие с REST API и управление базами данных.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/80f2d6f3-2fc8-4468-83b3-4bb3621653f8.png" alt="" /></figure><ul><li>Стоимость: уточняется на сайте</li><li>Длительность: 24 часа</li><li>Формат обучения: 4 модуля уроков и лабораторные работы</li><li>Сертификат: сертификат или удостоверение о повышении квалификации</li></ul><p><b>Кому подойдет: </b>для уверенных пользователей Wordpress, хорошо знакомых с HTML, CSS и основами PHP. На сайте есть бесплатный тест для определения вашего уровня подготовки.</p><p><b>Преимущества:</b></p><ul><li>глубокое погружение в тему;</li><li>лабораторные работы с наглядным результатом;</li><li>документ государственного образца;</li><li>практика по созданию собственных плагинов.</li></ul><p><b>Недостатки:</b></p><ul><li>не подойдет для начинающих;</li><li>фиксированное расписание.</li></ul><p><b>Программа обучения:</b></p><ul><li>Создание сложной структуры сайта и работа с ней;</li><li>Создание шаблонов;</li><li>Создание плагинов;</li><li>Защита сайта.</li></ul><p><a href="https://experts2.ru/eOlqLy?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=9">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>10. </b><a href="https://experts2.ru/zygNmP?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=10">WordPress 5 с Нуля до Гуру</a> | <b>Михаил Русаков</b></p><p>Курс  по WordPress от Михаила Русакова — автора нескольких практических программ обучения по программированию и разработке сайтов. Если вы хотите освоить самую популярную CMS систему с нуля, то здесь вы найдете основную информацию с самостоятельными работами. Небольшая стоимость, удобный формат обучения и концентрированные знания — отличительные черты этого курса.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-02-05/ae7bd88c-4def-4f3f-bdf8-299ead0769e1.png" alt="" /></figure><ul><li>Стоимость: 4 970 руб.</li><li>Длительность: 5 часов</li><li>Формат обучения: 4 модуля уроков и практические занятия для закрепления знаний</li><li>Сертификат: именной сертификат</li></ul><p><b>Кому подойдет: </b>для прохождения курса достаточно самых базовых навыков по работе с компьютером и файлами. Он подойдет для начинающих разработчиков и людей, совсем не знакомых с разработкой.</p><p><b>Преимущества:</b></p><ul><li>базовые знания понятным для новичка языком;</li><li>упражнения для закрепления результата;</li><li>документ об окончании обучения;</li><li>подробный разбор темы безопасности сайта.</li></ul><p><b>Недостатки:</b></p><ul><li>нет комьюнити;</li><li>основная часть работы — самостоятельная;</li><li>для более глубокого погружения в тему надо купить другие курсы автора.</li></ul><p><b>Программа обучения:</b></p><ul><li>Рекомендации по началу работы;</li><li>Основы Wordpress;</li><li>Админ-панель;</li><li>Практика по верстке веб-страницы;</li><li>Размещение в сети;</li><li>Безопасность.</li></ul><p><a href="https://experts2.ru/zygNmP?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=10">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><h2>Еще 6 курсов по Wordpress</h2><p>Знание принципов работы с CMS системами полезно для самых разных специалистов, даже для тех, кто не имеет прямого отношения к веб-разработке. Далее перечислено еще 6 курсов по обучению WordPress с нуля для желающих освоить этот инструмент.</p><ul><li><a href="https://experts2.ru/DnHpxk?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Курс по созданию сайта на WordPress с нуля</a> от <a href="https://misha.agency/kursy-wordpress-woocommerce">Миши Рудрастых </a>— 9 модулей интенсивного обучения, которые познакомят вас с контент-менеджментом и азами создания веб-страниц. Также вы узнаете много интересного о фрилансе и о том, как искать заказчиков.</li><li><a href="https://experts2.ru/LOxuhf?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Идеальный сайт на WordPress 2.0</a> от ICHIGAREV — удачный формат обучения для тех, кто хочет зарабатывать на создании сайтов. Доступ к материалам остается у вас на протяжении года. Автор — опытный вебмастер, который делится своим опытом с начинающими.</li><li><a href="https://experts2.ru/gjsIqP?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Как быстро и правильно вносить правки в WordPress-сайт</a> от WPCourses — короткий курс длительностью всего 3 часа по созданию отзывчивой верстке и дизайну сайта. Хорош для быстрого вхождения в тему и освоения азов.</li><li><a href="https://experts2.ru/XwfKcp?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Курсы WordPress</a> от ArtWork — очные и онлайн занятия по WordPress с наставником. Тщательная проработка темы, объемные домашние задания и два итоговых проекта, которые не стыдно будет показать заказчикам — вот что предлагает АртВорк своим клиентам.</li><li><a href="https://experts2.ru/fhnySW?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Администратор WordPress</a> от Ариона — это обучение для тех, кто хочет администрировать сайты. За 4 месяца вы научитесь работать в админ-панели и освоите верстку лендингов, создание интернет-магазинов, получите проект для демонстрации заказчикам.</li><li><a href="https://experts2.ru/yYzDcd?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Курс WordPress – с нуля до Профи!</a> от beONmax.com — на этом курсе вы не только научитесь работать с CMS системой WordPress, но и получите базовые знания по продвижению сайтов в поисковой выдаче. После окончания обучения вы сможете устроиться на работу техническим специалистом по обслуживанию сайтов, менеджером, администратором или вебмастером.</li></ul><h2>Бесплатные курсы по Wordpress</h2><p>Не всегда хочется сразу платить за обучение, особенно если тема еще кажется незнакомой. Многие только планируют заняться созданием и администрированием сайтов, а про WordPress знают лишь поверхностно. Обучение WordPress бесплатно позволит без лишних затрат времени и денег понять, интересна ли эта область, и получить базовое представление о работе с платформой. Ниже вы найдете подборку из 20 бесплатных курсов, которые подходят для знакомства с WordPress.</p><p><b>1. </b><a href="https://experts2.ru/ApgnzN?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Сайт на Wordpress. Верстка сайта и перенос на CMS</a> — <b>Stepik</b></p><p>Этот курс предназначен для начинающих веб-разработчиков, желающих освоить создание и запуск сайтов на WordPress. Вы научитесь верстать сайты, используя различные инструменты (Figma, Pixso, Marsy), создавать темы WordPress, настраивать плагины и переносить проекты на реальный хостинг.</p><p><b>Главное о курсе:</b></p><ul><li>Полный цикл создания сайтов на WordPress: от верстки до публикации;</li><li>Практическое обучение на трех проектах разной сложности;</li><li>Обучение работе с популярными плагинами и инструментами;</li><li>Мастерство верстки сайтов по современным макетам (Figma, Pixso).</li></ul><p><b>2. </b><a href="https://experts2.ru/ziAuwQ?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Создаем первый сайт по шагам 3.0</a> — <b>WPCourses</b></p><p>Этот бесплатный курс — пошаговое руководство по установке и настройке WordPress для новичков. Вы создадите свой первый сайт, освоив все необходимые технические аспекты, от выбора домена до SEO-оптимизации, при минимальных затратах (около 300 рублей на домен и хостинг).</p><p><b>Главное о курсе:</b></p><ul><li>Понятное изложение материала в видеоформате, доступное даже новичкам;</li><li>Пошаговые уроки с практическими заданиями после каждого;</li><li>Доступ в групповой чат для общения с автором и другими участниками;</li><li>Готовый к использованию сайт с настроенной аналитикой, SSL-сертификатом и подборкой необходимых плагинов.</li></ul><p><b>3. </b><a href="https://www.youtube.com/playlist?list=PL0lO_mIqDDFVN2Xd2N9CwheG0k_299z1q">Создание сайта на CMS WordPress</a> —<b> Гоша Дударь</b></p><p>Это серия коротких видео на YouTube. Здесь вы найдете 6 коротких роликов с основами работы с движком WordPress и два больших. Один из них посвящен профессии бэкенд-разработчика, второй — наглядный и подробный разбор верстки сайта. Очень полезная р концентрированная информация для начинающих.</p><p><b>Главное о курсе:</b></p><ul><li>Короткие, информативные ролики;</li><li>Большой практический разбор верстки в WordPress с самого начала;</li><li>Для людей с любым уровнем подготовки;</li><li>Постоянный доступ.</li></ul><p><b>4. </b><a href="https://experts2.ru/wrGmLl?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Сайт за 5 дней</a> — <b>Адель Гадельшин</b></p><p>Онлайн-тренинг поможет вам создать собственный сайт на WordPress, даже если вы никогда раньше этим не занимались. Обучение ориентировано на практическое применение знаний и поможет вам освоить создание сайтов, найти новые источники дохода, или начать свой онлайн-проект, не требующий больших технических знаний.</p><p><b>Главное о тренинге:</b></p><ul><li>Вы создадите свой сайт на WordPress своими руками;</li><li>Охватывает создание сайта, дизайн, оформление соцсетей и привлечение первых посетителей;</li><li>Подходит для людей с разным уровнем подготовки и опытом;</li><li>Доступ к видеоурокам продлится 7 дней, а возможность продления будет обсуждаться в процессе тренинга.</li></ul><p><b>5. </b><a href="https://www.youtube.com/playlist?list=PLVfMKQXDAhGXPqEqUUdxnVUcvmJ1Vbfzv">Уроки WordPress: как сделать блог</a> — <b>Web Developer Blog</b></p><p>Как начать с полного нуля и быстро дойти до первого работающего сайта? Этот курс из 8 маленьких (до 10 минут каждый) уроков поможет вам создать свой блог и разместить его на хостинге. Есть два дополнительных видео про создание собственной темы и про инструмент разработки Бутстрап.</p><p><b>Главное о курсе:</b></p><ul><li>Информация в основном о создании блога;</li><li>Общие сведения о движке Wordpress;</li><li>Знакомство с Бутстрап для тех, кто делает первые шаги в верстке;</li><li>Подробный разбор темы размещения сайта в сети.</li></ul><p><b>6. </b><a href="https://www.youtube.com/watch?v=49Z2XhHawF0&amp;list=PLlDywav6VLYkoTdjHFGd24nX1T02-L3_M">Wordpress с нуля | Урок 1. Что такое Wordpress</a> — <b>Moment School</b></p><p>9 коротких, но информативных видео с базовой информацией по движку WordPress. Создатели курса дают только общие понятия, отрабатывать навыки придется самостоятельно. Не затронута тема размещения сайта в сети.</p><p><b>Главное о курсе:</b></p><ul><li>Курс рассчитан на начинающих;</li><li>Подробно рассмотрена тема плагинов (в двух уроках);</li><li>Мало примеров и практики.</li></ul><p><b>7.</b> <a href="https://api.dtf.ru/v2.8/redirect?to=https%3A%2F%2Fyoutu.be%2FQ5zcWpRMl9s%3Fsi%3DyfXu3vuBkjQ6fPm6&amp;postId=2460629">Натяжка сайта на WordPress</a> — <b>ВЕРСТАЧ</b></p><p>Длинное (4 с лишним часа) видео, которое будет интересно тем, кто знаком с HTML, но раньше не работал с CMS-системами. Из него вы узнаете, как «натянуть» свою верстку (созданную в других средах разработки) на движок WordPress, как сохранить структуру своей страницы при загрузке в сеть и получите много полезной сопутствующей информации.</p><p><b>Главное о курсе:</b></p><ul><li>Активное обсуждение в комментариях, где можно задать свой вопрос;</li><li>Максимально подробный разбор темы;</li><li>Полезные ссылки в инфобоксе;</li><li>Наглядный процесс работы с комментариями специалиста.</li></ul><p><b>8. </b><a href="https://www.youtube.com/playlist?list=PLd2224z9xs0diYGuOG6cY6E2Vn38uut6U&amp;si=1_l4EGbv3QgmcitP">Курс "ELEMENTOR - конструктор лендингов на WordPress</a> — <b>Анфиса Бреус</b></p><p>Огромная коллекция (66 + три дополнительных) обучающих роликов по WordPress. Основная часть курса посвящена плагину Elementor. Автор разбирает не только азы, но и мелкие детали оформления страницы, отдельные тонкости в работе с плагинами и вопросы защиты сайта.</p><p><b>Главное о курсе:</b></p><ul><li>Вся работа через плагин Elementor;</li><li>Очень подробный разбор и практические примеры для каждой темы;</li><li>Автор — специалист по WordPress.</li></ul><p><b>9. </b><a href="https://www.youtube.com/watch?v=9pITv4yVFvc">WordPress Masterclass: The Complete Beginner Website Course</a> — <b>GigaPress</b></p><p>6 часов детального разбора работы платформы WordPressот ведущих специалистов. Программа выложена на YouTube в открытом доступе, поэтому пройти ее может любой желающий. Вы можете переходить к интересующим вас разделам по таймкодам в описании.</p><p><b>Главное о курсе:</b></p><ul><li>Свободный доступ и гибкий график обучения — вы сами выбираете, когда заниматься и пересматривать видео;</li><li>Нет обратной связи, в комментариях авторы курса не отвечают на вопросы.</li></ul><p><b>10.</b> <a href="https://wordpress.com/ru/support/">Обучающие видео</a> — <b>WordPress</b></p><p>Это раздел со справочными руководствами по использованию WordPress.com, структурированные по категориям. Вы освоите основные функции платформы, от создания контента до настройки доменов и плагинов, и сможете создать собственный функциональный и привлекательный веб-сайт.</p><p><b>Главное о курсе:</b></p><ul><li>Пошаговое руководство по использованию WordPress.com;</li><li>Обучение работе с контентом, доменами, плагинами и настройками сайта;</li><li>Практическое применение знаний для создания собственного веб-сайта;</li><li>Доступ к обширной базе справочных материалов и руководств.</li></ul><p><b>11. </b><a href="https://www.youtube.com/playlist?list=PLKcMoPA4VompVWYy5HYeOM-X41mlI4ktd">Курс создания сайта на WordPress</a> — <b>Жизнь программиста</b></p><p>14 обучающих видео с базовыми и некоторыми специфическими темами верстки в WordPress. Среди особенностей — переводы на любые языки и неочевидные моменты по обеспечению безопасности. Простые вещи объясняются простым языком, доступным для начинающих.</p><p><b>Главное о курсе:</b></p><ul><li>Курс подходит начинающим;</li><li>Автор активно участвует в обсуждениях в комментариях, отвечает на вопросы;</li><li>Все видео в бесплатном доступе на платформе Youtube.</li></ul><p><b>12. </b><a href="https://www.youtube.com/watch?v=RplP9WjjRRo">Как создать сайт на WordPress</a> — <b>Denis Bezrodnyy</b></p><p>Небольшой урок длительностью 1.5 часа от Дениса Безродного. В процессе просмотра видео можно повторять за автором все действия, и в итоге получится полноценный веб-сайт, который станет отличным стартом для начинающего разработчика.</p><p><b>Главное о курсе:</b></p><ul><li>Бесплатный и открытый доступ;</li><li>Подробно рассмотрена тема адаптивности верстки;</li><li>Есть ссылки на полезные инструменты для разработчика.</li></ul><p><b>13.</b> <a href="https://www.youtube.com/watch?v=TBX3f4qjYHc">Создаем сайт на Wordpress за несколько часов</a> — <b>Proger Web</b></p><p>Еще один практический онлайн-урок, во время которого автор на глазах у зрителей создает сайт через WordPress. Он длится 3 с небольшим часа и содержит всю необходимую информацию для новичка. Следуя рекомендациям автора, вы сможете без особых проблем повторить его действия и сделать собственную страницу.</p><p><b>Главное о курсе:</b></p><ul><li>Есть отдельный блок по СЕО-оптимизации;</li><li>Для тех, кто хочет глубже изучить предмет, под видео есть ссылки на другие лекции;</li><li>Создатель курса общается с учениками в комментариях.</li></ul><p><b>14.</b> <a href="https://www.youtube.com/watch?v=TDwEi25O4K0">Как создавать онлайн курсы на Wordpress</a> — <b>Опыт Тичера</b></p><p>Это маленький разбор отдельного плагина для WordPress— Tutor LMS. Он предназначен для создания страниц с онлайн-курсами и может быть полезен всем, кто хочет запустить свое обучение. Это первая, вводная часть, у автора имеется второе видео по этой теме.</p><p><b>Главное о курсе:</b></p><ul><li>Больше подойдет тем, кто уже знает основы WordPress;</li><li>Обучение именно для создания страницы курса, не подойдет для блога, лендинга, магазина и т.д;</li><li>Подробный разбор типичных технических проблем, с которыми сталкиваются создатели обучений.</li></ul><p><b>15. </b><a href="https://www.youtube.com/playlist?list=PL3LQJkGQtzc6Nwz67GGrMdqxim1c0H5DC">Курс по WordPress</a> — <b>Glo Academy</b></p><p>Если вы не уверены в том, подойдут ли вам платные курсы Glo academy, попробуйте пройти их бесплатное обучение. 15 подробных бесплатных видеоуроков научат вас работе с CMS системой и ее популярными плагинами. В курсе рассмотрены формы, темы, СЕО, описаны шаблоны страниц и даны рекомендации по оптимизации загрузки.</p><p><b>Главное о курсе:</b></p><ul><li>Все уроки в свободном доступе на YouTube;</li><li>Бесплатный вариант закрытого курса (без доступа к личному кабинету с домашними заданиями);</li><li>Преподаватели показывают практические примеры работы.</li></ul><p><b>16. </b><a href="https://www.youtube.com/watch?v=eHjIkPZLm0w">Сайт с нуля на WordPress + Elementor</a>— <b>Уроки WordPress &amp; Figma</b></p><p>Пошаговая инструкция по созданию своей первой веб-страницы. Обучение длится всего 2 часа, но их хватит для первого представления о предмете. Здесь не раскрыты многие нюансы, нужные для системной работы с WordPress, но для желающих самостоятельно сверстать простой сайт это видео подойдет.</p><p><b>Главное о курсе:</b></p><ul><li>Полезно тем, кто никогда раньше не делал веб-страницы;</li><li>Только самая базовая информация;</li><li>Можно сделать сайт даже без опыта, следуя простым инструкциям.</li></ul><p><b>17. </b><a href="https://www.youtube.com/watch?v=-F7SEoKwhEA">Базовый курс по WordPress</a> — <b>Школа Федора Васильевича</b></p><p>Один из бесплатных видеокурсов автора, посвященный начальному освоению WordPress. Из него можно почерпнуть информацию о самых первых шагах в работе с этим движком. Для желающих более полноценно ознакомиться с возможностями CMS у автора можно найти другие полезные плейлисты на эту тему.</p><p><b>Главное о курсе:</b></p><ul><li>Много полезной бесплатной информации;</li><li>Хороший стиль изложения (просто о сложном);</li><li>Есть много дополнительных плейлистов с более продвинутыми уроками по WordPress.</li></ul><p><b>18. </b><a href="https://experts2.ru/naCcOj?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=netop">Пример создания сайта на WordPress 5</a> — <b>Михаил Русаков</b></p><p>Этот короткий видеокурс предназначен для начинающих пользователей, желающих быстро освоить создание сайтов на WordPress 5. За 22 минуты вы получите практический опыт и базовые знания, необходимые для запуска собственного проекта. Курс не требует предварительной подготовки.</p><p><b>Главное о курсе:</b></p><ul><li>Быстрое и доступное обучение (22 минуты);</li><li>Подходит для новичков без опыта;</li><li>Пошаговое создание сайта с нуля;</li><li>Бесплатный доступ к видеоматериалу и поддержке автора.</li></ul><p><b>19. </b><a href="https://www.youtube.com/watch?v=k6yfkuhysNc&amp;t=0s">Как создать сайт на WordPress в 2026 году (БЫСТРО И ПРОСТО)</a> — <b>Metics Media</b></p><p>Короткое обучающее видео для тех, кто не может ждать создания своего первого сайта долго. Из него можно узнать о том, как получить домен, установить WordPress, настроить тему и приступить к базовой настройке страницы.</p><p><b>Главное о курсе:</b></p><ul><li>Сжатая подача информации;</li><li>Подойдет для первого знакомства с темой CMS и принятия решения, стоит ли этим заниматься;</li><li>Только для тех, кто никогда раньше не делал сайты.</li></ul><p><b>20. </b><a href="https://www.youtube.com/watch?v=dw2749JF0jw">Как создать сайт на WordPress с нуля. Пошаговый план</a> — <b>Александр Дейнека</b></p><p>Видео, в котором разобран общий план по созданию веб-страницы в WordPress. Так же как и предыдущее видео, оно дает только первичную информацию по теме и не подойдет для продвинутых разработчиков. В описании есть шаблоны, которые можно использовать в своей работе.</p><p><b>Главное о курсе:</b></p><ul><li>Для неосведомленных о разработке людей;</li><li>Короткое ознакомительное видео;</li><li>Автор наглядно демонстрирует интерфейс системы и объясняет, как в нем разобраться.</li></ul><h2>Веб-разработчик</h2><p>Веб-разработка — востребованная и динамично развивающаяся сфера, предлагающая широкие возможности для самореализации и высокого заработка. Знание WordPress, как одной из самых распространенных CMS, значительно расширяет спектр возможностей и делает веб-разработчика высоко конкурентным специалистом на рынке труда.</p><h2>Чем занимается веб-разработчик на WordPress?</h2><p>Веб-разработчик отвечает за создание, настройку и поддержку сайтов, используя систему управления контентом WordPress. Это включает в себя:</p><ul><li>Разработку дизайна и структуры сайта.</li><li>Написание и редактирование кода (HTML, CSS, PHP, JavaScript — в зависимости от уровня задач).</li><li>Интеграцию плагинов и тем.</li><li>Настройку функциональности сайта и оптимизацию производительности.</li><li>Поддержку и обновление сайта.</li><li>СЕО-оптимизацию (повышение расположения страницы в выдаче поисковика).</li><li>Взаимодействие с клиентами (если работа ведется на заказ).</li></ul><h2>Необходимые навыки</h2><ul><li>Глубокое понимание CMS WordPress: принципы работы, настройка и оптимизация.</li><li>Владение языками разметки и программирования: HTML, CSS, JavaScript; желательно знание PHP и основ работы с базами данных.</li><li>Работа с плагинами и темами: настройка, разработка, оптимизация.</li><li>Навыки SEO-оптимизации: для повышения видимости сайтов в поисковых системах.</li><li>Создание адаптивного дизайна: обеспечение корректного отображения сайтов на всех устройствах.</li><li>Опыт работы с системой контроля версий Git: управление кодом и проектами.</li><li>Знание REST API и фреймворков (например, ACF, Customizer API) для сложных решений.</li><li>Понимание веб-безопасности: защита сайтов от уязвимостей.</li><li>Знание CI/CD: навыки работы с системами непрерывной интеграции.</li><li>Инструменты автоматизации и тестирования: упрощение и ускорение разработки.</li><li>Эффективная коммуникация и работа в команде: для успешного участия в проектах.</li><li>Постоянное самообразование: отслеживание новых тенденций и технологий в веб-разработке.</li></ul><h2>Где учиться?</h2><p>Пути освоения профессии веб-разработчика разнообразны: от прохождения курсов по созданию сайтов на WordPress различного уровня сложности до обучения в специализированных учебных центрах под руководством опытных преподавателей. Самостоятельное обучение с использованием онлайн-ресурсов и документации также возможно, но наиболее эффективно в сочетании с практическим опытом, который можно получить, работая фрилансером или в веб-студии.</p><h2>Специализация в веб-разработке на WordPress</h2><p>Успешная карьера веб-разработчика на WordPress требует не только базового знания платформы, но и узкой специализации, которая помогает выделиться на рынке и повысить доход. Рассмотрим перспективные направления:</p><ul><li>Разработка высоконагруженных сайтов: специалисты в этой области занимаются оптимизацией производительности, масштабируемостью и безопасностью. Они работают с базами данных, кэшированием, настройкой серверов и используют инструменты вроде Redis, Nginx и Apache. Это востребовано крупными компаниями с большой аудиторией.</li><li>Разработка e-commerce решений: создание интернет-магазинов на WordPress включает настройку WooCommerce, интеграцию платежных систем, модулей доставки и управление запасами. Знания UX/UI-дизайна также важны. Разработчики интернет-магазинов востребованы из-за роста онлайн-торговли.</li><li>Кастомные темы и плагины: создание уникальных решений требует глубокого знания PHP, HTML, CSS, JavaScript и API WordPress. Разработчики кастомных продуктов работают над индивидуальными проектами, часто с крупными заказчиками.</li><li>Специализация по безопасности WordPress: эти специалисты защищают сайты от атак, проводят аудит безопасности, настраивают фаерволы и устраняют уязвимости. Они востребованы компаниями, для которых важна защита данных и репутации.</li><li>Работа с фреймворками: использование ACF и Customizer API помогает создавать мощные, настраиваемые решения. Это ускоряет процесс разработки и позволяет брать сложные проекты, повышая конкурентоспособность.</li></ul><h2>Сколько зарабатывает вебмастер?</h2><p>Уровень заработной платы веб-разработчика варьируется в зависимости от опыта, навыков и региона. Начинающие специалисты могут зарабатывать от 30 000 до 80 000 рублей в месяц, а опытные разработчики — от 100 000 рублей и выше.</p><p>На <a href="https://hh.ru/">hh.ru</a> можно найти вакансии с зарплатой <a href="https://hh.ru/vacancy/114183755?query=wordpress&amp;hhtmFrom=vacancy_search_list">50 000</a>, <a href="https://hh.ru/vacancy/115382712?query=wordpress&amp;hhtmFrom=vacancy_search_list">80 000</a> и <a href="https://hh.ru/vacancy/115478243?query=wordpress&amp;hhtmFrom=vacancy_search_list">120 000</a> рублей, и это далеко не предел. Размер дохода во многом зависит от уровня квалификации и дополнительных навыков кандидата. Я изучила предложения, где знание WordPress указано как обязательное требование, но важно понимать, что вебмастеру необходим гораздо более широкий спектр компетенций.</p><h2>Заключение</h2><p>В заключение хочется отметить, что профессия веб-разработчика остается крайне востребованной. Обратите внимание, что Wordpress используют не только веб-разработчики, но и многие другие профессионалы в диджитал сфере. Выбор подходящих курсов по WordPress зависит от вашего уровня подготовки и целей. Новичкам лучше начинать с базовых курсов, таких как <a href="https://experts2.ru/oxvIfU?sub1=tproger-kf&amp;sub2=wordpress-kursy&amp;sub4=4">WordPress – Быстрый старт!</a>, а опытные разработчики могут обратить внимание на курсы продвинутого уровня. Независимо от выбранного пути, практика и постоянное самообучение — залог успеха в освоении этой перспективной профессии.</p><p><b>Подборки по схожим темам:</b><b></b></p><ol><li><a href="https://tproger.ru/articles/top-35-kursov-po-sozdaniyu-sajtov--onlajn-obuchenie-po-razrabotke-sajtov-s-nulya">Лучшие курсы по созданию сайтов</a></li><li><a href="https://tproger.ru/articles/top-61-kursov-veb-razrabotchika--luchwee-onlajn-obuchenie-programmirovaniyu-besplatno-i-platno">Лучшие курсы веб-разработчика</a></li><li><a href="https://tproger.ru/articles/kursy-verstki-html-i-css-253340">Лучшие курсы HTML и CSS</a></li><li><a href="https://tproger.ru/articles/kursy-c---i-c-">Лучшие курсы по языкам программирования</a></li></ol><p><i>Хотите поделиться своим опытом обучения на курсах по WordPress или посоветовать другие интересные программы? Жду ваших комментариев и предложений!</i></p>]]></content:encoded>
    </item>
    <item>
      <title>Главная CMS планеты WordPress празднует своё 18-летие</title>
      <link>https://tproger.ru/news/glavnaja-cms-planety-wordpress-prazdnuet-svojo-18-letie</link>
      <comments>https://tproger.ru/news/glavnaja-cms-planety-wordpress-prazdnuet-svojo-18-letie?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Булат Яббаров]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/glavnaja-cms-planety-wordpress-prazdnuet-svojo-18-letie</guid>
      <description><![CDATA[<p>Сооснователь WordPress отметил совершеннолетие CMS: системой управляется более 40% современного интернета, и она работает лучше, чем прежде.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/glavnaja-cms-planety-wordpress-prazdnuet-svojo-18-letie">Главная CMS планеты WordPress празднует своё 18-летие</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 28 May 2021 11:51:06 GMT</pubDate>
      <content:encoded><![CDATA[<p>Сооснователь WordPress Мэтт Мулленвег опубликовал пост в своём блоге. В нём он напомнил, что самая популярная CMS интернета празднует совершеннолетие. Также разработчик сравнил проект с ребёнком, достигшим возраста поступления в колледж.</p><figure><img src="https://media.tproger.ru/uploads/2021/05/1-34.jpg" alt="" /></figure><p>Мулленвег заявил, что считает себя счастливчиком, так как ему удалось стать сооснователем такого проекта как WordPress.</p><p>В своём посте он также отметил, что на сегодняшний день под управлением именинника работает более 40% современного интернета. Разработчик также заявил, что спустя почти двадцать лет после выхода первой версии, инструмент работает лучше, чем когда-либо раньше.</p><p>Отметим, что подобные посты он писал в честь <a href="https://ma.tt/2008/05/wordpress-party-2/">пятилетия</a>, <a href="https://ma.tt/2013/05/dear-wordpress/">десятилетия</a>, <a href="https://ma.tt/2018/05/wordpress-at-15/">пятнадцатилетия</a> и <a href="https://ma.tt/2020/05/celebrate-seventeen/">семнадцатилетия</a> проекта.</p><p>А вы когда-нибудь работали с WordPress? Или может ваш нынешний проект использует эту CMS в качестве основы? Пишите в комментариях — нам будет интересно почитать ваши истории.</p><p>Источник: <a href="https://ma.tt/2021/05/wordpress-18/">Блог Мэтта Мулленвега</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Почему WordPress — №1 в стеке технологий для вашего следующего проекта?</title>
      <link>https://tproger.ru/articles/pochemu-wordpress-1-v-steke-tehnologij-dlja-vashego-sledujushhego-proekta</link>
      <comments>https://tproger.ru/articles/pochemu-wordpress-1-v-steke-tehnologij-dlja-vashego-sledujushhego-proekta?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Мария Кривоченко]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/pochemu-wordpress-1-v-steke-tehnologij-dlja-vashego-sledujushhego-proekta</guid>
      <description><![CDATA[<p>Эксперт рассказывает о плюсах и возможностях WordPress и объясняет, почему стоит выбрать его для развития нового проекта.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/pochemu-wordpress-1-v-steke-tehnologij-dlja-vashego-sledujushhego-proekta">Почему WordPress — №1 в стеке технологий для вашего следующего проекта?</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Гостевая публикация]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 07 May 2021 14:21:14 GMT</pubDate>
      <content:encoded><![CDATA[<p>Если в проект входит управление контентом, WordPress — №1 в стеке технологий. С ним можно создать лендинг, интернет-магазин, обучающую платформу, CRM и даже ERP-систему без единой строчки кода лишь на основе готовых бесплатных и платных тем и плагинов через визуальный интерфейс в панели управления. API системы очень продуманный и позволяет управлять и настраивать практически всё, что угодно, без костылей и изобретения велосипедов.</p><p>Сегодня на WordPress работают более 40% из 10 миллионов популярных сайтов [1. <a href="https://w3techs.com/technologies/overview/content_management">Статистика использования систем управления контентом</a>].</p><h2>Что может WordPress?</h2><p>Система позволяет быстро проверять идеи, не тратя много времени и средств. Так в случае открытия интернет-магазина, самым трудоёмким станет выбор платёжного агрегатора и онлайн кассы, большинство которых имеет готовые плагины для подключения к WordPress. Товары же могут быть импортированы из складксой системы вместе с изображениями или загружены из файла.</p><p>В репозитории WordPress.org больше 7400 тем и 50 тысяч плагинов с открытым исходным кодом: от простых слайдеров до редакторов блогов, альтернативных встроенному WYSIWYG. А также мощные решения для электронной коммерции и дополнения к ним.</p><p>При этом внешний вид и функционал WordPress, включая подключения к сторонним системам, можно менять, не затрагивая контент и не переделывая то, что уже реализовано. Это значительно снижает издержки на доработку и модернизацию и позволяет быстро решать задачи развивающегося бизнеса.</p><p>Использование разработчиками API является ключевым для дальнейшего роста и развития проекта на WordPress. API системы представлен хуками (фильтрами и событиями) [2. <a href="https://wp-kama.ru/id_6680/kak-rabotayut-huki.html">Как работают хуки в WordPress</a> (фильтры и события)<br /><a href="https://developer.wordpress.org/plugins/hooks/">Hooks | Plugin Developer Handbook | WordPress Developer Resources</a> (на английском)<br /><a href="https://developer.wordpress.org/reference/hooks/">Актуальный список доступных хуков</a> (на английском)].</p><h2>Минимальный набор плагинов для большинства сайтов:</h2><ul><li>плагин безопасности — защищает от подбора пароля, блокирует ботов и так далее. В платных версиях доступна двухфакторная авторизация и многое другое;</li><li>плагин для транслитерации URL и названий загружаемых файлов;</li><li>SEO-плагин — для создания оптимизированных заголовков и описаний, оценки качества контента, добавления данных по Schema.org, настройки sitemap.xml и так далее;</li><li>плагин для конвертации изображений в формат webp. Он уменьшает размер растровых изображений и радует Google PageSpeed;</li><li>плагин для защиты от спама, если для страниц или записей включены комментарии;</li><li>плагин кэширования может быть эффективен или нет, в зависимости от динамики обновления контента, посещаемости и сложности системы в целом.</li></ul><h2>Изменения CSS</h2><p>Стилистические корректировки реализуются дополнительными инлайн стилями, которые записываются в специальное поле кастомайзера (Панель управления &gt; Внешний вид &gt; Настроить &gt; Дополнительные стили).</p><h3>Кастомизация</h3><h4>+ HTML, PHP и API WordPress и плагинов.</h4><p>Что можно сделать:</p><ul><li>Изменить готовую тему или расширить её функционал через создание дочерней темы к бесплатной или премиум-теме. При таком подходе родительская тема сохраняет обновления. Со стороны разработчика дочерней темы нужна минимальная поддержка;</li><li>У плагинов, выводящих информацию на фронтенд, есть шаблоны, которые можно изменить в папке родительской или дочерней темы. Так можно решить, как будет отображаться контент и какой будет логика плагина в целом. Пример плагина со своими шаблонами и обширным API — WooCommerce.</li></ul><h3>Разработка</h3><h4>+ JavaScript, MySQL, система контроля версий (Git), система управления пакетами (NPM, Composer, Yarn и другие), системы сборки пакетов (Gulp, Webpack и другие), Bash, следование стандартам кодирования WordPress (Coding Standards) [3. WordPress Coding Standards (на английском)].</h4><p>Что можно сделать:</p><ul><li>создать темы с уникальным дизайном под цели конкретного проекта;</li><li>создать плагины, реализующие дополнительный функционал под конкретный проект;</li><li>превратить WordPress в приложение с помощью PWA.</li></ul><h4>+ React и интерфейс WordPress для работы с ним [4. @wordpress/element — уровень абстракции поверх React (на английском).].</h4><p>Что можно сделать:</p><ul><li>разработать блоки и паттерны для Редактора блоков или другого функционала для фронтенда и бекенда;</li><li>разработать темы с полносайтовым редактированием.</li></ul><h4>+ другие технологии, фреймворки и платформы.</h4><p>Что можно сделать:</p><ul><li>интегрировать WordPress со сторонними приложениями, настройка синхронизации и обмена данными;</li><li>подключить к WordPress собственное мобильное приложение;</li><li>использовать WordPress исключительно как CMS и реализовать фронтенд на фреймворке — Gatsby, Vue.js и других.</li></ul><p>Интерфейс REST API помогает взаимодействовать со сторонними приложениями и использовать WordPress только как систему управления контентом. Такая технология носит название Headless или Decoupled CMS [5. На конференции WordCamp Europe 2020 Луис Эрранц, соучредитель и ведущий разработчик Frontity, фреймворка с открытым исходным кодом для разработки сайтов на базе WordPress с использованием React рассказал об <a href="https://wordpress.tv/2020/06/21/luis-herranz-headless-wordpress-current-status-and-remaining-challenges/">особенностях Headless/Decoupled CMS</a> (на английском)].</p><p>В версии WordPress 5.6 в 2020 году в ядро системы также вошли «Пароли приложений» [6. <a href="https://github.com/wpmarketingteam/WP5.6Marcomms/blob/master/Questions%20and%20Answers/4_application_password_authentication.md">Вопросы и ответы о Паролях приложений</a> (на английском)]. Они дают возможность, приложениям авторизоваться с правами пользователя, без основного пароля аккаунта.</p><p>Альтернатива REST API — GraphQL, доступный с плагином WPGraphQL [7. <a href="https://wordpress.tv/2020/06/01/muhammad-muhsin-using-wordpress-with-graphql/">Мухаммад Мухсин: Использование WordPress с GraphQL</a> (на английском).<br /><a href="https://wordpress.org/plugins/wp-graphql/">Плагин WPGraphQL</a>].</p><p>Реализация проекта на WordPress ограничивается квалификацией разработчиков, потребностями и бюджетом клиента. И позволяет получить максимальную отдачу от вложений. Если проект можно чётко описать, его можно реализовать на WordPress.</p><h2>Бонусный уровень</h2><p>WordPress — программное обеспечение с открытым исходным кодом, которое поддерживают волонтёры. То есть каждый может доработать систему: сообщить об ошибке, предложить идею или написать патч.</p><h2>Будущее WordPress</h2><p>В июле 2021 в ядро WordPress 5.8 войдёт возможность полносайтового редактирования — Full Site Editing. FSE откроет новые возможности для разработчиков. Пользователи WordPress без установки новой темы с поддержкой FSE не почувствуют существенных изменений.. Но привычные пользователям и разработчикам инструменты сохранятся. Как и совместимость с уже существующими темами и плагинами.</p><p>Также в декабре 2020 был запущен проект «Learn» [8. <a href="https://learn.wordpress.org/">Платформа Learn WordPress</a> (на английском, другие языки в разработке).<br /><a href="https://ru.wordpress.org/news/2020/12/learn-wordpress/">Представляем Learn WordPress</a> (на русском)]. Это многоязычная учебная платформа с мастер-классами, викторинами, курсами и планами уроков. В рамках платформы проводятся группы для обсуждения, рассчитанные на пользователей и на разработчиков WordPress.</p><h2>Почему пользователи и разработчики поддерживают WordPress?</h2><p>Во-первых, положительная обратная связь в действии. Разработчикам нравится работать с WordPress и в какой-то момент они хотят поучаствовать в его развитии. Это хорошая тренировка и возможность сравнить себя с разработчиками из более чем 50 стран мира и стать лучше в дружественной среде.</p><p>Составить представление о работе сообщества можно посетив сайт Make WordPress [9. <a href="https://make.wordpress.org/">Make WordPress — глобальное сообщество волонтёров</a> (на английском)].</p><p>Во-вторых, WordPress — это конференции и митапы, в разных уголках мира.</p><p>В-третьих, компании-разработчики плагинов, крупные агентства и хостинговые компании, предоставляют решения специально под WordPress. Так хостинги предлагают отладочный сайт (staging site), контроль за работоспособностью сайта, управление автоматическими обновлениями и другие возможности. Они избавляют программистов от рутины. А ещё крупные компании спонсируют мероприятия и разработчиков, которые развивают ядро WordPress и занимаются другими направлениями в рамках концепции «Five for the Future» [10. <a href="https://wordpress.org/five-for-the-future/">Five for the Future</a> (на английском)].</p><figure><img src="https://media.tproger.ru/uploads/2021/04/wp-56-country-contributions-1.png" alt="" /><figcaption>Инфографика Жана-Батиста Одраса к релизу WordPress 5.6 (декабрь 2020) отражает вклад разработчиков в движок WordPress и дает представление о сообществе в целом [11. Статистика ядра WordPress 5.6: вклад по странам и компаниям (на английском)].</figcaption></figure><p>Для тех, кто хочет попробовать свои силы в разработке ядра, Сергей Бирюков, WordPress Core Committer написал подробную инструкцию [12. <a href="https://ru.wordpress.org/team/handbook/contributing-to-core/">Как внести свой вклад в ядро WordPress</a> (на русском)]. А если еще сомневаетесь, подходит ли WordPress для проекта, приходите на русскоязычный форум поддержки [13. <a href="https://ru.wordpress.org/support/">Форум поддержки WordPress</a>].</p>]]></content:encoded>
    </item>
    <item>
      <title>За найденные в WordPress уязвимости готовы платить по 23 миллиона рублей</title>
      <link>https://tproger.ru/news/za-najdennye-ujazvimosti-v-wordpress-gotovy-platit-23-milliona-rublej</link>
      <comments>https://tproger.ru/news/za-najdennye-ujazvimosti-v-wordpress-gotovy-platit-23-milliona-rublej?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Булат Яббаров]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/za-najdennye-ujazvimosti-v-wordpress-gotovy-platit-23-milliona-rublej</guid>
      <description><![CDATA[<p>Zerodium подняла награду за эксплоит для WordPress до 300 тыс долларов. Работать он должен на свежей версии, без плагинов и без аутентификации.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/za-najdennye-ujazvimosti-v-wordpress-gotovy-platit-23-milliona-rublej">За найденные в WordPress уязвимости готовы платить по 23 миллиона рублей</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Информационная безопасность]]></category>
      <category><![CDATA[Взлом]]></category>
      <category><![CDATA[Уязвимость]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 12 Apr 2021 07:33:45 GMT</pubDate>
      <content:encoded><![CDATA[<p>Компания Zerodium объявила об увеличении награды за нахождение уязвимостей в движке WordPress. Если раньше она платила по 100 тыс долларов за каждую, то сейчас готова раскошелиться аж на 300 тыс долларов (более 23 млн рублей).</p><figure><img src="https://media.tproger.ru/uploads/2021/04/1-10.png" alt="" /></figure><p>В своём Twitter-аккаунте компания описала требования к эксплоиту. Он должен работать на самой свежей версии WordPress, при этом с дефолтными настройками и без сторонних плагинов. Также важно, чтобы метод взлома не требовал аутентификации или взаимодействия с пользователем.</p><p>Представители Zerodium также объявили, что предложение о награде — временное. При этом никаких сроков окончания выплаты повышенного вознаграждения они не озвучили.</p><p>Если вам удалось обнаружить уязвимость, удовлетворяющую требованиям компании, можете связаться с ней, кликнув по <a href="https://submit.zerodium.com/">ссылке</a>.</p><p>Источник: Twitter/Zerodium</p>]]></content:encoded>
    </item>
    <item>
      <title>В WordPress-плагине с 5 миллионами установок нашли критическую уязвимость</title>
      <link>https://tproger.ru/news/v-wordpress-plagine-s-5-millionami-ustanovok-nashli-kriticheskuju-ujazvimost</link>
      <comments>https://tproger.ru/news/v-wordpress-plagine-s-5-millionami-ustanovok-nashli-kriticheskuju-ujazvimost?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Булат Яббаров]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/v-wordpress-plagine-s-5-millionami-ustanovok-nashli-kriticheskuju-ujazvimost</guid>
      <description><![CDATA[<p>Astra Security обнаружила неограниченную загрузку файлов в плагине Contact Form 7 версии 5.3.1 и старше, разработчик уже выпустил патч.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/v-wordpress-plagine-s-5-millionami-ustanovok-nashli-kriticheskuju-ujazvimost">В WordPress-плагине с 5 миллионами установок нашли критическую уязвимость</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Информационная безопасность]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 18 Dec 2020 13:06:32 GMT</pubDate>
      <content:encoded><![CDATA[<p>Специалисты по кибербезопасности из Astra Security <a href="https://www.getastra.com/blog/911/plugin-exploit/contact-form-7-unrestricted-file-upload-vulnerability/">опубликовали</a> свежий доклад. В нём они рассказали об уязвимости, найденной в популярном WordPress-плагине под названием Contact Form 7.</p><figure><img src="https://media.tproger.ru/uploads/2020/12/Screen-Shot-2020-12-18-at-16.02.34.png" alt="" /></figure><p>Команда исследователей под руководством Джинсона Варгезе обнаружила возможность неограниченной загрузки файлов в версии плагина 5.3.1 и старше. Используя данную брешь, хакеры могли загружать на сервер абсолютно любые файлы, несмотря на установленные пользователем ограничения. Также найденная уязвимость позволяла посторонним внедрять вредоносный код, в том числе и в виде веб-шеллов.</p><p>Astra Security Research уже направила письмо разработчику плагина, в результате чего он успел выпустить патч, закрывающий дыру в безопасности. В свою очередь пользователям специалисты из Astra посоветовали <a href="https://contactform7.com/2020/12/17/contact-form-7-532/">обновиться</a> до Contact Form 7 5.3.2.</p><p>Напомним, что Contact Form — один из самых популярных плагинов для создания контактных форм на сайте. С его помощью можно создавать формы любых видов. Также в числе преимуществ плагина часто называют гибкость и удобство его настройки вместе с огромным коммьюнити, способным помочь в решении тех или иных проблем.</p><p>Источник: <a href="https://www.getastra.com/blog/911/plugin-exploit/contact-form-7-unrestricted-file-upload-vulnerability/">Astra Security</a></p>]]></content:encoded>
    </item>
    <item>
      <title>В WP-плагине Ad Inserter обнаружили уязвимость, получившую 9,9 баллов по CVSS</title>
      <link>https://tproger.ru/news/ad-inserter-vulnerability</link>
      <comments>https://tproger.ru/news/ad-inserter-vulnerability?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Екатерина Никитина]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/ad-inserter-vulnerability</guid>
      <description><![CDATA[<p>Wordfence нашла в плагине Ad Inserter дыру с удалённым исполнением PHP-кода на 200 тысячах сайтов. Уязвимость закрыта в версии 2.4.22.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/ad-inserter-vulnerability">В WP-плагине Ad Inserter обнаружили уязвимость, получившую 9,9 баллов по CVSS</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 16 Jul 2019 15:17:09 GMT</pubDate>
      <content:encoded><![CDATA[<p>Специалисты из Wordfence <a href="https://www.wordfence.com/blog/2019/07/critical-vulnerability-patched-in-ad-inserter-plugin/">обнаружили</a> критическую уязвимость в популярном WordPress-плагине для управления рекламой — Ad Inserter. Уязвимость получила 9,9 баллов по CVSS. Она допускает удалённое исполнение произвольного PHP-кода на сайтах с установленным Ad Inserter. Таких 200 тысяч в Интернете.</p><h2>Патч есть?</h2><p>Да. В версии 2.4.22 уязвимость закрыли. По словам специалистов из Wordfence, разработчики плагина выпустили обновление буквально на следующий день после сообщения об уязвимости.</p>]]></content:encoded>
    </item>
    <item>
      <title>Хакеры атакуют интернет-магазины через XSS-уязвимость в WP-плагине</title>
      <link>https://tproger.ru/news/wp-plugin-xss-vulnerability</link>
      <comments>https://tproger.ru/news/wp-plugin-xss-vulnerability?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Екатерина Никитина]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wp-plugin-xss-vulnerability</guid>
      <description><![CDATA[<p>Бэкдоры ставят через уязвимость в плагине Abandoned Cart Lite for WooCommerce с более чем 20 тысячами загрузок; патч вышел в версии 5.2.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wp-plugin-xss-vulnerability">Хакеры атакуют интернет-магазины через XSS-уязвимость в WP-плагине</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Wed, 13 Mar 2019 13:23:31 GMT</pubDate>
      <content:encoded><![CDATA[<p>Хакеры устанавливают бэкдоры на сайтах интернет-магазинов через XSS-уязвимость в плагине WordPress. Пользоваться плагином могут только администраторы и привилегированные пользователи — это позволяет выполнить вредоносный код с правами высокого уровня.</p><h2>Почему это важно?</h2><p>У плагина Abandoned Cart Lite for WooCommerce больше 20 тысяч загрузок, он широко распространён. Разработчики уже выпустили патч в версии 5.2.</p>]]></content:encoded>
    </item>
    <item>
      <title>Аргументы и функции, главное за неделю</title>
      <link>https://tproger.ru/newsletter/25-feb-2019</link>
      <comments>https://tproger.ru/newsletter/25-feb-2019?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Екатерина Никитина]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/newsletter/25-feb-2019</guid>
      <description><![CDATA[<p>Путин об автономном Рунете, а также уязвимости в WordPress и WinRAR</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/newsletter/25-feb-2019">Аргументы и функции, главное за неделю</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Уязвимость]]></category>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[Аргументы и функции]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 25 Feb 2019 17:35:36 GMT</pubDate>
      <content:encoded><![CDATA[<h3>Автономный Рунет</h3><p>Что случилось? Владимир Путин <a href="https://tproger.ru/news/vladimir-putin-isolated-runet/">рассказал</a>, что думает об угрозах, которые приводятся в проекте об автономном Рунете.</p><p>Что сказал? Если говорить своими словами, примерно следующее:</p><blockquote>Россия не собирается «сама себя отключать» от Интернета. Да и «партнёры» «сто раз подумают», прежде чем это сделать, ведь «ущерб для них будет очень большой, если не сказать колоссальный». Кроме того, это невыгодно зарубежным спецслужбам. «Они же там сидят, это же их изобретение, и все слушают, видят и читают, что вы говорите, и накапливают эту информацию, а так не будут».Тем не менее, мы не можем залезть «партнёрам» в головы и проверить, «что у них на уме». «Всё может быть». Поэтому «чем больше суверенитета, в том числе в цифровой сфере, тем лучше».</blockquote><p>***</p><p>Что случилось? Правительство РФ <a href="https://tproger.ru/news/isolated-runet-center-task/">начало</a> раздавать задачи министерствам и ведомствам по проекту об автономном Рунете. Пока сосредоточились на информационной системе (для мониторинга и управления сетями связи) и Центре (мониторинга и управления сетями связи).</p><p>Кому что поручили? РКН — создать Центр (к июлю) и систему (к январю). Минкомсвязи — определиться, какие данные будут стекаться в информационную систему (к маю), и подготовить регламент взаимодействия этой системы с другими государственными информационными системами (к январю).</p><h2>Уязвимости</h2><p>Что случилось? В даркнете <a href="https://xakep.ru/2019/02/18/gfycat-3rd-dump/">появились</a> в продаже базы пользовательских данных восьми ресурсов. Затронуты 93 миллиона пользователей.</p><p>Как узнать, затронуты ли мои данные? Портал ZDNet <a href="https://www.zdnet.com/article/hacker-puts-up-for-sale-third-round-of-hacked-databases-on-the-dark-web/">опубликовал</a> список ресурсов, откуда предположительно были украдены данные: Legendas.tv, Jobandtalent, Onebip, StoryBird, StreetEasy, GfyCat, ClassPass, Pizap.</p><p>Если у вас есть учётная запись на одном из них, лучше перестраховаться и сменить пароль или вообще удалить аккаунт.</p><p>***</p><p>Что случилось? Microsoft поделилась интересной статистикой. Из всех уязвимостей, выявленных и пропатченных в продуктах компании за последние 12 лет, в среднем 70 % <a href="https://www.zdnet.com/article/microsoft-70-percent-of-all-security-bugs-are-memory-safety-issues/">относятся</a> к проблемам доступа к памяти.</p><p>Почему это? Говорят, потому что Windows в основном писали на C++ и C — языках, в которых управление памятью ложится на хрупкие плечи разработчиков</p><p>***</p><p>Что случилось? В WordPress <a href="https://blog.ripstech.com/2019/wordpress-image-remote-code-execution/">нашли</a> уязвимось, которая была активна на протяжении шести лет. Чтобы удалённо выполнить на сервере произвольный код, злоумышленнику нужен был лишь доступ к целевому сайту хотя бы с правами автора и полминуты времени.</p><p>Защита есть? Да, в WordPress 4.9.9 и 5.0.1 возможность удалённого исполнения кода перекрыта патчем для другой уязвимости. Однако если на сайте какой-нибудь плагин некорректно обрабатывает поля Post Meta, это открывает сервер для удалённого исполнения кода. Количество таких сайтов, говорят специалисты, исчисляется миллионами.</p><p>Разработчики WordPress обещали исправить это в следующем выпуске ядра.</p><p>***</p><p>Что случилось? В WinRAR <a href="https://tproger.ru/news/winrar-ace-vulnerability/">нашли</a> уязвимость, затрагивающую все версии архиватора за 19 лет. Если злоумышленник убедит жертву распаковать вредоносный архив, то может закинуть малварь в список автозагрузки. Устройство будет запускать её каждый раз с запуском системы.</p><p>Что с патчем? Во всём виновата устаревшая сторонняя библиотека unacev2.dll, которая отвечала за распаковку файлов формата ACE. В WinRAR 5.70 Beta 1 разработчики удалили её, так что работу с ACE-файлами архиватор теперь не поддерживает, зато и дыра исчезла.</p><h2>Веб</h2><p>Что случилось? Разработчик Патрик Халс <a href="https://github.com/patrickhulce/third-party-web">исследовал</a>, сколько времени загружаются разные части кода самых популярных сайтов.</p><p>Какие результаты? Выяснилось, что 60 % времени загрузки сайта занимает загрузка сторонних скриптов, в том числе рекламных и следящих. В исследовании приводится анализ скриптов разного назначения, так что веб-разработчики могут покопаться и приметить из них наиболее эффективные.</p><p>***</p><p>Что случилось? Google <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-extensions/WcZ42Iqon_M">разъяснила</a> свою позицию по третьей версии «Манифеста» — правил для расширений Chrome. Этот документ вызвал немало споров из-за того, что одно из изменений может «сломать» стороннин блокировщикт рекламы.</p><p>Что сказала Google?</p><blockquote>Нет, компания не собирается «ломать» блокировщики. И webRequest API полностью не закроет. Прямо сейчас никаких потрясений не ждите: третья версия «Манифеста» пока на стадии черновика, он дополняется и исправляется. Так что присылайте фидбек, особенно если новый «Манифест» оказывается несовместим с расширением.</blockquote><p>***</p><p>Что случилось? Как и было <a href="https://tproger.ru/news/google-dev-domain-name">обещано</a> в прошлом году, Google <a href="https://tprg.ru/whtf">открыла</a> ранний доступ к регистрации доменов в зоне .dev. Она специально создана под IT-ресурсы. Зарегистрировать домен по этой программе можно до 28 февраля, но за отдельную плату. С марта регистрацию откроют для всех желающих.</p><p>Зачем тогда нужен ранний доступ? Чтобы успеть «застолбить» самое лакомое доменное имя. К примеру, так появились women.dev, privacy.dev, web.dev, agile.dev и куча других, к сожалению, уже занятых сайтов.</p><blockquote>А теперь к учебно-полезному. Лежит у нас подборка бесплатных видеокурсов на русском языке по работе с популярными бесплатными CMS. Это Joomla, WordPress, MODX и Drupal. Не откладывайте на завтра то, что можно узнать сегодня.</blockquote><h2>Fold</h2><p>Что случилось? Samsung наконец <a href="https://tproger.ru/news/galaxy-fold-samsung/">показала</a> Galaxy Fold — свой первый коммерческий складной смартфон с гибким экраном.</p><p>Что получилось? В разложенном состоянии он напоминает скорее планшет, чем смартфон: на большом экране помещается целых три активных приложения. У Galaxy Fold два аккумулятора, 512 ГБ встроенной и 12 ГБ оперативной памяти. Камер аж шесть: одна на лицевой стороне (10 Мп), две на внутренней (8 и 10 Мп) и три на задней панели (12, 12 и 16 Мп).</p><p>Поставки начнутся 26 апреля, в том числе, в Россию. Цена — от 2 тысяч долларов (около 140 тысяч рублей).</p>]]></content:encoded>
    </item>
    <item>
      <title>Видеокурсы по лучшим бесплатным движкам для сайта</title>
      <link>https://tproger.ru/video/free-cms-educational-videos</link>
      <comments>https://tproger.ru/video/free-cms-educational-videos?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Алексей Грачев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/video/free-cms-educational-videos</guid>
      <description><![CDATA[<p>Подборка русскоязычных видеокурсов по бесплатным системам управления содержимым, на которых можно быстро развернуть сайт-визитку или проект посложнее.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/video/free-cms-educational-videos">Видеокурсы по лучшим бесплатным движкам для сайта</a>»</p>]]></description>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Видео]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 21 Feb 2019 09:13:41 GMT</pubDate>
      <content:encoded><![CDATA[<p>Если заказчику в сжатые сроки нужен сайт, то написать полноценный сайт с нуля вряд ли получится. Однако можно воспользоваться готовыми CMS (Content Management System, или <a href="https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%BC%D1%8B%D0%BC">система управления содержимым</a>). Они обладают обширной функциональностью и позволяют развернуть, к примеру, сайт-визитку компании за короткое время. Таких решений много как платных, так и бесплатных.</p><p>В этой статье мы собрали видеокурсы на русском языке по популярным бесплатным движкам для сайта — <a href="https://www.joomla.org">Joomla</a>, <a href="https://ru.wordpress.org">WordPress</a>, <a href="https://modx.com/">MODX</a> и Drupal.</p><h3>Joomla!</h3><p>Joomla! — это CMS с открытым исходным кодом. Система написана на языках PHP и JavaScript. При первоначальной установке Joomla! содержит минимальный набор функций, который можно увеличить с помощью многочисленных расширений.</p><p>На YouTube есть русскоязычный проект Joomla Sensei, который охватывает как основы движка Joomla! 3, так и работу с различными расширениями CMS. Уроки помогут разобраться с тонкостями настройки движка, создать красивый и производительный дизайн и расширить функциональность сайта, добавив всплывающие окна, интеграцию с «ВКонтакте», музыкальный плеер, галерею изображений и многое другое.</p><h3>WordPress</h3><p>В этом видеокурсе вы познакомитесь с одной из самых известных CMS — WordPress. Система обладает обширной функциональностью для создания сайтов-блогов. Внешний вид сайта можно настроить с помощью большого количества как платных, так и бесплатных тем, а разнообразные плагины помогут достаточно неплохо персонализировать функции сайта под свои нужды.</p><p>Курс научит:</p><ul><li>работе с базовыми компонентами движка (Post Type, Taxonomy, Widget и Sidebar);</li><li>созданию миниатюр и персональных шаблонов (Custom Template), поддерживающих мультиязычность;</li><li>внедрению в сайт JavaScript-библиотек и CSS-стилей;</li><li>реализации навигации на сайте.</li></ul><h3>MODX</h3><p>Система MODX свободно распространяется по лицензии GPL. Её ядро написано на PHP. MODX позволяет создать сайт различного уровня сложности — от одностраничного сайта-визитки до полноценного интернет-магазина. Актуальная версия CMS — MODX Revolution. Именно её используют в следующих видеоуроках:</p><p>В первом видео автор рассказывает о том, как установить MODX, какие плагины использовать в первую очередь и как настроить CMS для дальнейшей работы. Следующие уроки поясняют, как разграничить права доступа на сайте, создать настраиваемый фильтр контента, перенести готовую вёрстку страниц на MODX и многое другое.</p><h3>Drupal</h3><p>Drupal также является CMS с открытым исходным кодом. В отличие от WordPress, Drupal даёт возможность реализовать практически любой сайт. К тому же, CMS обладает развитым сообществом, которое поможет найти ответ на многие вопросы. Однако из-за его универсальности движок достаточно сложен, поэтому потребуется много времени на его освоение.</p><p>Видеокурс от канала loftblog подойдёт в качестве введения в разработку сайта на Drupal. В нём объясняется, как установить Drupal и локализацию интерфейса, что такое модули и как с ними работать, что умеет административная панель управления, а также как перевести сайт на более новую версию движка.</p><p>В предыдущем курсе рассматривается Drupal 7, однако актуальной версией является Drupal 8. Если хотите продолжить изучение этого движка, можно просмотреть видеокурс ниже. В нём более подробно рассказывается о разработке сайта на Drupal:</p><p>Дополнительную информацию о движке можно узнать из официальной документации или на <a href="https://drupal.ru/forum">форуме</a> русскоязычного сообщества.</p><p>Смотрите также: <a href="https://tproger.ru/digest/website-builders-review/">Обзор лучших конструкторов сайтов</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Аргументы и функции, 8−11 декабря</title>
      <link>https://tproger.ru/newsletter/11-dec-2018</link>
      <comments>https://tproger.ru/newsletter/11-dec-2018?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Екатерина Никитина]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/newsletter/11-dec-2018</guid>
      <description><![CDATA[<p>К концу года вышло много обновлений, поэтому дайджест кратко проходит по релизам и отдельно отмечает, что WordPress тоже не остался без внимания.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/newsletter/11-dec-2018">Аргументы и функции, 8−11 декабря</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Нейронные сети]]></category>
      <category><![CDATA[Google]]></category>
      <category><![CDATA[Аргументы и функции]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 11 Dec 2018 17:18:44 GMT</pubDate>
      <content:encoded><![CDATA[<h3>О чём сегодня речь</h3><ul><li><a href="https://tproger.ru/#releases">Релизы</a>: PyTorch, Git, Qt Creator, WordPress и Rust.</li><li><a href="https://tproger.ru/#linux">Взлом linux.org</a> и <a href="https://tproger.ru/#googlep">утечка в Google+</a>.</li><li><a href="https://tproger.ru/#3d-characters">Нейросеть, которая «оживляет» людей на фото</a>. Не так, как в «Гарри Поттере», но тоже круто.</li></ul><h3>Сплошные релизы</h3><p>К концу года все как с цепи сорвались, так что по обновлениям пробежимся галопом.</p><ul><li><a href="https://tproger.ru/news/pytorch-1-0-release/">PyTorch0</a> — наконец-то полностью стабильная версия ML-библиотеки от Facebook. Она получила набор JIT-компиляторов, которые трансформируют код модели в Torch Script. Это снимает зависимость от совместимости других проектов с Python. По словам разработчиков, такие модели можно использовать в C++ API. Кроме того, библиотека получила интерфейс на C++ и поддержку крупных облачных платформ.</li><li><a href="https://tproger.ru/news/git-2-20-release/">Git20</a> — в этом выпуске разработчики внесли изменения в интерфейс и то, как обрабатываются рабочие процессы, а ещё подкрутили производительность и изменили функционирование некоторых команд. Команда проекта говорит, это самый крупный релиз из ветки 2.x.x — он потребовал внести 962 изменения в код.</li><li><a href="https://tproger.ru/news/qt-creator-4-8-0-release/">Qt Creator 4.8</a> — новая версия IDE получила поддержку протокола языкового сервера (LSP), плагин ClangFormat для автоформатирования кода, анализатор Cppcheck, а также возможность одновременно запускать сразу несколько отладчиков.</li><li><a href="https://tproger.ru/news/rust-2018/">Rust 2018 (1.31)</a> — разработчики дали этой версии дополнительное числовое название «2018», чтобы отделить её от предшествующих, помеченных как «2015». Обе эти ветки языка будут поддерживаться наравне, но некоторые новые возможности войдут только в «восемнадцатую» версию, поскольку с «пятнадцатой» несовместимы. Такие изменения уже есть: доработанная проверка заимствования и изменённая работа путей для доступа к пространству имён.</li></ul><p>Нет, про WP не забыли.</p><p>Версия WordPress 5.0 <a href="https://tproger.ru/news/wordpress-5-0-release/">получила</a> кодовое название Bebo, в честь <a href="https://music.yandex.ru/artist/9390">Бебо Вальдеса</a> — кубинского джазового музыканта.</p><p>В этом релизе разработчики делают упор на блочный принцип: он помогает безболезненно менять структуру сайта, тасуя блоки контента. Редактор Gutenberg оперирует типами контента и даже позволяет создавать свои собственные варианты блоков.</p><figure><img src="https://media.tproger.ru/uploads/2018/12/Annotation-2018-12-07-170754.jpg" alt="" /></figure><p>Если кому-то новый редактор придётся не по нраву (или же он внезапно поломается), можно подключить плагин Classic Editor, который вернёт редактор прошлой версии. Плагин будет поддерживаться до 2021 года.</p><blockquote>Кто увлекается веб-технологиями — все сюда. Tproger ищет человека, который бы вёл Telegram-канал по вебу. Нужно уметь грамотно изъясняться на русском и иметь опыт в разработке — чтобы «чувствовать» тему. В обмен предлагаем зарплату. Всё честно.</blockquote><h3>Протестные настроения в Linux</h3><p>В прошлую пятницу некие неизвестные (предположительно, пользователь Твиттера <a href="https://twitter.com/kitlol5">kitlol5</a>) <a href="https://tproger.ru/news/linux-org-hacked/">взломали</a> сайт linux.org и наделали там много шума. Главная страница пестрила лозунгами против новой версии CoC, насмешками над документом и его составителями. Нормативной лексикой хакер себя не ограничивал. Сейчас контроль над сайтом восстановлен.</p><figure><img src="https://media.tproger.ru/uploads/2018/12/1544194971679-linuxorg-redacted-copy.jpg" alt="" /></figure><h3>Ещё ближе к концу G+</h3><p>Google <a href="https://tproger.ru/news/google-plus-data-leak/">сказала</a>, что закроет социальную сеть Google+ не в августе 2019 года, а в апреле. Причина — ещё одна брешь в API, которая раскрывала данные 52,5 миллионов аккаунтов. Уязвимость вроде бы никто не использовал, но компания всё равно на всякий случай уведомляет пользователей. К середине марта 2019 года доступ к API G+ будет закрыт.</p><h3>“Живые” люди</h3><p>Исследователи из Facebook и Вашингтонского университета <a href="https://tproger.ru/news/3d-character-animation/">разработали</a> систему, которая на основе одной фотографии/рисунка человека строит его 3D-модель и показывает её в движении. Анимированная фигурка, сохраняя реалистичное внешнее сходство с оригиналом, умеет прыгать, ходить, бегать. Пользователи могут менять положение рук, ног, туловища и головы — и сохранять фотографию в новом виде. То же самое можно увидеть и в дополненной реальности.</p><p>Кстати, фон, с которого «фигурка» уходит, самовосстанавливается, как будто там никого и не было. Как тебе такое, Гарри Поттер?</p>]]></content:encoded>
    </item>
    <item>
      <title>Вышла WordPress 5.0: новый редактор и блочная система</title>
      <link>https://tproger.ru/news/wordpress-5-0-release</link>
      <comments>https://tproger.ru/news/wordpress-5-0-release?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Андрей Галадей]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-5-0-release</guid>
      <description><![CDATA[<p>Весь контент в WordPress 5.0 размещается в блоках, вместе с редактором Gutenberg вышла тема Twenty Nineteen, сборка доступна на 37 языках.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-5-0-release">Вышла WordPress 5.0: новый редактор и блочная система</a>»</p>]]></description>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sat, 08 Dec 2018 08:33:05 GMT</pubDate>
      <content:encoded><![CDATA[<p><a href="https://wordpress.org/news/2018/12/bebo/">Вышла</a> версия 5.0 системы управления контентом WordPress. Она получила кодовое название «Bebo». В новой версии добавлена возможность размещать весь контент в блоках, что позволяет легко настроить внешний вид сайта и порядок расположения данных на странице. Также в эту версию вошёл новый редактор контента. Сборка уже доступна на 37 языках.</p><h3>Новый редактор и новая тема</h3><p>В WordPress 5.0 появился новый блочный редактор контента <a href="https://ru.wordpress.org/plugins/gutenberg/">Gutenberg</a>. Вместе с ним разработчики WordPress добавили новую тему оформления по умолчанию. Она называется <a href="https://ru.wordpress.org/themes/twentynineteen/">Twenty Nineteen</a> и явно намекает этим на скорый 2019 год. Тема использует стили редактора, что позволяет добиться единообразия в отображении. Отмечается, что общий стиль сделан простым и современным, что должно положительно отразиться на скорости загрузки страницы. Для этого также используются системные шрифты.</p><figure><img src="https://media.tproger.ru/uploads/2018/12/twenty-nineteen.jpg" alt="" /></figure><p>Однако, если кому-то не по душе новый редактор, в сборке есть штатный плагин <a href="https://ru.wordpress.org/plugins/classic-editor/">Classic Editor</a>, который вернёт оригинальный редактор сайта из прошлой версии, а также редактор статей. При этом сами разработчики рекомендуют использовать именно Classic Editor в случае проблем с новым. Его поддержка продлится до 2021 года.</p><h3>Блоки</h3><p>В этой версии WordPress основой построения контента являются блоки: для картинок, текста, видео и других данных. Причём множество элементов уже доступно по умолчанию. По словам разработчиков, это позволит упростить разработку дизайна. Также пользователи могут создавать собственные варианты.</p><figure><img src="https://media.tproger.ru/uploads/2018/12/Annotation-2018-12-07-170754.jpg" alt="" /></figure><p>Утверждается, что с помощью новой блочной системы можно проще, быстрее и безопаснее менять дизайн и компоновку веб-страницы, не опасаясь потери данных в ходе редактирования.</p><p>Подробнее о редакторе WordPress 5.0 можно прочитать в <a href="https://wordpress.org/gutenberg/handbook/">документации к Gutenberg</a>.</p><p>В феврале 2018 года <a href="https://wordpress.org/news/2018/02/wordpress-4-9-3-maintenance-release/">вышла</a> сборка 4.9.3, а через несколько дней <a href="https://tproger.ru/news/wordpress-4-9-3-auto-update-issue/">появилась</a> и 4.9.4. Дело в том, что ранняя версия «сломала» автоматическое обновление CMS. Это привело к отключению функции после обновления до 4.9.3.</p>]]></content:encoded>
    </item>
    <item>
      <title>Бреши в WooCommerce и WordPress могут полностью скомпрометировать сайт</title>
      <link>https://tproger.ru/news/woocommerce-plugin-vulnerability</link>
      <comments>https://tproger.ru/news/woocommerce-plugin-vulnerability?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Андрей Галадей]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/woocommerce-plugin-vulnerability</guid>
      <description><![CDATA[<p>Специалисты RIPS Technologies нашли в плагине WooCommerce проблемы с ролями: менеджер магазина может редактировать аккаунты вплоть до администратора.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/woocommerce-plugin-vulnerability">Бреши в WooCommerce и WordPress могут полностью скомпрометировать сайт</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 08 Nov 2018 14:09:04 GMT</pubDate>
      <content:encoded><![CDATA[<p>Специалисты RIPS Technologies <a href="https://blog.ripstech.com/2018/wordpress-design-flaw-leads-to-woocommerce-rce/">обнаружили</a> бреши в плагине электронной коммерции WooCommerce для CMS WordPress. Уязвимости позволяют взять контроль над сайтом.</p><h3>Суть уязвимости</h3><p>В плагине сразу две проблемы. Первая состоит в том, что в модуле, добавляющем роли для пользователей, используется система привилегий WordPress. Плагин добавляет новую роль, а затем ограничивает её взаимодействие с настройками системы, используя собственные механизмы.</p><figure><img src="https://media.tproger.ru/uploads/2018/11/Annotation.jpg" alt="" /></figure><p>Одной из ролей является Shop Manager («менеджер магазина») с правом edit_users для редактирования учётных записей пользователей вплоть до администратора. В обычных условиях WooCommerce ограничивает это право. Но при отключении плагина защита снимается и Shop Manager получает доступ к другим учётным записям.</p><p>Вторая ошибка на версиях WooCommerce 3.4.5 и ниже приводит к тому, что Shop Manager может удалить любой файл плагина, в том числе критически важный для работы. Если это произойдёт, WordPress отключит плагин. Именно это и даст Shop Manager возможность редактировать чужие профили.</p><h3>Опасность бреши</h3><p>По словам исследователей, хакеру достаточно получить доступ к аккаунту Shop manager. Это возможно при использовании фишинга или XSS-уязвимостей. После этого злоумышленник может взять контроль над всем сайтом, просто сменив администратора.</p><p>Разработчики WooCommerce уже выпустили версию 3.4.6, в которой убрали эту брешь. Однако проблема остаётся, поскольку не все сайты на WordPress автоматически обновляют плагины. Потому рекомендуется проверить это и, в случае необходимости, обновить WooCommerce вручную. Актуальной версией <a href="https://ru.wordpress.org/plugins/woocommerce/">является</a> 3.5.1</p><p>В феврале 2017 года в WordPress была <a href="https://tproger.ru/news/wordpress-vulnerability/">обнаружена</a> брешь, которая позволяет провести десериализацию кода и, в определённых случаях, нарушить работу PHP-фреймворков.</p>]]></content:encoded>
    </item>
    <item>
      <title>Обнаружен бэкдор в тысячах сайтов на WordPress</title>
      <link>https://tproger.ru/news/backdoor-wordpress</link>
      <comments>https://tproger.ru/news/backdoor-wordpress?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Иван Паньшин]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/backdoor-wordpress</guid>
      <description><![CDATA[<p>Malwarebytes нашла более 2000 заражённых сайтов: злоумышленники используют бреши устаревших тем и плагинов и уводят людей на поддельную техподдержку.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/backdoor-wordpress">Обнаружен бэкдор в тысячах сайтов на WordPress</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sat, 22 Sep 2018 16:21:56 GMT</pubDate>
      <content:encoded><![CDATA[<p>Команда исследователей в сфере информационной безопасности обнаружила вредоносный код в тысячах сайтов на WordPress. С помощью данного бэкдора злоумышленники способы переадресовывать пользователей на поддельные сайты технической поддержки.</p><h3>В чем суть уязвимости?</h3><p>Исследователи из Malwarebytes полагают, что злоумышленники используют уязвимости не в самой системе WordPress, а в устаревших темах и плагинах. Как правило, заражение сайта вредоносным кодом происходит с помощью изменения PHP или JavaScript файлов. Впрочем, некоторые пользователи также <a href="https://stackoverflow.com/questions/52282559/how-to-delete-script-injected-on-wordpress-site-ads-voipnewswire-net">заявили</a> об обнаружении вредоносных изменений в базах данных.</p><p>После получения доступа к сайту злоумышленники перенаправляют часть пользователей на поддельные страницы технической поддержки. Цель подобного обмана — продажа ненастоящих антивирусных программ или получение удаленного доступа к компьютеру пользователя.</p><p>Кроме того, часть подобных мошеннических схем также использует баг Google Chrome под названием «evil cursor», который не позволяет пользователю закрыть вредоносный сайт.</p><h3>Насколько распространена уязвимость?</h3><p>Согласно отчету исследователей, вредоносный код можно найти на более чем 2500 сайтах. Однако реальное количество зараженных ресурсов может оказаться значительно больше, поскольку значение в 2500 было получено обыкновенным поиском в Google части вредоносного кода на JavaScript. <a href="https://media.tproger.ru/uploads/2018/09/wp-spam-campaign.png"></a> Владельцам веб-сайтов, пострадавших от атак, нужно будет определить, с помощью чего произошло заражение, и выполнить тщательную очистку страниц и баз данных.</p><p>Напомним, что это не единственная уязвимость, способная навредить сайтам на данной CMS. В конце августа 2018 года на конференции BSides <a href="https://tproger.ru/news/wordpress-vulnerability/">представили</a> доклад об уязвимости WordPress, также способной нанести ущерб многочисленному количеству сайтов. Впрочем, несмотря на то, что о проблеме известно уже более года, она так и не была решена.</p>]]></content:encoded>
    </item>
    <item>
      <title>Найдена уязвимость в WordPress, позволяющая нарушить работу сайтов</title>
      <link>https://tproger.ru/news/wordpress-vulnerability</link>
      <comments>https://tproger.ru/news/wordpress-vulnerability?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Артем Гаврилов]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-vulnerability</guid>
      <description><![CDATA[<p>Сэм Томас из Secarma показал, как загрузка изображения с вредоносным кодом через phar:// приводит к XXE-атаке на PHP-фреймворки.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-vulnerability">Найдена уязвимость в WordPress, позволяющая нарушить работу сайтов</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 17 Aug 2018 15:23:37 GMT</pubDate>
      <content:encoded><![CDATA[<p>Инженер-исследователь проблем безопасности компании Secarma Сэм Томас (Sam Thomas) <a href="https://www.zdnet.com/article/wordpress-vulnerability-affects-a-third-of-most-popular-websites-online/">выступил</a> с докладом на конференции BSides, где рассказал об уязвимости WordPress. Её обнаружили в феврале 2017 года, и дальнейшее игнорирование проблемы может привести к сбоям в работе многочисленных сайтов, использующих эту CMS.</p><h3>Суть проблемы</h3><p>Сэм объяснил, как злоумышленники могут навредить ресурсу. Разрешение на добавление изображений позволяет им загрузить иконку и инициировать обработку файла через распаковщик архивов phar://. В свою очередь, эксплойт осуществит <a href="https://ru.wikipedia.org/wiki/File_(схема_URI)#Атака_XXE">атаку XXE</a> (XML External Entity) и вызовет ошибки <a href="https://github.com/yandex/gixy/blob/master/docs/ru/plugins/ssrf.md">SSRF</a> (Server Side Request Forgery). Всё это приведёт к десериализации кода. Несмотря на то что из-за ошибок произойдёт незначительная утечка информации, их можно использовать для проведения более серьёзных атак. Десериализация происходит в момент, когда переменные конвертируются для PHP. При включённой автозагрузке выполнение кода нарушит работу PHP-фреймворков.</p><h3>Расположение</h3><p>По заявлению представителей компании Secarma, уязвимость WordPress на данный момент не получила номер в CVE. Она находится в функции wp_get_attachment_thumb_file файла /wpincludes/post.php. Как только злоумышленники получают доступ к параметрам вызова функции file_exists, проявляется баг.</p><p>К сожалению, эта уязвимость WordPress далеко не единственная. В конце мая 2018 года авторы плагина Wordfence <a href="https://tproger.ru/news/wordpress-jetpack-hack/">обнаружили</a> новый способ установки бэкдоров на WordPress. Несмотря на сложность метода, хакерам удалось провести несколько атак до выявления уязвимости. Затем в начале июня 2018 года исследователи Defiant <a href="https://tproger.ru/news/baba-yaga-wordpress/">опубликовали</a> отчёт о малвари «Баба Яга». Она атаковала сайты на WordPress, внедряла на страницы SEO-трафик и перенаправляла пользователей на торговые площадки. И уже в конце июня 2018 года сотрудники компании RIPS <a href="https://tproger.ru/news/wordpress-rips-bug/">сообщили</a> об уязвимости WordPress, позволяющей загружать в систему вредоносный код и удалять критически важные файлы. Для решения этой проблемы разработчики RIPS выпустили хотфикс.</p>]]></content:encoded>
    </item>
    <item>
      <title>В WordPress обнаружена новая уязвимость</title>
      <link>https://tproger.ru/news/wordpress-rips-bug</link>
      <comments>https://tproger.ru/news/wordpress-rips-bug?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Наташа Маркова]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-rips-bug</guid>
      <description><![CDATA[<p>С ее помощью можно загружать в систему произвольный код и удалить критически важные файлы с правами редактора. Разработчики RIPS выпустили собственный временный хотфикс.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-rips-bug">В WordPress обнаружена новая уязвимость</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 29 Jun 2018 10:06:43 GMT</pubDate>
      <content:encoded><![CDATA[<p>Сотрудники компании RIPS <a href="https://blog.ripstech.com/2018/wordpress-file-delete-to-code-execution/">сообщили</a> об уязвимости в WordPress, которая позволяет загружать в систему вредоносный код и удалять критически важные файлы. Ошибка представляет угрозу для всех версий CMS, включая WordPress 4.9.6.</p><h3>Суть проблемы</h3><p>Пользователи с правами редактора могут управлять изображениями, а также внедрять в CMS произвольный код и удалять критически важные для работы системы файлы. В нормальных условиях эти данные быть открыты только администратору на сервере или через FTP.</p><p><br /></p><p>По словам экспертов RIPS, даже доступа уровня User может быть достаточно для использования уязвимости.</p><h3>Файлы</h3><p>Злоумышленник может удалить файл wp-config.php и заново установить систему с вредоносным контентом.</p><p>Представители WordPress никак не прокомментировали ситуацию. Хотя официального патча пока нет, разработчики RIPS выпустили собственный временный хотфикс, код которого нужно добавить к файлу functions.php.</p><figure><img src="https://media.tproger.ru/uploads/2018/06/wordpress-vulnerability.png" alt="" /></figure><p>Часто виновниками уязвимостей в WordPress становятся плагины. В феврале 2018 года из-за зараженной JS-библиотеки в Browsealoud 4000 сайтов, включая ресурсы государственных структур, в течение четырех часов <a href="https://tproger.ru/news/crypto-miner-in-wordpress-plugin-browsealoud/">майнили</a> Monero.</p>]]></content:encoded>
    </item>
    <item>
      <title>Исследователи Defiant обнаружили малварь «Баба Яга», атакующую сайты на WordPress</title>
      <link>https://tproger.ru/news/baba-yaga-wordpress</link>
      <comments>https://tproger.ru/news/baba-yaga-wordpress?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Наташа Маркова]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/baba-yaga-wordpress</guid>
      <description><![CDATA[<p>Малварь «Баба Яга» атакует WordPress: обновляет движок, создает копии, удаляет другие вредоносы. Состоит из модулей спама и бэкдора.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/baba-yaga-wordpress">Исследователи Defiant обнаружили малварь «Баба Яга», атакующую сайты на WordPress</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[SEO]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 08 Jun 2018 18:41:23 GMT</pubDate>
      <content:encoded><![CDATA[<p>Компания Defiant опубликовала <a href="https://www.wordfence.com/wp-content/uploads/2018/06/Wordfence-BabaYaga-WhitePaper.pdf">отчет</a> о малвари «Баба Яга», которая атакует сайты на WordPress, внедряет на их страницы SEO-трафик и перенаправляет пользователей на торговые площадки.</p><h3>Возможности</h3><p>В отличие от аналогичных малварей, «Баба Яга» может обновлять и переустанавливать WordPress на сайте жертвы, а также создавать резервные копии на случай неудачных обновлений. Программа удаляет другие вредоносы, способные нарушить ее работу или работу сайта.</p><p>В Defiant полагают, что с помощью вируса «Баба Яга» также можно атаковать ресурсы под управлением Joomla и Drupal.</p><h3>Модули</h3><p>Вредонос состоит из двух основных модулей, один из которых размещает спамерский контент на зараженных сайтах. Второй представляет собой бэкдор, который дает злоумышленникам полный контроль над ресурсом.</p><h3>Создатели</h3><p>По мнению исследователей, «Баба Яга» была создана русскоговорящими хакерами. Она появилась давно, но ранее ничем не выделялась и не представляла большой опасности, уверены специалисты.</p><p>В мае 2018 года авторы плагина Wordfence <a href="https://tproger.ru/news/wordpress-jetpack-hack/">обнаружили</a> новый способ установки бэкдоров на WordPress-сайты. Сначала злоумышленники взламывают аккаунты, а затем используют плагин Jetpack для массовой установки вредоносного дополнения.</p>]]></content:encoded>
    </item>
    <item>
      <title>Хакеры нашли новый способ установки бэкдоров на Wordpress</title>
      <link>https://tproger.ru/news/wordpress-jetpack-hack</link>
      <comments>https://tproger.ru/news/wordpress-jetpack-hack?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Рамис Ганиев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-jetpack-hack</guid>
      <description><![CDATA[<p>Хакеры взламывают аккаунты WordPress и через Jetpack устанавливают бэкдоры на все сайты. Плагины не видны в панели администратора.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-jetpack-hack">Хакеры нашли новый способ установки бэкдоров на Wordpress</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 24 May 2018 13:22:29 GMT</pubDate>
      <content:encoded><![CDATA[<p>Авторы плагина Wordfence <a href="https://www.wordfence.com/blog/2018/05/wordpress-com-jetpack-infection/">обнаружили</a> новый способ установки <a href="https://ru.wikipedia.org/wiki/%D0%91%D1%8D%D0%BA%D0%B4%D0%BE%D1%80">бэкдоров</a> на сайты, основанные на движке WordPress. Метод требует прохождения сложных этапов, но хакеры уже <a href="https://wordpress.org/support/topic/malware-pluginsamonsters/">совершили</a> несколько атак.</p><h3>WordPress и Jetpack</h3><p>Первым делом злоумышленники взламывают аккаунты пользователей. Примечательно, что логин и пароль от панели управления WordPress.com отличаются от данных, используемых для входа в консоль сайтов под управлением одноименного движка.</p><p>Заполучив доступ, хакеры используют плагин Jetpack для массовой установки вредоносного дополнения во все сайты, подключенные к аккаунту. При этом установленные надстройки не отображаются в панелях администраторов.</p><figure><img src="https://media.tproger.ru/uploads/2018/05/WordPress-com-Jetpack.jpg" alt="" /></figure><p>В период с 16 по 21 мая 2018 года злоумышленники устанавливали бэкдоры с названиями «pluginsamonsters» и «wpsmilepack». Они используются для направления пользователей на фишинговые страницы.</p><h3>Защита от взлома</h3><p>Владельцам сайтов, связанных с Wordpress, рекомендуется изучить список установленных плагинов. При обнаружении подозрительных пакетов нужно их удалить, сменить пароль и включить двухфакторную аутентификацию.</p><p>Уязвимости в движке WоrdPress нередки. В мае 2017 года специалист по безопасности Давид Голунский <a href="https://tproger.ru/news/wordpress-zero-day-could-expose-password-reset-emails/">обнаружил</a> способ получить ссылку для сброса пароля от панели управления сайтом.</p>]]></content:encoded>
    </item>
    <item>
      <title>Amazon запустила плагин для WordPress, читающий вслух тексты постов</title>
      <link>https://tproger.ru/news/polly-amazon-text-to-speech-wordpress-plugin</link>
      <comments>https://tproger.ru/news/polly-amazon-text-to-speech-wordpress-plugin?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Светлана Хачатурян]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/polly-amazon-text-to-speech-wordpress-plugin</guid>
      <description><![CDATA[<p>Плагин Polly превращает записи WordPress в аудиофайлы и подкасты, поддерживает 47 голосов на 25 языках и умеет менять интонацию при чтении.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/polly-amazon-text-to-speech-wordpress-plugin">Amazon запустила плагин для WordPress, читающий вслух тексты постов</a>»</p>]]></description>
      <category><![CDATA[Распознавание]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Amazon]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sat, 10 Feb 2018 08:16:29 GMT</pubDate>
      <content:encoded><![CDATA[<p>Компания Amazon <a href="https://wordpress.org/plugins/amazon-polly/">представила</a> новый WordPress-плагин Polly, конвертирующий тексты в аудиофайлы и подкасты. Аудиозаписи можно воспроизводить как с самой страницы с постом, так и через сервис работы с подкастами Pollycast.</p><h3>Особенности</h3><p>Плагин разработан командой Amazon AWS на основе системы распознавания и чтения машинописного текста Polly. Сервис <a href="https://docs.aws.amazon.com/polly/latest/dg/voicelist.html">поддерживает</a> 47 женских и мужских голосов на 25 языках. В их число входят и два русскоязычных «диктора». Polly умеет «читать» в нескольких режимах, включая шёпот, ударение на словах, а также смену интонации и голоса при озвучивании цитаты, обрамленной кавычками.</p><p>Новый модуль можно интегрировать в любой сайт на движке WordPress. После успешной установки плагин будет вызывать Polly на обработку текста каждый раз, как пост сохраняется/обновляется в панели администратора.</p><figure><img src="https://media.tproger.ru/uploads/2018/02/setting-polly-parameters1.png" alt="" /></figure><p>А подкастерам плагин предлагает функцию Pollycast, позволяющую управлять настройками iTunes, которые генерируются в новостных лентах RSS-агрегаторов:</p><figure><img src="https://media.tproger.ru/uploads/2018/02/wp-polly-itunes-pollycast.png" alt="" /></figure><figure><img src="https://media.tproger.ru/uploads/2018/02/wp_hello_world_cost_3.png" alt="" /></figure><p>С иллюстрированной инструкцией по установке расширения <a href="https://aws.amazon.com/ru/blogs/aws/give-your-wordpress-blog-a-voice-with-our-new-amazon-polly-plugin/">можно ознакомиться</a> на официальном сайте Amazon AWS.</p>]]></content:encoded>
    </item>
    <item>
      <title>Новая версия WordPress сломала функцию автообновления движка</title>
      <link>https://tproger.ru/news/wordpress-4-9-3-auto-update-issue</link>
      <comments>https://tproger.ru/news/wordpress-4-9-3-auto-update-issue?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Светлана Хачатурян]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-4-9-3-auto-update-issue</guid>
      <description><![CDATA[<p>После установки WordPress 4.9.3 обновления CMS приходится ставить вручную; разработчики выпустили экстренную версию 4.9.4 для исправления функции.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-4-9-3-auto-update-issue">Новая версия WordPress сломала функцию автообновления движка</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[CMS]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 09 Feb 2018 20:03:53 GMT</pubDate>
      <content:encoded><![CDATA[<p>5 февраля <a href="https://wordpress.org/news/2018/02/wordpress-4-9-3-maintenance-release/">был представлен</a> WordPress 4.9.3. Помимо исправлений багов более ранних версий, очередное обновление принесло новые ошибки. Так, уже 6 февраля разработчики <a href="https://wordpress.org/news/2018/02/wordpress-4-9-4-maintenance-release/">были вынуждены</a> выпустить экстренную версию 4.9.4. Предыдущий релиз в буквальном смысле сломал важную функцию, отвечающую за автообновления CMS.</p><p>Всем обновившимся до 4.9.3 придется устанавливать следующую версию уже вручную через панель администратора.</p><p>Следует отметить, что и в самом свежем релизе движка на данный момент отсутствует патч для устранения <a href="https://tproger.ru/news/wordpress-dos-vulnerability/">недавно обнаруженной</a> проблемы с load-scripts.php, позволяющей «положить» практически любой сервер на WP.</p>]]></content:encoded>
    </item>
    <item>
      <title>Обнаружена уязвимость, позволяющая «положить» почти все сайты на движке WordPress</title>
      <link>https://tproger.ru/news/wordpress-dos-vulnerability</link>
      <comments>https://tproger.ru/news/wordpress-dos-vulnerability?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Светлана Хачатурян]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-dos-vulnerability</guid>
      <description><![CDATA[<p>Файл load-scripts.php в WordPress принимает тяжёлые запросы без входа в аккаунт, что позволяет перегружать сервер и вызвать отказ в обслуживании.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-dos-vulnerability">Обнаружена уязвимость, позволяющая «положить» почти все сайты на движке WordPress</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 06 Feb 2018 21:26:46 GMT</pubDate>
      <content:encoded><![CDATA[<p>Независимому специалисту по информационной безопасности Бараку Товайли <a href="https://xakep.ru/2018/02/06/wordpress-dos/">удалось обнаружить</a> критическую уязвимость в CMS WordPress. Баг позволяет злоумышленникам эксплуатировать особенности файла load-scripts.php для массированной атаки, приводящей к отказу от обслуживания. Бреши присвоен идентификатор <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6389">CVE-2018-6389</a>, патчей для нее пока нет.</p><h3>Детали находки</h3><p>Файл load-scripts.php с уязвимостью внедрен в WP для обработки пользовательских запросов. Изначально он был создан для увеличения производительности сайтов путем объединения нескольких JS-файлов. Оказалось, что этот файл не оснащен дополнительной защитой. Это позволяет скрипту работать без необходимости вводить логин и пароль.</p><figure><img src="https://media.tproger.ru/uploads/2018/02/wordpress_DoS90975.jpg" alt="" /></figure><p>Основная задача load-scripts.php заключается в выборочной загрузке файлов JavaScript, названия которых перечисляются после параметра load. Так как этот файл включает в себя список используемых модулей, то можно одним запросом вывести все входящие в него элементы. В среднем общий объем предоставляемых файлов составляет 4 Мб. Посылая множество тяжеловесных запросов, можно создать нагрузку на подсистему хранения, что в итоге может привести к отказу от обслуживания.</p><p>Барак Товайли отметил, что с одного устройства можно навредить только WordPress-сайту на «слабом» сервере. Для успешной атаки на более серьезные проекты потребуются большие вычислительные мощности. Специалист опубликовал видеоролик, в котором продемонстрировал эксплуатацию уязвимости:</p>]]></content:encoded>
    </item>
    <item>
      <title>От вредоносной кампании кейлоггеров пострадало более 2000 сайтов на WordPress</title>
      <link>https://tproger.ru/news/keylogger-campaign-hits-over-2000-wordpress-sites</link>
      <comments>https://tproger.ru/news/keylogger-campaign-hits-over-2000-wordpress-sites?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Светлана Хачатурян]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/keylogger-campaign-hits-over-2000-wordpress-sites</guid>
      <description><![CDATA[<p>Вредоносный код на старых или незащищённых WordPress-сайтах добавлял кейлоггер на страницу входа и Coinhive для майнинга Monero.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/keylogger-campaign-hits-over-2000-wordpress-sites">От вредоносной кампании кейлоггеров пострадало более 2000 сайтов на WordPress</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 26 Jan 2018 19:46:29 GMT</pubDate>
      <content:encoded><![CDATA[<p>Исследователи <a href="https://www.bleepingcomputer.com/news/security/keylogger-campaign-hits-over-2-000-wordpress-sites/">обнаружили</a> более 2000 WordPress-сайтов, зараженных кейлоггерами. Вредоносный код, загружающийся через страницу авторизации, встраивает в сайты скрипт для майнинга криптовалюты.</p><h3>Структура атаки</h3><p>В качестве цели злоумышленники выбирают незащищенные ресурсы на WordPress (преимущественно на старых версиях движка или с небезопасными плагинами) и используют эксплойты для внедрения вредоносных вставок в исходный код CMS.</p><p>Зловредный код состоит из двух частей. Первая — кейлоггер со стороннего домена, загружаемый в страницу входа администратора. А вторая часть отвечает за фронтенд, внедряя туда Coinhive — популярный браузерный майнер криптовалюты Monero.</p><p>Согласно <a href="https://blog.sucuri.net/2018/01/cloudflare-solutions-keylogger-returns-on-new-domains.html">отчету</a> Sucuri — компании, отслеживающей действия мошенников с апреля 2017 года, — на данный момент кейлоггеры злоумышленников хранятся на трех доменах: cdjs.online, cdns.ws и msdns.online. До этого вредоносные программы загружались с cloudflare.solutions.</p><h3>Что делать?</h3><p>Эксперты настоятельно рекомендуют всем владельцам WordPress-сайтов проверить движок на наличие обновлений и провести полноценный аудит исходного кода.</p><p>Это не первый случай массового заражения сайтов на популярной CMS. Например, в конце декабря 2017 года <a href="https://tproger.ru/news/wordpress-brute-force-attack/">прошла</a> массированная брутфорс-атака WordPress-ресурсов, поражавшая до 14 млн сайтов в час.</p>]]></content:encoded>
    </item>
    <item>
      <title>Проведено сравнение производительности WordPress-проекта на PHP и на .NET - Peachpie</title>
      <link>https://tproger.ru/news/wordpress-benchmarking-php-vs-dotnet</link>
      <comments>https://tproger.ru/news/wordpress-benchmarking-php-vs-dotnet?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Семён Алексин]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-benchmarking-php-vs-dotnet</guid>
      <description><![CDATA[<p>Компания Peachpie, занимающаяся разработкой инструмента для переноса PHP на .NET провела сравнение быстродействия сайта написанного на чистом PHP и с использованием технологий .NET — как оказалось, на .NET сайты работают быстрее.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-benchmarking-php-vs-dotnet">Проведено сравнение производительности WordPress-проекта на PHP и на .NET - Peachpie</a>»</p>]]></description>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[.NET]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 25 Jan 2018 20:31:04 GMT</pubDate>
      <content:encoded><![CDATA[<h3>Результаты тестирования</h3><p>Для сравнения быстродействия были установлены четыре клиента, отсылающие одновременно 128 запросов на главную страницу сайта. При этом использовалась WordPress 4.7, MySQL и две платформы: .NET Core 2.0 и Apache с PHP 7.2.</p><p>Из полученных данных выясняется, что на весь тест Peachpie потратил всего 7,7 секунд, в то время как у PHP на это ушло целых 11,7 секунд. Общее значение быстродействия у Peachpie составило 833,34 кбит/с, а у PHP — 593,94 кбит/с. Два значения, играющие основную роль в исследовании — это requests per second и time per request — сколько запросов обработал сервер за секунду, и сколько времени у него ушло на один запрос. Как оказалось, Peachpie смог обработать примерно 16 запросов за одну секунду, против 11 запросов у PHP. А 60,414 мс потраченного в среднем на один запрос времени у .NET превосходит 84,992 мс/запрос у Apache. Следующие графики визуализируют эти данные:</p><figure><img src="https://media.tproger.ru/uploads/2018/01/php-vs-dotnet-first-test1.png" alt="" /></figure><figure><img src="https://media.tproger.ru/uploads/2018/01/php-vs-dotnet-second.png" alt="" /></figure><p>Следуя информации, полученной на графиках, Peachpie обрабатывает на 40 % больше запросов в секунду, да и делает это на 40 % быстрее, чем PHP. Но и это не окончательный результат, ведь исследователи не брали в расчет оптимизацию кода и тому подобные детали. Для полноты картины рассмотрим также различные типы страниц в WordPress и различные уровни параллелизма, используя те же методы:</p><figure><img src="https://media.tproger.ru/uploads/2018/01/main-page-requests.png" alt="" /></figure><figure><img src="https://media.tproger.ru/uploads/2018/01/post-to-blog-requests.png" alt="" /></figure><p>Как видно из графиков, Peachpie работает быстрее Apache, причем с уменьшением параллелизма возрастает разница в производительности. Так, при одном пользователе .NET работает почти в два раза быстрее.</p><p>Мы не считаем себя экспертами в проведении бенчмарков, и в наших методах могут быть изъяны. Тестирование проводилось исключительно на платформе Windows, а не на каких-нибудь особенных дистрибутивах Linux с особенным ПО. К тому же, мы не настраивали PHP и не устанавливали opcache. Настроенный PHP будет работать гораздо быстрее, чем тот, что в примере. Однако, мы и не оптимизировали наш код на Peachpie.</p><h3>Выводы</h3><p>Приведенные выше тесты показали, что PHP может хорошо показать себя при работе с .NET. Однако эти цифры не являются окончательными. Разработчикам еще предстоит хорошо поработать над оптимизацией производительности Peachpie. К тому же, существует ряд настроек, которые исследователи опустили при тестировании и которые могли бы ускорить работу Apache. Однако, уже эти тесты показали, что Peachpie вполне работоспособная платформа, которую после ряда улучшений веб-разработчики смогут использовать в своих проектах бок о бок с .NET.</p>]]></content:encoded>
    </item>
    <item>
      <title>Служба безопасности WordPress обнаружила еще три плагина, содержащие бэкдоры</title>
      <link>https://tproger.ru/news/wordfence-discovered-three-more-plugins-with-backdoors</link>
      <comments>https://tproger.ru/news/wordfence-discovered-three-more-plugins-with-backdoors?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Максим Енбулаев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordfence-discovered-three-more-plugins-with-backdoors</guid>
      <description><![CDATA[<p>Вредоносный код позволял совершать несанкционированные изменения контента на страницах сайта. На данный момент все три плагина недоступны для скачивания с официального репозитория WordPress.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordfence-discovered-three-more-plugins-with-backdoors">Служба безопасности WordPress обнаружила еще три плагина, содержащие бэкдоры</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 29 Dec 2017 17:19:27 GMT</pubDate>
      <content:encoded><![CDATA[<p>За последние две недели <a href="https://www.wordfence.com/">WordFence</a> — служба безопасности WordPress — обнаружила еще три плагина, которые содержали в себе вредоносный код, позволяющий совершать несанкционированные изменения контента на страницах сайта. На данный момент все три плагина недоступны для скачивания с официального репозитория WordPress.</p><p>Бэкдоры обнаружены в плагинах <a href="https://wordpress.org/plugins/duplicate-page-and-post/">Duplicate Page and Post</a>, <a href="https://wordpress.org/plugins/nofollow-all-external-links/">No Follow All External Links</a> и <a href="https://wordpress.org/plugins/wp-noexternallinks/">WP No External Links</a>. Все три плагина были приобретены за прошедшие шесть месяцев, с целью внедрения SEO-спама на запущенных с ними сайтах. Внимание также привлекает тот факт, что их покупку оплатила одна компания.</p><p>Найденные бэкдоры имеют схожие принципы работы: отправляется запрос на определенный сервер, который возвращает информацию в зависимости от URL и статуса пользователя. Так, рядовой пользователь, администратор и бот могут получить на выходе различающийся контент. Предположительно, это используется для продвижения сайтов в рейтинге поисковиков.</p><h3>Позиция компании</h3><p>В WordPress и WordFence считают, что череда инцидентов несет умышленный централизованный характер:</p><blockquote>Мы уверены, что за приобретением и добавлением бэкдоров во все три плагина может стоять одно преступное лицо, с целью внедрения SEO-спама в тысячи веб-сайтов с запущенными плагинами. Принимая во внимание тот факт, что все расходы оплатила Orb Online, мы предполагаем, что эта компания использовала внедренные спам-ссылки для продвижения своих клиентов в поисковых системах.</blockquote><p>В целях безопасности WordFence рекомендует пользователям удалить вышеперечисленные плагины, а также проверить корректность информации на своих сайтах.</p><p>Ранее мы уже <a href="https://tproger.ru/news/backdoor-in-wordpress-plugin-captcha/">писали</a> об инциденте с Captcha — популярном плагине, в котором был выявлен бэкдор, предоставлявший злоумышленнику доступ к серверу с правами администратора.</p>]]></content:encoded>
    </item>
    <item>
      <title>Массированная брутфорс-атака «заражает» сотни тысяч сайтов на движке WordPress майнером Monero</title>
      <link>https://tproger.ru/news/wordpress-brute-force-attack</link>
      <comments>https://tproger.ru/news/wordpress-brute-force-attack?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Светлана Хачатурян]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-brute-force-attack</guid>
      <description><![CDATA[<p>Wordfence зафиксировала до 14 миллионов атак в час с 10 000 IP-адресов против 190 000 WordPress-сайтов; получив доступ, хакеры ставят майнер Monero.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-brute-force-attack">Массированная брутфорс-атака «заражает» сотни тысяч сайтов на движке WordPress майнером Monero</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 22 Dec 2017 08:42:46 GMT</pubDate>
      <content:encoded><![CDATA[<p>На этой неделе WordPress-сайты стали настоящей мишенью обширной брутфорс-кампании. Хакеры предпринимали попытки получить доступ к учетным записям администраторов для установки JavaScript-майнера Monero на скомпрометированные ресурсы. Атаки начались 18 декабря в 6:00 по московскому времени и до сих пор не сбавляют обороты.</p><h3>Невероятные объемы</h3><p>По <a href="https://www.wordfence.com/blog/2017/12/massive-cryptomining-campaign-wordpress/">заявлению</a> службы безопасности WordPress — Wordfence, — с такой масштабной кампанией движок сталкивается впервые за все время своего существования.</p><p>Это самая агрессивная кампания, которой мы когда-либо подвергались. В определенный момент число атак возросло до 14 миллионов в час. Чтобы выстоять перед таким тяжелым нападением, нам пришлось прибегнуть к расширению инфраструктуры логирования.</p><figure><img src="https://media.tproger.ru/uploads/2017/12/number-of-attacks.png" alt="" /></figure><p>По статистическим данным фирмы, брутфорс-запросы поступали с 10 000 уникальных IP-адресов и были нацелены на 190 000 WordPress-сайтов в час. Поначалу команда Wordfence предполагала, что атаки были спровоцированы размещенным на <a href="https://www.reddit.com/r/netsec/comments/7ikbzo/14_billion_clear_text_credentials_discovered_in_a/">Reddit</a> и GitHub торрент-файлом, содержащим около 1,4 млрд комбинаций логинов и паролей. Однако более глубокий анализ ситуации показал, что хакеры используют “комбинации из общих списков паролей и <a href="https://ru.wikipedia.org/wiki/%D0%AD%D0%B2%D1%80%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0">эвристики</a> на основе имени домена и содержимого атакуемого сайта”.</p><h3>Цель атаки</h3><p>Как только хакеры получают управляющий доступ к сайту, они устанавливают на него майнер Monero. Или же подключают к общей сети для продолжения брутфорс-атак. Поскольку все успешно захваченные сайты присоединяются к выполнению разных функций, число скомпрометированных ресурсов, вероятнее всего, в разы превышает количество IP-адресов, участвующих в кампании.</p><h3>Большие деньги</h3><p>Судя по адресным данным двух кошельков Monero, подключенных к незаконной майнинговой операции, хакеры уже успели заработать на ней порядка 100 000 $. Однако реальная сумма может быть намного больше, сообщает Wordfence. По словам экспертов, выбор криптовалюты Monero не удивителен, так как ее курс в этом месяце вырос вдвое, что привлекло серьезное внимание со стороны мошенников.</p><p>Конец уходящего года стал для WordPress настоящим испытанием. Напомним, что 21 декабря в одном из популярных плагинов для движка был <a href="https://tproger.ru/news/backdoor-in-wordpress-plugin-captcha/">обнаружен</a> бэкдор, устанавливающий аутентификационные cookie через учетную запись администратора. А месяцем ранее в CMS <a href="https://tproger.ru/news/wp-sql-injection-fixed/">нашли</a> уязвимость, позволяющую хакерам осуществлять SQL-инъекции в сайт.</p>]]></content:encoded>
    </item>
    <item>
      <title>В плагине WordPress Captcha обнаружен бэкдор</title>
      <link>https://tproger.ru/news/backdoor-in-wordpress-plugin-captcha</link>
      <comments>https://tproger.ru/news/backdoor-in-wordpress-plugin-captcha?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Вячеслав Шарунов]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/backdoor-in-wordpress-plugin-captcha</guid>
      <description><![CDATA[<p>В Captcha 4.3.7 для WordPress нашли бэкдор: он создавал сессию администратора, а WordPress заменила плагин на чистую версию 4.4.5.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/backdoor-in-wordpress-plugin-captcha">В плагине WordPress Captcha обнаружен бэкдор</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 21 Dec 2017 11:30:39 GMT</pubDate>
      <content:encoded><![CDATA[<p>В плагине для WordPress Captcha, насчитывающем более 300 тысяч установок, обнаружен бэкдор. Команда WordPress своевременно удалила его из официального репозитория, а также принудительно обновила своих клиентов на чистые версии плагина.</p><h3>Обнаружение бэкдора в Captcha</h3><p>Captcha был создан компанией BestWebSoft, и его бесплатная версия была продана ещё в сентябре 2017 года стороннему разработчику Simply WordPress. В начале декабря новый владелец плагина представил новую версию Captcha 4.3.7, которая и содержала вредоносный код.</p><p>Он заставлял плагин подключаться к внешнему домену simplywordpress.net, загружать обновление в обход официального репозитория WordPress.org. Такое действие запрещено правилами WordPress. Кроме того, устанавливаемое обновление содержало полноценный бэкдор.</p><p>Данный бэкдор создаёт сессию, используя user ID 1 (по умолчанию это учётная запись администратора, которая создаётся во время первой установки WordPress), устанавливает аутентификационные куки, а затем удаляет себя. При этом его установка никаким образом не обнаруживается.</p><h3>Дело случая</h3><p>Плагин и его действия привлекли внимание разработчиков по воле случая. Новый автор использовал в названии торговую марку WordPress, что нарушает авторские права. Из-за этого команда WordPress вынуждена была удалить Captcha из официального репозитория, чем самым и <a href="https://www.wordfence.com/blog/2017/12/backdoor-captcha-plugin/">привлекла</a> внимание сотрудников Wordfence.</p><blockquote>Как только репозиторий WordPress удаляет плагин с огромной клиентской базой, мы начинаем проверку произошедшего. Возможно, удаление связано с проблемами безопасности плагина.</blockquote><p>После обнаружения бэкдора WordPress заменила плагин на чистую версию 4.4.5 и начала насильно обновлять пострадавшие веб-сайты, удаляя версии с бэкдорами. По словам представителей команды WordPress, за прошедшие выходные удалось обновить более ста тысяч веб-сайтов. Все они получили чистые версии Captcha.</p><h3>Ещё несколько плагинов с уязвимостями</h3><p>Исследователи Wordfence проанализировали деятельность Simply WordPress и обнаружили, что домен simplywordpress.net распространяет обновления с бэкдорами и для других плагинов. Ни один из них не представлен в репозитории WordPress:</p><ul><li>Covert me Popup;</li><li>Death To Comments;</li><li>Human Captcha;</li><li>Smart Recaptcha;</li><li>Social Exchange.</li></ul><figure><img src="https://media.tproger.ru/uploads/2017/12/SimplyWordPress.png" alt="" /></figure><h3>Личность злоумышленника раскрыта</h3><p>По результатам своего расследования эксперты Wordfence пришли к выводу, что Simply WordPress связана с Мэйсоном Сойза, который уже был уличён во внедрении зловредов в плагин Display Widgets. Он использовал скомпрометированные версии плагинов для вставки скрытых обратных ссылок на спам-домены. В их числе была ссылка на Payday Loans – компанию, которой владеет Сойза. Цель его ухищрений – улучшенное ранжирование сайтов в результатах выдачи поисковых систем.</p>]]></content:encoded>
    </item>
    <item>
      <title>WordPress исправила баг с SQL-инъекцией срочным обновлением</title>
      <link>https://tproger.ru/news/wp-sql-injection-fixed</link>
      <comments>https://tproger.ru/news/wp-sql-injection-fixed?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Юлианна Поднебесная]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wp-sql-injection-fixed</guid>
      <description><![CDATA[<p>Обновление WordPress 4.8.3 добавляет защиту от CVE-2017-14723, связанной с небезопасными запросами $wpdb-&gt;prepare() в версиях 4.8.2 и ниже.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wp-sql-injection-fixed">WordPress исправила баг с SQL-инъекцией срочным обновлением</a>»</p>]]></description>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 02 Nov 2017 16:10:25 GMT</pubDate>
      <content:encoded><![CDATA[<p>Уязвимость обнаружена в системе управления контентом WordPress версии 4.8.2 и ниже. Во вторник WordPress <a href="https://wordpress.org/news/2017/10/wordpress-4-8-3-security-release/">объявила</a> о выпуске версии 4.8.3, в которой опасность уменьшена. Представитель CMS настоятельно рекомендует пользователям немедленно установить обновление.</p><h3>В чем причина уязвимости?</h3><p>Уязвимость <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14723">CVE-2017-14723</a> возникает в версиях WordPress 4.8.2 и ниже из-за того, что $wpdb-&gt;prepare() создает «неожиданные и небезопасные запросы», которые могут привести к SQL-атакам.</p><p>По словам команды WordPress, непосредственной опасности ядро WordPress не подвержено, однако в новой версии будет добавлена дополнительная защита, на случай, если плагины или темы случайно спровоцируют проявление этой уязвимости.</p><p>Об этой проблеме 20 сентября на платформе HackerOne <a href="https://blog.ircmaxell.com/2017/10/disclosure-wordpress-wpdb-sql-injection-background.html">сообщил</a> Энтони Феррара. Разработчики WordPress уже пытались исправить данную ошибку в версии 4.8.2, однако безопасность ядра так и не была обеспечена. Обновление повлияло на функциональность многих веб-сайтов, потенциально скомпрометировав более 1,2 миллиона строк кода.</p><p>На следующий день после релиза Феррара сообщил об ошибке, однако на его запрос несколько недель не обращали внимание. Только после того, как Феррара уведомил команду WordPress о том, что он собирается публично раскрыть эту проблему, и спустя пять недель переговоров, они смогли договориться о времени публичного объявления.</p><p>WordPress в сотрудничестве с Феррарой выпустила исправление, которое облегчает проблему. Однако, по словам все того же Феррары, этого недостаточно, чтобы решить проблемы, вызванные предыдущим патчем.</p><h3>Возможное решение проблемы</h3><p>Феррара отметил:</p><blockquote>Текущее исправление полностью убирает механизм prepare, который возвращает строку SQL-запросов. Сделайте то, что делают и все остальные: возвращайте объект выражения или запроса, либо выполняйте запрос напрямую. Таким образом вы не сможете продублировать строку.Стоит заметить, что данное решение повлечет за собой кардинальные изменения для WP.Не обязательно сразу все менять — можно разрабатывать альтернативное решение параллельно с существующим API. Это будет проблематично, но необходимо.Существующий API небезопасен. Это не значит, что он постоянно подвергается атакам, но означает, что он нуждается в срочной переработке.</blockquote><p>«Опасность снижена, — добавил Феррара. — Сначала перспектива сотрудничества не внушала оптимизма, но с течением работы положение улучшалось. Если прошлые 6 недель я был разочарован, то теперь я надеюсь на лучшее».</p><p>Установить обновление можно автоматически либо вручную, <a href="https://wordpress.org/download/">скачав WordPress 4.8.3</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>10 самых распространенных ошибок, которые делают разработчики на WordPress</title>
      <link>https://tproger.ru/articles/10-mistakes-wordpress</link>
      <comments>https://tproger.ru/articles/10-mistakes-wordpress?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Ярослав Сарницкий]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/10-mistakes-wordpress</guid>
      <description><![CDATA[<p>Советы по WordPress помогают заметить типичные ошибки: отключённую отладку, медленную загрузку страниц и неправильное размещение скриптов.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/10-mistakes-wordpress">10 самых распространенных ошибок, которые делают разработчики на WordPress</a>»</p>]]></description>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 17 Jul 2017 18:59:33 GMT</pubDate>
      <content:encoded><![CDATA[<p>Разработчики на WordPress в погоне за быстрыми результатами часто совершают одни и те же ошибки. Перед вами 10 советов, которые помогут с ними бороться.</p><h2>Включайте режим отладки</h2><p>Зачем использовать отладку, если код работает нормально? Отладка — это встроенная функция в WordPress, которая поможет отобразить все ошибки PHP, предупреждения и уведомления (включая устаревшие функции). С отключенной отладкой тяжело регистрировать нештатные ситуации, возникающие на сайте, что в конечном итоге может принести массу проблем. Кроме того, ошибки могут привести к существенному снижению скорости открытия страниц. Каждый раз, добавляя новый скрипт или пользовательский код в WordPress, включайте отладку (но не забывайте отключать её при введении новой функциональности в эксплуатацию).</p><p>Чтобы активировать режим отладки, нужно отредактировать файл wp-config.php в корневом каталоге установки WordPress:</p><p>Это не исчерпывающий список параметров конфигурации, которые можно использовать, но этой настройки должно хватить для решения большинства проблем на вашем ресурсе.</p><h2>Не добавляйте все скрипты в верхнюю часть сайта</h2><p>Хотя в WordPress есть множество популярных скриптов, многие разработчики добавляют дополнительные скрипты в wp_head. Это может привести к сильному снижению скорости загрузки страниц.</p><p>Решить эту проблему поможет очередность — удобный способ добавления скриптов и стилей для WordPress. Очередность используется для предотвращения возможных конфликтов плагинов и обработки зависимостей, которые могут возникать при использовании различных скриптов. В WordPress есть встроенные функции wp_enqueue_script и wp_enqueue_style, которые отвечают за выполнение скриптов и стилей соответственно. Основное отличие между этими двумя функциями заключается в том, что с wp_enqueue_script у нас есть дополнительный параметр, который позволяет переместить скрипт в подвал:</p><p>Если скрипт не нужен для рендеринга контента, мы можем смело перемещать его в нижнюю часть сайта. Таким образом страница будет быстро загружаться, а скрипт выполнится уже после полной загрузки контента.</p><p>Для того, чтобы проверить, насколько успешно вы провели эту или любую другую оптимизацию, <a href="https://tproger.ru/digest/website-inspection-services/">воспользуйтесь одним из веб-чекеров</a> — инструментов для сканирования и анализа сайтов.</p><h2>Создавайте дочерние темы и не меняйте файлы движка</h2><p>Всегда создавайте дочернюю тему, если планируете вносить изменения в шаблон. В родительских элементах поверх внесенных изменений может быть перезаписано что угодно, и после обновления вы увидите, что ваши старания пропали навсегда.</p><p>Чтобы создать дочернюю тему, поместите файл style.css в подкаталог папки дочерней темы и наполните подобным содержимым:</p><p>В приведенном выше примере создается дочерняя тема, основанная на теме «WordPress Twenty Sixteen». Важной строкой этого кода является слово Template, которое должно соответствовать имени каталога родительской темы, с которой вы клонируете шаблон.</p><p>Такие же принципы применяйте к основным файлам WordPress: не нужно изменять файлы движка, постарайтесь использовать функции и фильтры CMS так, чтобы ваши изменения не были перезаписаны после обновления. Подключаемые функции позволяют вам переопределить некоторые базовые функции, но этот подход используется всё реже и заменяется фильтрами. С фильтрами достигается тот же результат, что и с подключаемыми функциями: изменение вывода функций WordPress. Не забывайте добавлять в код if ( !function_exists() ) при использовании подключаемых функций, поскольку несколько плагинов, пытающихся переопределить одну и ту же подключаемую функцию без этой оболочки, будут приводить к фатальной ошибке.</p><h2>Не используйте хардкодинг</h2><p>Очень часто нам кажется, что проще вставить значение в код напрямую (например, ссылку), но в итоге время, затраченное на отладку и устранение проблем, которые возникают в результате таких действий, сильно возрастает. Лучше всего использовать функцию для генерации нужного нам результата динамически, что принесет меньше проблем в будущем.</p><p>Пример: вы переносите сайт с тестовой среды на хостинг с прописанными вручную значениями для всех ссылок (хардкодинг), в итоге вам придётся потратить больше времени на то, чтобы заставить его работать. Поэтому лучше использовать функции, аналогичные представленным ниже, для получения путей к файлам и генерации ссылок:</p><p>Другим плохим примером хардкодинга является запись пользовательских запросов. Например, в качестве меры безопасности мы меняем установленный по умолчанию префикс WordPress из wp_ на нечто более уникальное, например, wp743_. Наши запросы не сработают, если мы когда-нибудь переместим наш сайт на WordPress, поскольку префиксы таблиц могут меняться между средами. Чтобы этого не произошло, мы можем ссылаться на свойства таблицы класса wpdb:</p><p>Обратите внимание, что в коде выше не используется значение wp_users, а имя таблицы мы получаем с помощью WordPress. Использование этих свойств для генерации имён таблиц поможет гарантировать корректный результат.</p><h2>Не давайте постоянно индексировать ваш сайт</h2><p>Индексация нужна, не так ли? Тем не менее при создании веб-сайта вы вряд ли хотите, чтобы поисковые системы индексировали его, пока вы не закончили работу над ним и не создали его структуру. Кроме того, если у вас есть тестовый сервер, на котором вы проводите обновления своего ресурса, вы не хотите, чтобы поисковые системы, такие как Google, индексировали эти повторяющиеся страницы. Когда есть несколько страниц с одинаковым контентом, поисковым системам сложно решить, какая версия более релевантна поисковому запросу. Поисковые системы наказывают сайты с повторяющимся контентом, и ваш сайт просядет в результатах поиска.</p><p>Как показано ниже, в настройках чтения WordPress есть флажок, который гласит: «Попросить поисковые системы не индексировать сайт» (хотя это не гарантирует, что поисковые системы отработают данный параметр):</p><figure><img src="https://media.tproger.ru/uploads/2017/07/1-2.png" alt="" /></figure><p>Поэтому, если вы хотите надёжно предотвращать индексацию вашего сайта поисковыми системами, отредактируйте файл .htaccess и вставьте следующую строку:</p><h2>Перепроверяйте работоспособность плагинов</h2><p>Зачем проверять, включена ли функция плагина, если он активен? Конечно, в 99 % случаев это так, однако этот один процент может привести к тому, что ваш сайт будет выводить некоторые ошибки PHP. Чтобы этого не произошло, мы можем проверить, активен ли плагин, прежде чем использовать его функции. Если функция плагина вызывается через фронтенд, то нужно включить библиотеку plugin.php в код, чтобы вызвать функцию is_plugin_active():</p><p>Этот метод обычно достаточно надёжный. Однако могут быть случаи, когда автор изменил имя основного каталога плагина. Более надёжным методом было бы проверить наличие класса в плагине:</p><p>Вообще, авторы не часто меняют имя класса плагина, поэтому лучше использовать этот подход.</p><h2>Не загружайте слишком много ресурсов</h2><p>Зачем выборочно загружать ресурсы для страниц? Нет веской причины загружать стили и скрипты для плагина, если этот плагин не используется на странице, на которой находится пользователь. Используя плагины только тогда, когда это необходимо, мы сможем существенно ускорить время загрузки страниц. Возьмем, например, сайт WooCommerce, где нам нужно, чтобы плагин загружался только на торговых страницах, что позволит снизить нагрузку на сайт. Для этого следует добавить следующий код в файл шаблона functions.php:</p><p>Сценарии также можно удалить с помощью функции wp_dequeue_script ($ handle) через дескриптор, с которым они были зарегистрированы.  Аналогично wp_dequeue_style ($ handle) предотвратит загрузку таблиц стилей. Но, если это технически сложно для вас, можно установить <a href="https://wordpress.org/plugins/plugin-organizer/">Plugin Organizer</a>, который обеспечивает выборочную загрузку плагинов на основе определенных критериев, таких как тип сообщения или имя страницы. Рекомендуется отключить любые кэширующие плагины, такие как <a href="https://wordpress.org/plugins/w3-total-cache/">W3Cache</a>, чтобы изменения стали заметными.</p><h2>Не оставляйте панель управления в верхней части сайта</h2><p>Можно ли оставить панель администратора WordPress видимой для всех? Да, вы можете позволить своим пользователям получить доступ к страницам администратора. Но если вы хотите, чтобы ваш сайт выглядел профессионально, вы должны отключить панель администратора для пользователей и оставить её только для себя:</p><p>Этот код нужно вставить в файл functions.php вашей темы. Таким образом, панель будет отображаться только для администратора сайта. Используя current_user_can ($), можно добавить пользователю любую роль, а также исключить его из панели управления.</p><h2>Используйте фильтр GetText</h2><p>Можно использовать CSS или JavaScript для изменения ярлыка кнопки, что с этим не так? Да, можно. Однако вы добавляете лишний код и тратите дополнительное время, чтобы отобразить кнопку, когда вместо этого вы можете использовать один из самых удобных фильтров в WordPress — gettext. Используя этот фильтр совместно с textdomain, мы можем изменять текст до загрузки страницы. Если изменяемый текст находится в теме, найдите строку кода load_theme_textdomain ($ domain).</p><p>На примере WooCommerce рассмотрим, как изменить текст, который появляется для заголовка «Related Products». Вставьте следующий код в файл functions.php вашей темы:</p><p>Этот фильтр применяется к переведённому тексту с помощью функций интернационализации __() и __e(), если textdomain определен с помощью вышеупомянутых функций.</p><h2>Меняйте значения для постоянных ссылок</h2><p>По умолчанию WordPress использует строку запроса с идентификатором post, чтобы вернуть запрашиваемый контент. Такой формат ссылок будет неудобным для использования, кроме того, это может сказаться на индексации вашего ресурса поисковыми системами. Включение постоянных ссылок, например, в режим «Произвольно», поможет поднять ранжирование страниц, ведь там могут также находиться ключевые слова. Лучше всего это делать сразу после установки WordPress. Вы можете выбрать формат ссылок на экране «Настройки постоянных ссылок»:</p><figure><img src="https://media.tproger.ru/uploads/2017/07/2-2.png" alt="" /></figure><h2>Заключение</h2><p>Приведённые здесь примеры не являются полным списком допускаемых ошибок при работе с сайтами на WordPress. Не стесняйтесь делиться с нами некоторыми ошибками, которые вы сделали в прошлом, и, что более важно, с любыми извлечёнными уроками, оставив комментарий ниже.</p>]]></content:encoded>
    </item>
    <item>
      <title>В WordPress найдена 0-day уязвимость, позволяющая получить ссылку для сброса пароля</title>
      <link>https://tproger.ru/news/wordpress-zero-day-could-expose-password-reset-emails</link>
      <comments>https://tproger.ru/news/wordpress-zero-day-could-expose-password-reset-emails?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Дмитрий Юрченко]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-zero-day-could-expose-password-reset-emails</guid>
      <description><![CDATA[<p>CVE-2017-8295 затрагивает все версии WordPress: подмена SERVER_NAME меняет адрес отправителя, а ссылка может уйти злоумышленнику при возврате письма.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-zero-day-could-expose-password-reset-emails">В WordPress найдена 0-day уязвимость, позволяющая получить ссылку для сброса пароля</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 04 May 2017 13:53:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Эксперт по безопасности из Польши, Давид Голунский, обнаружил уязвимость нулевого дня в механизме сброса пароля WordPress, которая позволит злоумышленнику получить ссылку сброса пароля при определенных обстоятельствах.</p><p>Исследователь сообщил о своей находке команде безопасности WordPress в июле прошлого года. Спустя десять месяцев, так и не получив ответа, Голунский решил сообщить владельцам сайтов на WordPress об этой проблеме, чтобы они могли защитить свои сайты.</p><h3>Как устроена уязвимость?</h3><p>Ошибка безопасности, получившая идентификатор CVE-2017-8295, затрагивает все версии WordPress и связана с тем, как сайты WordPress создают письма для изменения пароля.</p><p>По данным Голунского, злоумышленник может создать вредоносный HTTP-запрос, который запускает операцию сброса пароля с помощью инъекции изменённой переменной SERVER_NAME, например, со значением attacker-domain.com.</p><p>Это означает, что когда на сайте WordPress создается создаётся письмо для изменения пароля, значения From и Return-Path будут в формате wordpress@attacker-domain.com.</p><figure><img src="https://media.tproger.ru/uploads/2017/05/1-1.png" alt="" /></figure><h3>И чем же она опасна?</h3><p>Большинство пользователей полагают, что эта уязвимость бесполезна, так как злоумышленник сможет всего лишь отправить законному владельцу сайта письмо для восстановления пароля с неправильным адресом отправителя.</p><p>На самом деле это не так. Голунский описал некоторые сценарии, в которых злоумышленник может использовать эту уязвимость.</p><p>Например, злоумышленник может заполнить почтовый ящик владельца сайта ненужными письмами. Когда придёт заражённое электронное письмо для смены пароля, из-за того, что почтовый ящик будет переполнен, сервер вернет письмо своему отправителю, которым в этом случае будет злоумышленник.</p><p>Вот другой сценарий атаки, более простой для выполнения. Достаточно определить, когда владелец сайта уезжает в отпуск. Если администратор сайта включил автоответчик «вне офиса» и он содержит исходный адрес электронной почты, то злоумышленник сможет получить письмо с измененным паролем, приложив минимум усилий.</p><p>Другие сценарии, описанные Голунским, требуют применения социальной инженерии, поэтому их использование маловероятно.</p><p>Сложность этих сценариев , скорее всего, и является основной причиной, по которой команда WordPress до сих пор не уделила внимание исправлению этой проблемы.</p><h3>Как же защититься?</h3><p>Для этого есть несколько способов. Голунский предложил:</p><blockquote>В качестве временного решения пользователи могут включить UseCanonicalName для применения статического значения SERVER_NAME.</blockquote><p>На Reddit владельцам сайтов порекомендовали «создать фиктивный виртуальный хост, который будет перехватывать все запросы с нераспознанными заголовками Host».</p><p>В зависимости от вашего технического мастерства вы также можете поэкспериментировать с другими вариантами, обсуждаемыми в этом посте на Reddit — по крайней мере, пока команда WordPress не исправит эту проблему.</p><p>Стоит отметить, что Голунский также <a href="https://exploitbox.io/vuln/WordPress-Exploit-4-6-RCE-CODE-EXEC-CVE-2016-10033.html">сообщил</a> дополнительные подробности об <a href="https://tproger.ru/news/phpmailer-critical-flaw/">обнародованной ранее</a> RCE-уязвимости в PHP Mailer, библиотеке, встроенной в WordPress по умолчанию.</p>]]></content:encoded>
    </item>
    <item>
      <title>В WordPress найдена уязвимость, которая позволяет менять содержимое любого поста</title>
      <link>https://tproger.ru/news/wordpress-170-issue</link>
      <comments>https://tproger.ru/news/wordpress-170-issue?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Антон Корольков]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-170-issue</guid>
      <description><![CDATA[<p>Баг затрагивает версии 4.7.0 и 4.7.1 и даёт незарегистрированным пользователям право править любые записи и страницы сайта; фикс вышел в версии 4.7.2.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-170-issue">В WordPress найдена уязвимость, которая позволяет менять содержимое любого поста</a>»</p>]]></description>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Уязвимость]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sun, 12 Feb 2017 22:15:34 GMT</pubDate>
      <content:encoded><![CDATA[<p>В WordPress обнаружена уязвимость, которая позволяет незарегистрированным пользователям модифицировать контент любого поста или страницы на сайте. Данный баг распространяется на версии 4.7.0 и 4.7.1. С версией 4.7.2 вышел фикс.</p><h3>Технические детали</h3><p>Разберемся подробнее, чем вызван данный баг. Первое, на что стоит обратить внимание — это файл ./wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php:</p><figure><img src="https://media.tproger.ru/uploads/2017/02/wp_1-1024x548.png" alt="" /></figure><p>Данный кусок кода спроектирован так, чтобы принимать параметр запроса ID в виде цифрового значения. Например, если вы посылаете запрос на /wp-json/wp/v2/posts/1234, ID будет равняться 1234.</p><p>Это хороший способ предотвратить использование невалидных ID, но если взглянуть на код еще раз, можно увидеть, что значения от $_GET и $_POST являются приоритетными по отношению к тем, которые вычисляются из регулярного выражения. Исходя из этого, злоумышленник может послать запрос вроде /wp-json/wp/v2/posts/1234?id=12345helloworld, и ID будет равняться 12345helloworld.</p><p>Взглянем на метод update_item_permissions_check на скриншоте ниже.<br /><a href="https://media.tproger.ru/uploads/2017/02/wp2.png"></a>Вкратце, он передает наше значение ID, содержащее буквы и цифры, в метод get_post(). Эта функция валидирует запрос, проверяя, что такой пост существует и что у текущего пользователя есть привилегии на редактирование этого поста. Если мы пошлем ID, который не соответствует ни одному посту, мы можем обойти проверку привилегий и перейти в метод update_item, продолжая выполнение запроса.</p><p>Интересно то, что метод get_post() также может потерпеть неудачу в поиске поста вследствие использования статического метода get_instance(), который используется в wp_posts для поиска постов.<a href="https://media.tproger.ru/uploads/2017/02/wp4.png"></a>Как вы можете увидеть в коде, метод работает неправильно на любой строке, которая состоит не только из цифр.</p><figure><img src="https://media.tproger.ru/uploads/2017/02/1111.png" alt="" /></figure><p>Для злоумышленников это означает, что WordPress выполнит метод update_item, посчитав, что у пользователя достаточно привилегий для редактирования поста.<a href="https://media.tproger.ru/uploads/2017/02/wp5.png"></a>Последнее, на что стоит обратить внимание — WordPress приводит параметр ID к типу integer перед тем, как передать его в get_post. Это вызывает проблемы из-за того, как в PHP реализовано приведение типов. На скриншоте ниже можно увидеть эту проблему наглядно:Это приводит нас к опасной ситуации, когда злоумышленник может использовать запрос, вроде /wp-json/wp/v2/posts/123?id=456ABC, чтобы изменить пост с ID 456. Следовательно, любой пост на сайте с версией WordPress 4.7.0 или 4.7.1 может быть изменен злоумышленниками.</p><p>Если вы используете версии WordPress, подверженные данной уязвимости, рекомендуем вам немедленно обновить версию WordPress.</p>]]></content:encoded>
    </item>
    <item>
      <title>27,1% сайтов в Интернете могли быть атакованы из-за уязвимости в WordPress</title>
      <link>https://tproger.ru/news/wordpress-auto-update-flaw</link>
      <comments>https://tproger.ru/news/wordpress-auto-update-flaw?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Никита Мингалеев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/wordpress-auto-update-flaw</guid>
      <description><![CDATA[<p>Дефект в PHP-хуке на api.wordpress.org позволял подставить свой алгоритм хеширования и подобрать секретный ключ верификации обновлений за часы.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/wordpress-auto-update-flaw">27,1% сайтов в Интернете могли быть атакованы из-за уязвимости в WordPress</a>»</p>]]></description>
      <category><![CDATA[Интернет]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Wed, 23 Nov 2016 17:26:56 GMT</pubDate>
      <content:encoded><![CDATA[<p>Более чем четверть всех сайтов в Cети могла быть атакована из-за уязвимости, которая ставила под угрозу ядро сервера обновлений WordPress.</p><p>Дефект, найденный в PHP-хуке внутри api.wordpress.org, позволял разработчикам использовать любой алгоритм хэширования для верификации обновлений.</p><p>Мэтт Бэрри (Matt Barry), ведущий инженер безопасности в WordPress и создатель инструмента WordFence, обнаружил, что атакующие могли вставить свой алгоритм хеширования в процесс верификации, что позволило бы получить доступ к секретному ключу всего через несколько часов банальным перебором. Причем, из-за малого количества попыток, злоумышленники не были бы даже замечены системой безопасности WordPress.</p><p>Затем атакующие могли послать URL, содержащий вредоносное обеспечение, к серверу обновлений WordPress, который отослал бы его на сайты под управлением WordPress, на которых оно было бы автоматически установлено. Согласно <a href="https://w3techs.com/technologies/details/cm-wordpress/all/all">статистике</a> сервиса W3techs.com, 27,1% сайтов используют WordPress.</p><figure><img src="https://media.tproger.ru/uploads/2016/11/478682793-791x1024.png" alt="" /></figure><p>Но злоумышленники могли пойти и дальше. Например, после того, как вредоносный апдейт был бы установлен, они могли бы запретить автоматические обновления, тем самым лишая WordPress возможности восстановить атакованные сайты.</p><p>WordPress не проверяет обновления — он просто доверяет всем адресам и пакетам от api.wordpress.org.</p><p>Хешированный процесс верификации WordPress мог быть ослаблен, позволяя атакующим использовать параметр POST, переданный shell_exec, делая возможным удаленное выполнение кода и атаку сервера обновлений api.wordpress.org.</p><p>Используя слабый алгоритм хеширования adler32, Бэрри смог уменьшить количество перебираемых хэшей, необходимых для взлома системы, с 4,3 миллиардов до 100–400 тысяч.</p><p>Мэтт сообщил о баге создателю WordPress 2 сентября, и через 5 дней проблема была решена. Однако Мэтт всё ещё считает api.wordpress.org “ахиллесовой пятой” многих сайтов, использующих сервера обновлений.</p><p>Он говорит, что Automattic (компания-создатель WP) не ответила на его предложения об обсуждении уязвимости и необходимости введения механизма аутентификации для обновлений. Похожая проблема с OpenWall уже <a href="http://www.openwall.com/lists/oss-security/2016/11/21/3">обсуждалась</a> на этой неделе.</p><p>Стоит отметить, что идею обновлений с использованием аутентификации <a href="https://core.trac.wordpress.org/ticket/25052">предложили</a> ещё три года назад, но она была проигнорирована.</p>]]></content:encoded>
    </item>
    <item>
      <title>Как выбрать технологию для большого и не очень большого веб-проекта</title>
      <link>https://tproger.ru/articles/which-technology-to-choose</link>
      <comments>https://tproger.ru/articles/which-technology-to-choose?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Alexey Gorshkov]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/which-technology-to-choose</guid>
      <description><![CDATA[<p>Никита Семенов, CEO SECL Group, объясняет, почему технологии чаще выбирают по субъективным причинам и что нужно знать для объективного выбора.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/which-technology-to-choose">Как выбрать технологию для большого и не очень большого веб-проекта</a>»</p>]]></description>
      <category><![CDATA[JavaScript]]></category>
      <category><![CDATA[Java]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[C#]]></category>
      <category><![CDATA[Python]]></category>
      <category><![CDATA[Ruby]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[Scala]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[1C-Bitrix]]></category>
      <category><![CDATA[Magento]]></category>
      <category><![CDATA[OpenCart]]></category>
      <category><![CDATA[Материалы от друзей Tproger]]></category>
      <category><![CDATA[Django]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sun, 20 Nov 2016 15:23:25 GMT</pubDate>
      <content:encoded><![CDATA[<p>Рассказывает Никита Семенов, CEO SECL Group</p><p>За годы работы я часто слышал вопросы о выборе технологий для того или иного веб-проекта. Кто-то спрашивает у нас, как у разработчиков, как правильно, а кто-то приходит и просит сделать на какой-то конкретной технологии.</p><p>Проблема в том, что большинство выбирают технологии по субъективным причинам и пока я не слышал достойного и внятного рассуждения, которое позволит выбрать технологию объективно, основываясь на фактах, а не желаниях. Даже немногие IT-шники могут правильно выбрать технологию, ведь для этого нужно: понимать специфику проекта, иметь многолетний опыт разработки на нескольких языках, знать, как устроены подобные проекты и т.д.</p><p>Но прежде, чем что-то выбирать, давайте посмотрим, какие технологии бывают, чем они отличаются и в каких случаях какую технологию выбрать.</p><h3>Как чаще всего выбирают технологию сейчас:</h3><p>1. Она мне нравится<br />2. Знакомый посоветовал<br />3. Прочитал в Интернете<br />4. На этой технологии сделан аналогичный сайт</p><h4>В чем тут проблема:</h4><p>1. Нравится. Очень субъективно. А что, если по требованиям она не подходит? Или на ней очень дорогие и редкие специалисты? Или она вообще умирает?</p><p>2. Знакомый. Обычно это тот знакомый, который «чуть лучше» разбирается в ИТ, чем тот, кому он советует. И даже если он программист с опытом, он не может знать всех решений на всех популярных языках. Ведь никто не спрашивает, по каким критериям выбирал этот знакомый. Если этот знакомы не CTO Google, я бы так просто не доверял такой рекомендации.</p><p>3. Прочитал. Тут уже лучше, можно найти разные сравнения и аргументацию. Но опять же, чтобы разобраться во всех решениях человеку, пусть даже с крепкими знаниями в разработке, нужно время. А без знаний в разработке все прочитанные технические обзоры ничего не стоят.</p><p>4. Аналог. Большинство популярных сайтов написаны на тех или иных технологиях потому, что так «исторически сложилось» . Если бы Facebook сейчас выбирал технологию для себя, я сомневаюсь, что он взял бы за основу PHP. А еще может быть, что технология уже устарела, её продавили на основе прошлых 3х пунктов, выбрали какую-то разрекламированную технологию, а не действительно эффективную и т.д. Вы вряд ли можете знать реальные причины выбор технологий в других проектах. Оптимальные технологии используются крайне редко в аналогичных проектах.</p><p>Таким образом, ни один из вышеперечисленных методов выбора технологий разработки не отвечает критериям объективности. Поэтому стоит сначала определить эти критерии, а уже потом подбирать по ним техническую платформу. Ниже я попытаюсь выделить действительно важные для проекта критерии, на которым мы и будем основываться.</p><h4>Важные критерии при выборе технологий:</h4><ol><li>Размер и тип проекта</li><li>Сложность проекта</li><li>Скорость разработки</li><li>Стоимость специалистов</li><li>Доступность специалистов</li><li>Доступные инструменты разработки</li><li>Наличие готовых решений</li><li>Гибкость решения</li><li>Наличие широкого сообщества</li><li>Отказоустойчивость решения</li><li>Тренд его развития</li><li>Наличие подробной документации</li><li>Стоимость поддержки</li><li>Требования к нагрузкам</li><li>Требования к безопасности</li><li>Кроссплатформенность</li><li>Возможности интеграции с другими решениями</li></ol><p>Выбирая технологию по таким критериям мы сможем добиться объективного выбора и тем самым сэкономить себе время и деньги.</p><h3>Какие бывают проекты</h3><p>К технологиям мы еще вернемся, а пока давайте разберемся, какие бывают проекты. Часто тип проекта говорит сам за себя и можно сразу сказать, что подойдет: либо уже готовое решение, либо хотя бы в какую сторону нужно двигаться.</p><h4>Сложность проекта</h4><ol><li>Простые (визитки, лендинги, простые интернет-магазины, простые приложения) — такие решения обычно делаются на тематических коробочных решениях, CMS или шаблонах.</li><li>Средние (сложные интернет-магазины и маркетплейсы, порталы национального масштаба, разнообразные сервисы, продвинутые приложения) — такие решения обычно делаются на фреимворках.</li><li>Сложные (огромные порталы, социальные сети, инновационные и нетиповые решения) — ядро таких проектов обычно разрабатываются на чистом (нативном) языке программирования.</li></ol><p>По тематике: интернет-магазины, доски объявлений, социальные сети и т.д. Для большинства популярных тематических решений уже давно есть коробочные продукты и, если мы не пытаемся сделать какого-то монстра, то правильнее будет выбрать именно их. Решений очень много, все в одной статье описать невозможно.</p><h4>Языки программирования</h4><p>В технологиях я бы выделил 3 уровня абстракции:</p><ol><li>Чистый язык — это материал, из которого можно сделать все, что угодно. Ограничивают нас только возможности языка. На чистом языке сделаны все крупнейшие сайты мира с посещаемостью в сотни миллионов и миллиарды пользователей, такие как: Instagram, YouTube, Pinterest, Tumblr, Dropbox, Twitter, Facebook, Amazon, Digg, LinkedIn и другие. Более того, крупнейшие проекты в мире даже создают новые технологии для себя, так как уже существующие их не устраивают.</li><li>Фреимворк — это некая среда разработки для программиста с готовыми правилами и инструментами. Фреимворк с одной стороны помогает и ускоряет разработку, а с другой накладывает определенные ограничения. На фреимворках делаются проекты средней сложности с посещаемостью в миллионы.</li><li>CMS — это уже готовое решения, конструктор, в котором мы по частям собираем нужный проект. Его скорее не программируют, а настраивают. Ограничений тут огромное количество, выйти за границы коробки сложно и неэффективно. На CMS делаются простые сайты с посещаемостью до миллиона пользователей в месяц.</li></ol><p>Чаще всего один уровень абстракции базируется на другом. То есть на чистом языке делают фреимворки, а на фреимворках делают CMS. Для каждого популярного языка есть много разных фреимворков и CMS, но об этом позже.</p><p>Сегодня есть огромное количество разных языков программирования, на которых делают сайты. И, более того, на всех популярных языках есть примеры огромных сайтов. Если 10 лет назад, говоря о технологиях больших сайтов, все говорили преимущественно про Java, то сегодня это может быть почти любой язык и утверждать, что сайты делаются на каком-то конкретном языке — стереотип. Это связанно с развитием самих языков, за последнее десятилетие многие сильно продвинулись в развитии и получили широкие возможности. Конечно, каждый язык чем-то отличается и выбирая мы опять же должны руководствоваться объективными критериями с оглядкой на задачи проекта.</p><p>На чистом языке, без использования фреимворков и коробочных решений, пишутся огромные проекты с повышенными требованиями по гибкости, нагрузкам и безопасности. Для таких огромных проектов часто бюджет не играет такого значения, как эффективность. Чем больше проект, тем больше будет требований по гибкости и нагрузкам, а значит, проще писать все с нуля, выделяя на это лучших специалистов, чем если брать какие-то готовые решения, которые непонятно кем писались и непонятно какие проблемы в них скрыты. К примеру, когда речь про небольшой проект с посещаемостью в 10 тыс. человек в день, то нам будет дешевле сделать его на CMS, которая будет потреблять в 3 раза больше ресурсов сервера, поставить дополнительный сервер за 50$ / мес. и оно будет работать. Когда же мы говорим про сайт с посещаемостью в 100 млн. пользователей в день, стоимость добавления серверов у нас будет просто космической, поэтому нам проще и дешевле вложить деньги в разработку решения на чистом языке, которое будет оптимальным именно для конкретного проекта.</p><p>Чем больше проект, тем больше стек технологий, который в нем используется. В огромных порталах может использоваться сразу несколько языков программирования. Опять же, мы приходим к объективным критериям выбора технологий. Часто один язык может хорошо делать одну задачу, а другой — другую. Такие проекты могут быть на столько огромными, что его части могут работать на разных серверах, с разными доменами (поддоменами) и разными технологиями. Не следует боятся винегрета технологий в большом проекте, хотя и допускать его нужно только когда это действительно необходимо, а также помнить, что далеко не все технологии совместимы. Самый яркий пример использования разных технологий — Google. Он на столько большой, что разные его части написаны на C/C++, Java, Python, JS и других языках. Более того, Google активно создает новые технологии, как, например, популярный нынче AngularJS.</p><p>Попробую дать краткую характеристику каждому из популярных языков:</p><ol><li>PHP — его используют в основном для простых и средних проектов. Очень много коробочных решений. Относительно дешевые программисты. Антитренд последних лет, хотя с выходом последней версии языка под номером 7, он получил действительно мощные возможности.</li><li>Python — современный язык, разработка на нем быстрая и качественная. Используют его для средних и больших проектов. Программистов найти проблематично и стоят они не дешево.</li><li>Ruby — современный язык, разработка на нем так же быстрая. Его используют в основном для разработки простых и средних проектов, часто разрабатывают стартапы. Программистов также мало и они дорогие.</li><li>Java — разработка на нем очень долгая и дорогая. Его используют в основном для больших проектов со специфическими требованиями. Однако является самым популярным языком программирования <a href="https://tproger.ru/news/tiobe-march-2016/">в рейтинге TIOBE</a> по состоянию на март 2016.</li><li>C# — аналог Java, также используют для больших проектов, часть в сфере FinTech.</li><li>JavaScript — очень быстро развивается, тренд последних лет и самый популярный язык программирования <a href="https://tproger.ru/news/redmonk-language-ranking-6-16/">в рейтинге Redmonk</a> по состоянию на июнь 2016. Огромное количество наработок и можно писать все, что угодно, даже игры. Его используют для средних и больших проектов, но действительно мощные возможности этот язык получит недавно, потому примеров больших проектов пока мало, специалисты самые дорогие и найти их сложнее всего.</li></ol><p>Я описал самые популярные языки, которые сегодня используются под веб. Есть много новых языков, которые очень быстро растут, в частности Scala и некоторые другие. Но пока они довольно молодые и сырые. Я бы не рекомендовал бежать за модой и писать на них, пока они не разовьются во что-то большее.</p><p>Примеры больших сайтов:</p><ul><li>PHP: Facebook, Вконтакте, КиноПоиск</li><li>Python: Instagram, Pinterest, Reddit</li><li>Ruby: 500px, Groupon, Airbnb</li><li>Java: Ebay, Amazon, Alibaba</li><li>C#: Guru, Stack Overflow, Bank of America</li><li>JS: LinkedIn, Walmart, PayPal</li></ul><p>Эти примеры отлично показывают, что большие сайты могут быть написаны на разных языках, и это нормально. Опять же, приходим к тому, что выбирать технологию нужно под требования, руководствуясь объективными причинами.</p><h4>Фреймворки и платформы</h4><p>Это некая среда разработки для программистов, где есть готовая инфраструктура и ряд готовых функций со стандартными решениями типичных задач. Такой себе полуфабрикат, из которого можно сделать конфетку. На каждом языке есть много разных фреймворков. Есть как общие, которые создавались для разработки любых решений, так и специализированных, под узкие задачи. Например, Sylius — специализированный E-commerce фреймворк на основе Symfony. Также есть те, на которых делаются большие и сложные решения, а другие для этого не предназначены. Ниже я опишу популярные фреймворки для каждого из языков, на которых можно писать большие и сложные решения.</p><p>На фреймворках разрабатываются довольно большие и сложные сайты с уникальным функционалом. Это значительно быстрее и дешевле, чем на чистом языке, но при этом такое решение позволяет разрабатывать действительно сложные вещи и оптимизировать все это под нагрузки. Кроме того, это почти всегда более безопасно, чем любая коробочная CMS. Если вы хотите узнать об этом больше, посмотрите <a href="https://tproger.ru/translations/web-frameworks-how-to-get-started/">материал про веб-фреймворки для начинающих</a>.</p><p>Популярные фреймворки и платформы:</p><ol><li>PHP: Symfony, Laravel</li><li>Python: Django</li><li>Ruby: Ruby On Rails</li><li>Java: Spring</li><li>C#: .NET</li><li>JS: Node.js, AngularJS</li></ol><p>Больше всего фреймворков на PHP и на этом языке есть, из чего выбирать, но действительно функциональных не так много. Меньше на других языках, а на некоторых действительно качественных фреймворков вообще всего один, как у языка Ruby. У Java вообще очень много разных фреймворков для разных целей, и не только для сайтов. Все эти фреймворки ежегодно развиваются, выходят все новые и новые версии, одни фреймворки обгоняют другие. Например, Laravel только в последние несколько лет вышел на первое место по популярности, хотя самые сложные сайты до сих пор делаются на Symfony.</p><p>.NET и Node.js — это целые самостоятельные платформы, которые базируются на определенных языках, но имеют очень широкие возможности.</p><h4>CMS и CMF</h4><p>Это готовое программное обеспечение, которое нужно только настроить, реже — дописать / переписать какую-то из частей. Таких решений очень много на любом языке, но исторически так сложилось, что в основном все популярные CMS сделаны на PHP. Тут дело в развитие языков, раньше простые сайты, для которых и создавались CMS, писались на PHP. Я еще застал те времена, когда CMS почти не было, были скрипты — отдельные готовые части разных сайтов. Позже эти скрипты собирали в коробочный продукт, который был призван решить потребности 90% простых сайтов. Так и получилось, что основные CMS сделаны на PHP. Сегодня CMS на других языках развиваются слабо, потому, что уже есть сильные конкуренты на PHP, а простому сайту язык не играет большой роли, поэтому все смотрят на возможности этих готовых продуктов.</p><p>CMF — если говорить простым языком, это что-то среднее между CMS и фреймворком по возможностям. Обычно CMF используют для самых сложных сайтов из этой категории. Этот подход позволяет избавиться от лишних частей CMS, которые не нужны конкретному проекту.</p><p>CMS бывают разные по назначению: общие, для интернет-магазинов, для блогов и т.д. Разные по условиям использования: платные и бесплатные. Для каждой популярной CMS есть куча разных платных и бесплатных модулей, которые легко подключать и использовать.</p><p>Маленькие сайты, которые в основном нужны для малого бизнеса, почти всегда используют CMS. Это позволяет очень сильно экономить время на разработку. Кроме того, для настройки таких решений не нужны дорогие программисты, обычно это могут делать новички в программировании, по крайней мере саму настройку, если уже нужно писать код, тут сложнее.</p><p>Именно в работе с CMS возникает больше всего непонимание среди конечных заказчиков таких решений. Любая CMS — это тонны готового программного кода, на все случае жизни. В коробочной поставке идут десятки и сотни модулей. Все это очень сильно ограничивает специалистов. Такие решения сильно «тормозят» , они абсолютно не гибкие, их очень легко взломать, особенно бесплатные CMS. Еще часто взламывают CMS через модули сторонних разработчиков, в которых есть критические уязвимости, потому что мы никогда не знаем, какого уровня программист писал тот или иной модуль. То есть любая CMS НЕ рассчитана для большого и сложного сайта. Она не могут выдержать большие нагрузки. Это решение не безопасно, чтобы не говорили разработчики конкретной CMS.</p><p>Я видел решения почти на всех популярных CMS, с многими за более, чем 10 лет работы, пришлось поработать лично. Часть из них популярна в рунете, а часть знают в основном на западе. На используемые в них языки CMS разбивать нет смысла, по причинам, описанным выше. Лучше сказать несколько слов про каждую популярную CMS:</p><ol><li>WordPress — некогда блоговый движок, сейчас на ней делаются почти любые сайты, включая магазины. Одна из самых популярных CMS в мире, есть примеры довольно посещаемых сайтов. На ней часто делают информационные сайты, в том числе разные СМИ. Система бесплатная.</li><li>Joomla! — CMS общего назначения. Качеством особо не отличается, на ней делают очень маленькие сайты и обычно дешевле всех других вариантов, так как именно с этой CMS начинают учиться многие начинающие программисты. Система бесплатная.</li><li>Drupal — это уже CMF для общего назначения, с недавнего времени поставляется со встроенных фреймворком Symfony. Довольно мощная, на ней есть известные сайты, например, официальный сайт Белого Дома. Система бесплатная.</li><li>Magento — самая популярная система управления для интернет-магазинов в мире. Довольно мощная и сложная. В рунете используется редко, в основном на западе.</li><li>PrestaShop — одна из самых популярных CMS для магазинов в мире. Тоже довольно мощная, используют в основном на западе. Система бесплатная.</li><li>OpenCart — еще одна популярная система для интернет-магазинов, но её, наоборот, больше используют в рунете, чем на западе. В основном для маленьких и несложных магазинов. Система бесплатная.</li><li>1С-Битрикс — очень распиаренная CMS общего назначения, номер 1 в рунете. Возможности очень широкие. На ней часто пытаются делать большие и сложные сайты, а после определенного порога в посещаемости переписывают их на других технологиях. Многие считают, что только эта CMS может интегрироваться с 1С, что не является правдой, поскольку все перечисленные CMS из этого списка могут интегрироваться с 1С, для этого у всех CMS есть специальные модули. Система платная.</li></ol><p>Со всеми перечисленными CMS я работал. В основном со стороны разработчика. Точно НЕ рекомендую — Joomla, с остальными можно работать. Для магазинов лучше выбирать специализированные, а не общие CMS. Кроме 1С-Битрикс в рунете есть еще аналогичные коммерческие CMS, они во многом схожи. У каждой из систем есть свои особенности, но все они не предназначены для больших и сложных проектов, главное это не забывать.</p><h4>Шаблоны</h4><p>В последние 5 лет очень активно развивают шаблонные решения. Это еще на одну ступеньку выше, чем CMS. Если CMS — это конструктор и его нужно настраивать, то шаблоны — это уже готовые решения под типовые случаи. Например, в каждом городе есть свои рестораны, такси, клиники и т.д. Для всех этих типов малого бизнеса нужно примерно одно и тоже. Поэтому, можно просто выбрать готовый тематический шаблон, заменить в нем логотип, цвета и контент. При желании такие шаблоны можно дорабатывать по усмотрению владельца.</p><p>Преимущества таких решений в том, что они очень дешевые и их можно запускать моментально. Но при этом, такие решения не учитывают особенностей бизнеса и конверсия будет не очень высокой.</p><p>Есть специальные каталоги шаблонов: TemplateMonster, <a href="https://themeforest.net/?ref=SECL">ThemeForest</a> и др. Часто встречаются онлайн-конструкторы, в том числе тематические: <a href="http://ru.wix.com/">Wix</a>, <a href="https://www.pagecloud.com/">PageCloud</a> и др.</p><h4>Мобильные приложения</h4><p>В мобильных приложениях в последнее время используется два подхода: нативная разработка и кроссплатформенные технологии. Нативная ведется на оригинальных языках программирования, в частности Swift (для iOS, ранее был Objective-C) и Java (для Android). Кроссплатформенных технологий сейчас довольно много, они есть на базе разных языков программирования, в частности: Apache Cordova, React Native и др. Некоторые лучше, некоторые хуже. В любом случае, сложные приложения всегда пишутся на нативных технологиях. С кроссплатформой часто возникают проблемы, вплоть до того, что некоторые функции просто нереализуемы на тех или иных кроссплатформенных технологиях, сильно грузится оперативная память устройства, быстро садится батарея и т.д.</p><p>В этих двух подходах люди тоже часто путаются, пытаясь использовать кроссплатформенные подходы на все случаи жизни. Оно и понятно, ведь кроссплатформа позволяет писать код один раз, который сразу работает и на iOS и на Android, в то время, как на нативных технологиях это минимум в два раза дороже выходит. Однако мало кто знает про возможные дальнейшие проблемы в разработке. Я бы рекомендовал очень тщательно выбирать технологии и кроссплатформу брать только для простых приложений, иначе придется переписывать. Впрочем, кроссплатформенные технологии постепенно развиваются и становятся все лучше, а приложения написанные на них все сложнее.</p><h4>Стек технологий в больших проектах</h4><p>Выше я описал разные языки и фреймворки, которые используются в больших проектах, однако, если присмотреться к действительно большим проектам, там можно найти целый комплекс языков и технологий. Почти все большие сайты используются в основе один язык и еще несколько дополнительных. Тоже самое с базами данных: для одних задач могут использоваться реляционные, а для других нереляционные базы, и все это органично сочетается в рамках одного проекта.</p><p>Выбор технологий зависит от предлагаемой архитектуры проекта. Именно архитектор продумывает основные блоки будущего сайта. Какой язык ляжет к основу, будет ли он нативный или фреймворк, какую систему кэширования выбрать, какие базы данных, как все это связано и т.д.</p><p>Для примера рассмотрим технологии Instagram (данные Insight IT):</p><ul><li>Ubuntu Server 14.04 LTS — основная серверная операционная система</li><li>Python — основной язык программирования серверной части</li><li>Django — фреймворк</li><li>nginx — второй уровень балансировки входящих HTTP-запросов</li><li>gunicorn — WSGI-сервер</li><li>HAProxy — балансировка нагрузки внутри системы</li><li>PostgreSQL — основное хранилище данных</li><li>postgis — поддержка гео-запросов</li><li>pgfouine — отчеты на основе логов</li><li>pgbouncer — создание пула соединений</li><li>Redis — дополнительное хранилище данных</li><li>Memcached — кэширование</li><li>Gearman — очередь задач</li><li>Solr — гео-поиск</li><li>munin, statsd, pingdom — мониторинг</li><li>Fabric — управление кластером</li><li>xfs — файловая система</li></ul><p>И это вполне нормальный стек технологий. Сам Instagram не самый большой и сложный сервис в мире.</p><h4>Стоимость специалистов</h4><p>Один из важнейших факторов выбора технологии является стоимость и доступность специалистов, потому что именно это самая затратная часть в любом проекте. В рунете есть только одна пузомерка по зарплатам — я отфильтровал по Киеву, уровень Senior, опыт 3-5 лет. Сравним средние значения.</p><p>Зарплаты:</p><ol><li>C# — 3072$</li><li>Java — 3300$</li><li>JS — 3500$</li><li>PHP — 2780$</li><li>Python — 3000$</li><li>Ruby — 3000$</li><li>Scala — 3900$</li></ol><p>В США немного другая картина:</p><figure><img src="https://media.tproger.ru/uploads/2016/11/salary.png" alt="" /></figure><p>Теперь переведем цифры на человеческий язык. Java хоть и не новый язык, но специалисты на ней всегда были одними их самых дорогих. PHP всегда был самым дешевым, да и специалистов на рынке очень много. В сравнение я внес еще и Scala как один из новейших и трендовых языков, по этой причине он дороже всех. Еще дорогой JS, это связанно с его бурным ростом в последние годы и растущей популярностью Node.js, а также AngularJS.</p><p>Таким образом, если мы хотим экономить — то лучше смотреть на PHP, специалисты дешевые, а комьюнити большое. А если хотим самое качественное — то смотрим на Scala, который называют будущем веб-разработки, но, правда, на ней найти специалистов почти невозможно и наработок просто нет.</p><p>Еще важным параметром будет скорость разработки. Ведь важна не только зарплата программистов, но и скорость разработки. Если не учитывать уже существующие наработки, то одним из самых быстрых в разработке будет Python и Ruby, а самый медленный — Java. Кстати, по этой причине за последние 10 лет почти не вышло новых мегапроектов на Java, зато вышло много проектов на Python, о чем я расскажу ниже.</p><h4>Тренды</h4><p>Выбирая технологию, нам нужно смотреть вперед. Особенно, если речь о большом проекте. Все технологии очень быстро развиваются, выходят все новые и новые версии. Языки сильно меняются каждые 5-7 лет, фреймворки — каждые 2-3 года, а CMS — каждые 1-2 года. Важно выбрать не просто хорошую технологию сегодня, а предугадать тренды развития так, чтобы остаться на коне через несколько лет. Иначе, в конечном счете, придется переписывать проект, что всегда очень проблематично.</p><p>Есть всевозможные исследования, которые нам могут подсказать некоторые статистические выкладки. Например, исследование <a href="http://www.tiobe.com/tiobe-index/">TIOBE Index</a> показывает интересную статистику:</p><figure><img src="https://media.tproger.ru/uploads/2016/11/tiobe.png" alt="" /></figure><p>По результатам разных исследований можно выделить явных лидеров по росту — это JS (версия ES6 и выше) и мультипарадигмальные языки, в частности Scala. Кстати, именно Scala считается преемником языка Java и во многом на него похож. Также не плохо себя показывает Python.</p><p>Антитренды держат ряд старых языков и PHP. Правда, недавно вышла 7я версия PHP, в которой исправлены многие серьезные недостатки. Так что, я думаю, мы скоро увидим новый виток развития PHP. Еще многие большие проекты переписываются с Ruby на другие языки, тоже некий антитренд.</p><p>Для иллюстрации посмотрим, каких специалистов не хватает в США:</p><figure><img src="https://media.tproger.ru/uploads/2016/11/specialists.png" alt="" /></figure><p>Именно это можно считать реальной картиной трендов, которые мы видим и у нас.</p><p>На чем делались большие проекты за последние 10 лет?</p><ol><li>Airbnb — Ruby</li><li>Instagram — Python</li><li>Pinterest — Python</li><li>Foursquare — Python</li><li>Groupon — Ruby → JS</li><li>Twitter — Ruby → Scala</li><li>Uber — JS</li></ol><p>Это уже не теоретическая статистика, а реальная практика. Python и JS очень хорошо себя показывают.</p><h4>Стоимость поддержки</h4><p>Безусловно, важный критерий выбора технологии — это стоимость поддержки, о которой мало кто задумывается в начале разработки. Обычно все мыслят категориями стоимости часа поддержки, что в корне неправильно. Нам важны несколько параметров: стоимость часа, количество часов, официальная поддержка технологии, доступность специалистов, правильный подход к разработке и некоторые другие.</p><p>Стоимость часа зависит от зарплаты специалисты, с этим мы уже разобрались. А вот количество часов зависит от самой технологии и качества написания кода. Если решение коробочное, то часов на него может уходить очень много. То есть, с одной стороны, мы можем сэкономить при разработке первой версии проекта, но после погрязнуть в его постоянной доработке. Хорошо, когда решение популярное и есть официальная документация, но часто выбирают малоизвестные коробочные решения без какой-либо документации — в таких решениям стоимость поддержки будет во много раз выше стоимости самой коробки. То же касается некачественной разработки: у нас почему-то полностью отсутствует культура проведения технических аудитов готовых решений или его частей. В среднем за 20-40 часов можно проверить почти любое решение и найти его основные минусы. Чем более качественный код, тем легче, а следовательно и дешевле его поддерживать.</p><p>Также следует смотреть на версию языка, фреимворка, CMS. Нужно всегда использовать самую последнюю стабильную версию, чтобы она не устарела до выхода проекта в продакшн. При появлении новой версии, нужно сразу рассматривать возможность перевода проекта на эту версию. Потому что, если пропустить несколько версий, потом будут проблемы сделать резкое обновление.</p><h3>Так что выбрать?</h3><p>Подведем итог. Для простых сайтов чаще всего отлично подходят коробочные решения и шаблоны. Сложные сайты делаются только на фреимворках или даже чистых языках программирования. Делать можно на очень разных языках, язык выбирается под проект. Простые мобильные приложения можно делать на кроссплатформенных технологиях, а сложные обычно делаются на родных технологиях. Ну и, выбирая платформу, всегда стоит руководствоваться объективными критериями, которые я описал в статье.</p>]]></content:encoded>
    </item>
    <item>
      <title>От «Типичного» до «Tproger»: как мы развиваем наш сайт</title>
      <link>https://tproger.ru/articles/tproger-website-evolution</link>
      <comments>https://tproger.ru/articles/tproger-website-evolution?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Тарас Сереванн]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/tproger-website-evolution</guid>
      <description><![CDATA[<p>Сайт начинался с чистой установки WordPress и темы Bliss, которую значительно переделали; после публикации ссылки он не выдержал нагрузки.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/tproger-website-evolution">От «Типичного» до «Tproger»: как мы развиваем наш сайт</a>»</p>]]></description>
      <category><![CDATA[История успеха]]></category>
      <category><![CDATA[Tproger Changelog]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sun, 03 Jul 2016 11:45:39 GMT</pubDate>
      <content:encoded><![CDATA[<p>Когда-то трава была зеленее, люди — добрее, Интернет — свободнее, а наш сайт выглядел вот так:</p><figure><img src="https://media.tproger.ru/uploads/2016/05/2015.png" alt="" /></figure><h3>Молодой WordPress</h3><p>Это была чистая установка движка WordPress с популярной темой Bliss, которая впоследствии была значительно переделана.</p><p>WordPress занимает второе место в рейтинге самых ужасных технологий по версии пользователей StackOverflow — и это совершенно не зря. Ядро, разработанное озверевшими индусами, и сторонние плагины, случайно созданные африканскими пятиклассниками в ходе попытки разжигания костра, из коробки не выдерживают и малейшей нагрузки.</p><p>В общем, наш сайт с треском упал через минуту после публикации ссылки на него в сообществе. И нам пришлось позвать человека-надо-было-ставить-линукс — Александра Фольца и теперь уже нашего сотрудника.</p><figure><img src="https://media.tproger.ru/uploads/2016/06/1446407959162488825.jpg" alt="" /></figure><p>Стал администратором инфраструктуры типичного я чисто случайно. На тот момент я уже работал в ТП редактором в течение нескольких месяцев. Как мне помнится, всё началось с просьбы нашего главного типичного настроить небольшой php-скрипт. Задание было весьма тривиальным, и я подумал: почему бы и нет? Получив кое-какой первоначальный доступ, я был удивлён весьма плохим состоянием инфраструктуры (как оказалось, этим просто было некому полноценно заниматься).</p><p>После нескольких небольших задач мне предложили постоянное место. Помнится, я потратил с месяц на доведение всех параметров инфраструктуры до актуального состояния (обновление, автоматизация некоторой рутинной работы). Сначала я контролировал всё вручную, но потом мы стали разрастаться — мне пришлось использовать Icinga (форк nagios) для контроля всех основных параметров. Возможно, кто-то скажет, что целая система мониторинга «для небольшого сайта» — это перебор, однако спешу вас уверить, мы больше, чем кажемся.</p><p>Пожалуй, отдельного упоминания заслуживает веселье в начале этого года, которое связано с DDoS-атаками на tproger.ru. Нам пришлось экстренно переходить за CloudFlare, что, в свою очередь, породило кучу жарких споров в своё время. Главное в таких делах — вовремя приходить к консенсусу. Также мы получали множество угроз от весьма сомнительных личностей. Один раз я даже ночевал на работе из-за проблем с сайтом.</p><p>Сейчас мы развиваемся более равномерно, чем раньше, а скоро планируем очередное расширение инфраструктуры для повышения стабильности работы нашего проекта.</p><p>Конечно, без 100 грамм и трех уровней кеширования на WordPress высоконагруженный проект не запустить, но эта CMS стала самой популярной не просто так: оценить такие вещи стоит не только с позиции программиста, в команде есть и много других людей. Да и бизнес обычно не терпит долгие ожидания.</p><p>«Если вы запустили первую версию продукта, и вас ничего в ней не раздражает, вы запустили её слишком поздно» — <a href="https://ru.wikipedia.org/wiki/%D0%A5%D0%BE%D1%84%D1%84%D0%BC%D0%B0%D0%BD,_%D0%A0%D0%B8%D0%B4">Рид Хофман</a>, основатель LinkedIn.</p><p>C тех пор утекло немало воды. Текущую версию вы видите прямо сейчас. Можете убедиться в том, что изменилось почти всё: страницы стали более информативными, поиск стал удобней с переходом на Google CSE, с мобильных всё выглядит так же хорошо, как и с десктопа, появились Push-уведомления и многое другое.</p><p>Конечно, некоторые из компонентов удалось скачать бесплатно в официальном магазине WordPress, но далеко не все. На сегодняшний день 80% всех установленных на сайте плагинов писались самостоятельно — в публичном доступе аналогов, сравнимых по качеству с нашими, просто не существует.</p><h3>Интерактивные статьи</h3><p>Одним из таких плагинов является движок рубрики <a href="https://tproger.ru/experts/">«Эксперты»</a>:</p><p>Он позволяет любому читателю проголосовать за тот или иной ответ общепризнанного эксперта и, посмотрев на рейтинг, понять: чьему мнению стоит доверять, а чьему нет.</p><figure><img src="https://media.tproger.ru/uploads/2016/05/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0-272-1.png" alt="" /></figure><p>Также важной частью нашего сайта стали <a href="https://tproger.ru/quiz/">викторины и тесты</a> — интерактивные веб-приложения, которые помогают человеку оценить уровень своих знаний и понять, чего он действительно хочет в своей карьере.</p><p>К слову, присоединиться к созданию тестов и викторин на добровольной основе может каждый желающий — присылайте материал на <a>admin@tproger.ru</a>.</p><h3>Дальнейшие планы</h3><p>Несмотря на большой пройденный путь, Tproger не планирует останавливаться и продолжит вас радовать свежим и интересным контентом. Одним из последних тасков было обновление страницы 404, но впереди нас ждут более глобальные изменения, вплоть до полного редизайна сайта, который мы уже тестируем.</p><p>Мы всегда открыты для ваших баг-репортов, идей и предложений: <a href="https://tproger.ru/about">контакты, по которым писать</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Конвертация картинки в сайт на WordPress и еще 7 полезных фотошоп-плагинов для веб-разработчиков</title>
      <link>https://tproger.ru/digest/8-frontend-photoshop-plugins</link>
      <comments>https://tproger.ru/digest/8-frontend-photoshop-plugins?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Лапа]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/digest/8-frontend-photoshop-plugins</guid>
      <description><![CDATA[<p>Бесплатные Photoshop-плагины для фронтендщиков: конвертация картинки в сайт на WordPress и превращение стилей слоя в готовый CSS-код через CSS3Ps.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/digest/8-frontend-photoshop-plugins">Конвертация картинки в сайт на WordPress и еще 7 полезных фотошоп-плагинов для веб-разработчиков</a>»</p>]]></description>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[WordPress]]></category>
      <category><![CDATA[Фронтенд]]></category>
      <category><![CDATA[Подборки]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 20 May 2016 19:25:42 GMT</pubDate>
      <content:encoded><![CDATA[<p>Многие фронтенд-разработчики сталкивались с такой ситуацией: нужно сверстать по огромному PSD-шаблону готовый сайт. От количества предстоящей работы можно и приуныть… если не помочь себе готовыми инструментами!</p><p>Сегодня tproger представляет целую подборку бесплатных Photoshop-плагинов, которые помогут каждому фронтендщику облегчить себе наиболее монотонную часть работы — перевод PSD-шаблона в готовые картинки, стили и верстку.</p><h3>CSS3Ps</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/1-1.png" alt="" /></figure><p>Для использования этого плагина понадобится интернет: он производит основную свою работу в облаке. А работа его — превращать набор стилей слоя в готовый CSS-код. Опробовать плагин можно на PSD-примере с сайта разработчиков — со своей задачей он справляется отлично.</p><h3>Cut&amp;Slice Me</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/cut-and-slice-me-tutorial-img.jpg" alt="" /></figure><p>Плагин, который умеет нарезать макет по слоям на готовые элементы под разные типы устройств — Android, iOS и полные версии сайтов. А настройка преобразования производится добавлением специальных пометок в имена слоев.</p><h3>Layrs Control 2</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/1-2.png" alt="" /></figure><p>Коллекция из 7 небольших скриптов, каждый из которых умеет выполнять какую-то несложную задачу. Один из них умеет находить и удалять неиспользуемые эффекты на слоях, другой — очищать исходник от пустых слоев, которые частенько появляются при работе с макетом, и так далее.</p><h3>Renamy</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/renamy.png" alt="" /></figure><p>У вас была проблема с PSD-шаблоном, поэтому вы решили использовать регулярные выражения. Теперь у вас две проблемы.</p><p>Впрочем, называть этот плагин проблемой будет несправедливо — регулярные выражения он задействует для манипуляций с названиями слоев. С его помощью можно переименовывать сразу по несколько слоев, используя маски и правила именования, искать нужные слои с помощью регулярок и многое другое. Отличный помощник в работе с большим документом со сложной структурой.</p><h3>Elemente</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/EfCCfZ7.png" alt="" /></figure><p>Настоящий тяжеловес в мире плагинов. Шутка ли — монстр, умеющий создавать из шаблона готовую WordPress-тему (уже со всем PHP-кодом), генерировать сетки, подобные bootstrap, работать со шрифтами и еще целую кучу всего.</p><p>Вообще плагин можно купить, но у него имеется и бесплатная пробная версия. Попробуйте, вам понравится.</p><h3>Flaticon</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/icons.png" alt="" /></figure><p>Маленький плагин, который поможет вам с иконками для шаблона. Можно будет прямо из фотошопа искать нужные иконки в базе по названиям и сразу же вставлять их в документ.</p><h3>Ink</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/ink-plugin.png" alt="" /></figure><p>А этот плагин может вам пригодиться, если понадобится сгенерировать документацию для слоя — например, чтобы кому-то показать. Одним нажатием кнопки можно получить красиво оформленную информацию о слое: размер, прозрачность, код цвета, точные размеры занимаемой им области.</p><p>Он, кстати, очень залипательно выполняет все измерения и генерацию, попробуйте ?</p><h3>Size Marks</h3><figure><img src="https://media.tproger.ru/uploads/2016/05/size-marks-show.gif" alt="" /></figure><p>Совсем маленький, но очень полезный скрипт — позволяет расставлять на холсте измерительные линейки с подписанными размерами в любом количестве. Его ценность поймет каждый, кому приходилось вымерять расстояния в пикселях на холсте, создавая поверх слоев прямоугольное выделение.</p>]]></content:encoded>
    </item>
  </channel>
</rss>