SlideShare a Scribd company logo
1 of 36
CMS WordPress
Более 20% интернета
Презентация для вебинара http://geekbrains.ru/events/73
Автор: Евгений Холин (eholin@gmail.com)
История создания
• CMS WordPress впервые увидела свет в 2003 году;
• Она создавалась и развивается как OpenSource проект;
• Изначально CMS была предназначена только для блогов;
• В 2004 году в версии 1.2 появились плагины;
• В 2005 году в версии 1.5 появились темы и статические страницы;
• В 2007 году была выпущены версии 2.2, которая включала в себя
виджеты, поддержку Atom feed и была более быстрой и удобной,
а также версия 2.3, в которую была включена поддержка
таксономий;
История создания
• В 2008 году было выпущено несколько версий (2.5 – 2.7), которые
значительно приблизили CMS к её современному виду, одним из
самых значительных нововведений было автоматическое
обновление самой системы, подключенных плагинов и тем, а
также переработанное ядро CMS, существенно ускорявшее её
работу;
• В 2011 году была выпущена версия 3.0, в неё был включен ряд
новых API, а также поддержка мультисайтовости – на одной CMS
можно было сделать несколько сайтов, управляемых из единой
панели администрирования;
История создания
• С 2011 по 2013 год было выпущено ряд версий, благодаря
которым на WordPress стало возможным быстро запускать сайты
с нуля без написания единой строчки кода. В это время активно
развивались репозитории плагинов и тем на Wordpress.org
• В 2014 году была выпущена версия 4.0, современная версия WP –
4.2.2
• Сейчас команда разработчиков WordPress идет по пути
дальнейшего улучшения и совершенствования системы, в планах
– добавление новых API и расширение функциональности.
Причины популярности WordPress
• Устанавливается на любой хостинг с поддержкой PHP/MySQL, есть
множество хостингов с уже предустановленной WordPress;
• Чтобы начать работу – нужно просто добавить свой контент, не
требуется долго настраивать и писать код;
• Все настройки CMS – через интуитивно понятный веб-интерфейс;
• CMS переведена более чем на 40 языков, среди которых и
русский;
• Можно существенно изменить внешний вид сайта на WordPress с
помощью тем – на выбор несколько десятков тысяч как
бесплатных, так и платных тем.
1. Простая в использовании
Причины популярности WordPress
• Функциональность WordPress можно изменить до
неузнаваемости с помощью плагинов, которых также доступно
несколько десятков тысяч. Интернет-магазин, landing page,
каталог – все это можно сделать на WordPress без единой строчки
кода.
• Плагины и темы устанавливаются в несколько кликов мыши.
• Есть много информации для новичков, в том числе и на русском
языке.
1. Простая в использовании
Причины популярности WordPress
• Низкий порог входа – чтобы сделать тему для WordPress,
достаточно самых минимальных знаний PHP и среднего уровня
владения HTML и CSS. Например, можно взять костяк темы с
http://underscores.me и добавить лишь дизайн с помощью CSS, не
меняя ни структуру темы, ни её функциональность;
• Хорошая документация – на основном справочном ресурсе
http://codex.wordpress.org описана вся функциональность
WordPress, приведена информация по всем функциям, фильтрам
и хукам. Но большая часть информации на английском языке.
2. Простая в разработке
Причины популярности WordPress
• Много подробных курсов, уроков и отдельных статей как для
новичков, так и для продвинутых программистов:
• http://codex.wordpress.org/WordPress_Lessons
• http://www.wpbeginner.com/
• http://code.tutsplus.com/categories/wordpress
• Благодаря различным API реализация многих вещей на WordPress
не требует написания огромного количества кода;
• Легко расширяемая – темы можно делать с помощью Bootstrap
или Foundation, можно подключать любые JS-фреймворки и
скрипты как к теме, так и к системе администрирования.
2. Простая в разработке
Структура WordPress
Вся CMS построена вокруг записей (Post). Записи – это
краеугольный камень WP (https://codex.wordpress.org/Post_Types)
Существует пять стандартных типов записей в WordPress:
1. Posts - записи, привязанные к хронологии, изначально
используемые в блоге. Могут содержать текст, изображения и т.д.
Есть предустановленные форматы записей, также можно создавать
свои. Посты обычно выводятся по хронологии и используются для
формирования Atom (RSS) фидов. Записи могут быть
структурированы с помощью таксономий: категорий и тегов. Если
включена поддержка ЧПУ – записи структурируются также по
хронологии в URL: http://site.url/2015/05/12/sample-post/
Типы записей
Структура WordPress
2. Pages – страницы, аналогичные записям блога, но не привязанные к
хронологии, выводятся как обычные страницы сайта.
Страницы могут быть организованы в иерархию, для каждой страницы
может быть задана родительская страница, у каждой страницы может
быть неограниченное количество дочерних страниц. Таким образом,
иерархия может быть бесконечной.
В обычной ситуации страницы не могут быть организованы с помощью
таксономий, но это можно изменить с помощью плагинов или
настройки темы:
https://codex.wordpress.org/Function_Reference/register_taxonomy и
https://codex.wordpress.org/Function_Reference/add_post_type_support
Типы записей
Структура WordPress
3. Attachments – любые вложения: изображения, аудио и
видеофайлы, документы PDF и т.д. Они могут быть как
прикрепленными к записям/страницам, так и существовать сами
по себе.
Вложение (в стандарте – только изображения) может быть
использовано как миниатюра записи
(https://codex.wordpress.org/Post_Thumbnails). Изначально это
была обычная картинка для привлечения внимания к записе,
сейчас мы уже привыкли видеть такие картинки в блогах,
новостных сайтах – в общем, во всем интернете.
Типы записей
Структура WordPress
4. Revisions – это черновик записи или страницы. Не особо нужная
функция, если у сайта (блога) один администратор, но если у сайта
несколько авторов и редакторов – крайне незаменимая вещь.
5. Navigation Menu – это запись, которая содержит в себе
информацию об одном пункте меню: название, ссылку и
подчиненность. С помощью этого типа записей можно легко и
просто создавать многоуровневые меню.
Типы записей
Структура WordPress
Custom Post Types – настраиваемые типы записей. Вы можете создать
любой настраиваемый тип записи и добавить к нему поддержку любой
функциональности, которая есть в WordPress: таксономии,
иерархическую структуру, миниатюры, настраиваемые поля (мета-
записи) и т.д.
Благодаря поддержке Custom Post Types WordPress стала такой гибкой и
популярной CMS. Плагины галерей, слайдеров, e-commerce и т.д. – всё
это работает именно на кастомных типах записей.
Custom Post Types создаются с помощью функции register_post_type
(https://codex.wordpress.org/Function_Reference/register_post_type)
Типы записей
Структура WordPress
Таксономии (Taxonomies - https://codex.wordpress.org/Taxonomies) в
WordPress – это основной способ горизонтальной связи записей.
Существуют следующие таксономии:
1. Категория (Category)
2. Тег (Tag)
3. Категория ссылки (Link category)
4. Формат записи (Post format)
5. Настраиваемая таксономия (Custom taxonomy)
Некоторые таксономии могут образовывать многоуровневую иерархию,
например, категории и настраиваемые таксономии.
Таксономии
Структура WordPress
Самые популярные виды таксономий: категории и теги.
Категории – лучший способ распределить ваш контент по полочкам, особенно
хорошо подходит для новостных сайтов и блогов. Одной записи может быть
присвоено несколько категорий.
Категории участвуют в ЧПУ – формируется URL вида /category/content/
Теги – ассоциативный способ каталогизации контента. Нет четкой иерархии,
зато по ассоциациям можно выстраивать связь между различными постами.
Все теги на сайте могут быть выведены как облако тегов.
Теги также участвуют в ЧПУ – формируется URL вида /tag/content/
В шаблоне сайта можно настраивать вывод списка записей или одной записи в
зависимости от категории или тега. Таким образом, мы можем очень гибко
выводить наш контент.
Таксономии
Структура WordPress
Менее популярные таксономии: категория ссылки и формат
записи.
Категория ссылки – такая же категория, но только для ссылки :) Так
как каталоги ссылок в последнее время не пользуются
популярностью, то и данная категория уже мало используется.
Формат записи (http://codex.wordpress.org/Post_Formats) – удобная
таксономия для блога. Позволяет настраивать внешний вид записи
в зависимости от заданного формата. Есть несколько стандартных
форматов, можно создать свой формат записи.
Таксономии
Структура WordPress
Настраиваемые таксономии (Custom Taxonomies) обычно
используются для настраиваемых типов записи, хотя их можно
прикрепить к любому стандартному типу записи.
Они включают в себя все свойства стандартных таксономий, могут
быть иерархически организованы.
Для чего это нужно? В первую очередь, для создания сложной
иерархии, в которой нужно разделять наши записи по множеству
признаков. При этом выстроить структуру, используя стандартные
таксономии, не получается – она выходит слишком громоздкой.
Пример – каталог книг с разделением по жанрам, авторам и т.д.
Таксономии
Структура WordPress
В WordPress есть возможность для каждой записи сохранять и
выводить неограниченное количество мета-данных или
настраиваемых полей (Custom Fields,
https://codex.wordpress.org/Custom_Fields).
Настраиваемые поля можно задавать в темах (не самый лучший
вариант!) или в плагинах. Также их можно использовать, не
написав ни строчки кода, достаточно просто установить плагин для
работы с мета-данными, например MetaBox (http://metabox.io).
Мета-данные
Структура WordPress
Плагины в WordPress – это, по сути, расширение функциональности CMS,
порой до неузнаваемости. Назову лишь несколько популярных
плагинов, которые преображают WordPress:
• Woocommerce – делает из WordPress интернет-магазин;
• bbPress – форум для WordPress;
• BuddyPress – социальная сеть на WordPress;
• MailChimp - управление e-mail подписками.
Всего в официальном репозитории https://wordpress.org/plugins/ более
37 000 бесплатных плагинов. А в одном из самых популярных магазинов
http://codecanyon.net более 3500 плагинов.
Плагины
Структура WordPress
Разработать плагин для WordPress достаточно просто – это
обычный PHP-код, можно использовать CSS и JS (в т.ч. и
фреймворки).
Естественно, код должен соответствовать стандартам WordPress,
особенно если вы планируете размещать его в репозитории
плагинов или продавать на различных маркетплейсах типа
codecanyon.net
Более подробно о разработке плагинов:
https://codex.wordpress.org/Writing_a_Plugin
Плагины
Структура WordPress
Виджет (Widget, http://codex.wordpress.org/WordPress_Widgets) –
частный случай плагина, изначально предназначался для вывода
какой-то информации в сайдбаре (Sidebar, боковая колонка).
Но, так как область сайдбара в теме WordPress можно задавать где
угодно, не только сбоку, то виджеты стали появляться и в подвалах,
и в шапках сайтов.
Виджеты
Структура WordPress
Тема (Theme, https://codex.wordpress.org/Using_Themes) – составляет
основу внешнего вида вашего сайта на WordPress. По сути, вся
разработка сайта на WordPress у большинства разработчиков сводится к
тому, чтобы сделать тему, подключить её и несколько плагинов к WP и
настроить сайт.
Неправильно, когда вся дополнительная функциональность типа Custom
Post Types, реализуется в теме – она должна быть реализована в
плагинах, темы отвечают только за внешний вид.
Есть множество бесплатных тем, их можно скачать с
https://wordpress.org, есть немало более качественных и
привлекательных платных тем (пример магазина тем – themeforest.net).
Темы
Структура WordPress
На http://wphierarchy.com приведена полная иерархия файлов в теме, на самом деле все намного проще – по
минимуму в теме должны быть файлы style.css и index.php. Все остальное – лишь расширяет функциональность и
внешний вид темы.
Однако в темах все же больше, чем 2 файла, перечислю основные составляющие:
• 404.php – файл, отвечающий за страницу 404;
• archive.php – файл, отвечающий за вывод хронологического архива записей;
• author.php – файл, отвечающий за вывод страницы с информацией о конкретном авторе;
• category.php – файл, отвечающий за вывод списка записей одной категории;
• comments.php – файл, отвечающий за вывод формы для комментариев и списка комментариев;
• content.php – файл, отвечающий за вывод непосредственно контента записи, подключается в single.php или
page.php, в свою очередь может подключать файлы, соответствующие разным типам записей;
• footer.php – файл, отвечающий за вывод подвала сайта;
Иерархия в темах
Структура WordPress
• front-page.php – файл, используемый для вывода главной страницы сайта без списка записей. Очень удобно
использовать для коммерческих сайтов, где на главной странице не нужны последние записи блога.
• functions.php – файл с дополнительными настройками темы, расширяет её функциональность;
• header.php – файл, отвечающий за вывод шапки сайта;
• index.php – файл, отвечающий за вывод списка записей или одиночной страницы на главной странице сайта;
• page.php – файл, отвечающий за вывод страницы сайта;
• search.php – файл, отвечающий за вывод результатов поиска по сайту;
• sidebar.php – файл, отвечающий за вывод боковой колонки сайта;
• single.php – файл, отвечающий за вывод одиночной записи;
• style.css – файл таблицы стилей сайта;
Иерархия в темах
Структура WordPress
Структура темы
Шапка сайта
Меню сайта
header.php
sidebar.php
Подвал сайта
footer.php
Заголовок записи
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut
laoreet iaculis tortor, ut sodales ante pharetra porta.
Vestibulum quis lectus justo. In mollis iaculis tortor, non
placerat tortor vehicula id.
Заголовок записи
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut
laoreet iaculis tortor, ut sodales ante pharetra porta.
Vestibulum quis lectus justo. In mollis iaculis tortor, non
placerat tortor vehicula id.
index.php
archive.php
category.php
Так выглядит главная
страница сайта (если
отсутствует файл front-
page.php):
• шапка сайта,
• список записей,
• сайдбар,
• подвал сайта.
Аналогично выглядят
страницы категории
или архива записей.
Структура WordPress
Структура темы
Шапка сайта
Меню сайта
header.php
sidebar.php
Подвал сайта
footer.php
Заголовок записи
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut
laoreet iaculis tortor, ut sodales ante pharetra porta.
Vestibulum quis lectus justo. In mollis iaculis tortor, non
placerat tortor vehicula id.
single.php
page.php
Так выглядит одна
запись или страница.
Vivamus vehicula odio eros, non commodo massa convallis non. Integer
varius magna faucibus, lobortis ligula eu, dictum purus. Sed id ipsum id orci
fringilla semper. Proin laoreet volutpat euismod. Praesent at ullamcorper
odio. Nunc suscipit posuere nunc, id euismod metus efficitur quis. Morbi
vitae nibh varius, scelerisque est eu, sagittis sem. Etiam ornare diam ut
ligula finibus dignissim.
Структура WordPress
Фреймворки, которые расширяют функциональность
WordPress:
• Redux Framework (http://reduxframework.com/)
• Genesis Framework (http://my.studiopress.com/themes/genesis/)
• Thesis Framework (http://diythemes.com/)
• Kirki WordPress Customizer – фреймворк, существенно
расширяющий WordPress Customizer API (http://kirki.org/)
• http://underscores.me – базовый скелет для построения тем
Фреймворки для WordPress
Структура WordPress
Функциональность сайта на WordPress может быть существенно
расширена за счет использования API (Application Programming
Interface, https://codex.wordpress.org/WordPress_APIs).
Доступные API:
• Dashboard Widgets API – API для создания виджетов в панели управления WordPress
• Database API – набор интерфейсов для работы с базой данных WordPress, состоит из 3-х API:
• Options API – API для работы с настройками плагина или темы (Options). Всё, что
хранится в таблице wp_options
• Transients API – аналог Options API, но только для временной информации. Используется
обычно при кэшировании данных.
• Metadata API – API для хранения мета-данных, используется для комментариев, записей
или пользователей. Всё, что хранится в таблицах wp_commentmeta, wp_postmeta и
wp_usermeta
Обзор API WordPress
Структура WordPress
И еще немного WordPress API:
• HTTP API – API для работы с HTTP-запросами. Используется для получения или отправки
информации с/на удаленных серверов;
• File Header API – используется для получения заголовков из файлов тем и плагинов WP;
• Filesystem API – изначально создан для автообновления файлов WP, а также плагинов и тем,
но в настоящее время используется для всех файловых операций внутри WordPress;
• Plugin API – API для разработчиков плагинов, состоит из хуков (hooks), событий (actions) и
фильтров (filters):
• События используются для объявления каких-либо функций, подменяющих или дополняющих стандартные
действия;
• Фильтры используются для обработки данных, полученных в результате какого-либо события;
• Хуки используются для перехвата каких либо действий CMS, правило простое – сначала создаем событие,
потом подключаем его к какому-либо действию с помощью хука.
• Подробно и на русском о создании плагинов: http://easy-code.ru/lesson/building-wordpress-plugin-part-one
Обзор API WordPress
Структура WordPress
Это уже почти все API:
• Quicktags API – используется для добавления кнопок к стандартному редактору WordPress;
• Rewrite API – используется для изменения стандартного режима ЧПУ WordPress, незаменим
при создании Custom Post Types;
• Settings API – существенно упрощает работу с настройками тем и плагинов, т.к. отвечает за
вывод элементов интерфейса и сохранение настроек в БД;
• Shortcode API – API для создания шорткодов. Шорткод – это код, который вставляется прямо
в запись (как вариант – в код темы), вызывает функцию и передает ей ряд параметров;
• Theme Modification API – позволяет работать с модификациями темы как с опциями
WordPress. Хорошо работает в связке с WordPress Theme Customizer API.
• Theme Customization API – используется для настроек темы с помощью стандартного
интерфейса "Appearance" → "Customize". Подробно и на русском:
http://uwebdesign.ru/wordpress-customizer/
Обзор API WordPress
Структура WordPress
Все, точно последние API:
• Widgets API – API для создания, сохранения и вывода виджетов;
• XML-RPC WordPress API – API для работы с интерфейсом XML RPC, позволяет удаленно
получать и отправлять данные (записи, таксономии и т.д.) WordPress.
Отдельно упомяну про WordPress REST API – в настоящее время он не является полноценным
официальным API и находится в разработке. Если говорить кратко – это интерфейс для работы
с данными WordPress вне стандартной админки WordPress.
Или, что ещё более крышесносяще – это интерфейс для работы с любыми данными в админке
WordPress.
На этом, пожалуй, все о WordPress API :)
Обзор API WordPress
Немного о безопасности WordPress
WordPress, как и все, что создано одним человеком, другим человеком может
быть взломана. Но многие проблемы можно предотвратить заранее:
• Рекомендуется устанавливать и использовать плагины, использующие различные методы
защиты от спама, например, Akismet или плагины с капчей;
• Рекомендуется отключать pingbacks и trackbacks;
• Рекомендуется отключать ссылки в комментариях или включать обязательную модерацию
таких ссылок;
• Рекомендуется регулярно обновлять WordPress и все плагины до последних версий;
• Для защиты формы логина от bruteforce-атаки не придумали ничего лучше, чем пароль на
папку wp-admin в .htaccess (https://wpcafe.org/hacks/kak-zashhitit-parolem-dostup-k-papke-
wp-admin-v-wordpress/)
Недостатки WordPress
• Невысокое качество тем и плагинов на wordpress.org, потенциально большое
количество уязвимостей;
• Привлекательность для спаммеров и хакеров из-за высокой
распространенности;
• Поддержка кода, написанного по устаревшим стандартам;
• Требовательность к ресурсам – решается с помощью кэширования;
• Бессмысленный WP Cron, что решается с помощью
define('DISABLE_WP_CRON', 'true') в wp-config.php;
• Нарезка изображений, что решается с помощью
https://wordpress.org/plugins/otf-regenerate-thumbnails/;
• Генерация множества ненужных адресов и дублей контента, что решается с
помощью https://wordpress.org/plugins/wordpress-seo/.
Перспективы разработчика WordPress
• Фриланс – наибольшего успеха можно добиться на англоязычных
биржах типа upwork.com, но начинать можно, имея
минимальные знания CMS и с русскоязычных бирж типа fl.ru;
• Работа в веб-студии – можно без труда найти работу в офисе в
любом более-менее крупном городе или удаленную работу;
• Разработка собственных продуктов – плагинов и тем и их
последующая продажа.
Благодарю за внимание!
Жду ваших вопросов.

More Related Content

What's hot

Інформатика. Урок не тему: Текстовий документ та його об’єкти
Інформатика. Урок не тему: Текстовий документ та його об’єктиІнформатика. Урок не тему: Текстовий документ та його об’єкти
Інформатика. Урок не тему: Текстовий документ та його об’єкти
Zozuliatamara
 
архівація даних
архівація данихархівація даних
архівація даних
Irina Biryuk
 
скретч та його друзі рух створення програми
скретч та його друзі рух створення програмискретч та його друзі рух створення програми
скретч та його друзі рух створення програми
Irina Tabanets
 
засоби автоматизації процесу створення документа
засоби автоматизації процесу створення документазасоби автоматизації процесу створення документа
засоби автоматизації процесу створення документа
Elena Kostesnko
 
практичні роботи № 1 10 ms excel 2003
практичні роботи № 1 10 ms excel 2003практичні роботи № 1 10 ms excel 2003
практичні роботи № 1 10 ms excel 2003
slavinskiy
 
розвиток особистості
розвиток особистостірозвиток особистості
розвиток особистості
cit-cit
 

What's hot (20)

NZ Інструкція для адміністратора школи 08.07.22.pdf
NZ Інструкція для адміністратора школи 08.07.22.pdfNZ Інструкція для адміністратора школи 08.07.22.pdf
NZ Інструкція для адміністратора школи 08.07.22.pdf
 
Етапи створення веб сайтів
Етапи створення веб сайтівЕтапи створення веб сайтів
Етапи створення веб сайтів
 
SharePoint Design & Development
SharePoint Design & DevelopmentSharePoint Design & Development
SharePoint Design & Development
 
Інформатика. Урок не тему: Текстовий документ та його об’єкти
Інформатика. Урок не тему: Текстовий документ та його об’єктиІнформатика. Урок не тему: Текстовий документ та його об’єкти
Інформатика. Урок не тему: Текстовий документ та його об’єкти
 
архівація даних
архівація данихархівація даних
архівація даних
 
скретч та його друзі рух створення програми
скретч та його друзі рух створення програмискретч та його друзі рух створення програми
скретч та його друзі рух створення програми
 
Графіка для веб-середовища
Графіка для веб-середовищаГрафіка для веб-середовища
Графіка для веб-середовища
 
засоби автоматизації процесу створення документа
засоби автоматизації процесу створення документазасоби автоматизації процесу створення документа
засоби автоматизації процесу створення документа
 
комп’ютерні програми і мови програмування
комп’ютерні програми і мови програмуваннякомп’ютерні програми і мови програмування
комп’ютерні програми і мови програмування
 
практичні роботи № 1 10 ms excel 2003
практичні роботи № 1 10 ms excel 2003практичні роботи № 1 10 ms excel 2003
практичні роботи № 1 10 ms excel 2003
 
6 клас урок 1 Інформатика
6 клас урок 1 Інформатика6 клас урок 1 Інформатика
6 клас урок 1 Інформатика
 
7 клас 1 урок. Правила поведінки і безпеки життєдіяльності (БЖ) в комп’ютерно...
7 клас 1 урок. Правила поведінки і безпеки життєдіяльності (БЖ) в комп’ютерно...7 клас 1 урок. Правила поведінки і безпеки життєдіяльності (БЖ) в комп’ютерно...
7 клас 1 урок. Правила поведінки і безпеки життєдіяльності (БЖ) в комп’ютерно...
 
розвиток особистості
розвиток особистостірозвиток особистості
розвиток особистості
 
Інформатика 7 клас
Інформатика 7 клас Інформатика 7 клас
Інформатика 7 клас
 
з досвіду роботи вчителя інформатики
з досвіду роботи вчителя інформатикиз досвіду роботи вчителя інформатики
з досвіду роботи вчителя інформатики
 
Шкільне методичне об'єднання вчителів історії та правознавства Каланчаць...
Шкільне методичне об'єднання  вчителів історії та  правознавства    Каланчаць...Шкільне методичне об'єднання  вчителів історії та  правознавства    Каланчаць...
Шкільне методичне об'єднання вчителів історії та правознавства Каланчаць...
 
Що за страшний звір - наукова стаття, і як перестати його боятися
Що за страшний звір - наукова стаття, і як перестати його боятисяЩо за страшний звір - наукова стаття, і як перестати його боятися
Що за страшний звір - наукова стаття, і як перестати його боятися
 
3 клас урок 22 форматування текстових і графічнихоб’єктів слайду
3 клас урок 22 форматування текстових і графічнихоб’єктів слайду3 клас урок 22 форматування текстових і графічнихоб’єктів слайду
3 клас урок 22 форматування текстових і графічнихоб’єктів слайду
 
[2019] 게임 서버 대규모 부하 테스트와 모니터링 이렇게 해보자
[2019] 게임 서버 대규모 부하 테스트와 모니터링 이렇게 해보자[2019] 게임 서버 대규모 부하 테스트와 모니터링 이렇게 해보자
[2019] 게임 서버 대규모 부하 테스트와 모니터링 이렇게 해보자
 
Електронні журнали та особливості їх використання.pptx
Електронні журнали та особливості їх використання.pptxЕлектронні журнали та особливості їх використання.pptx
Електронні журнали та особливості їх використання.pptx
 

Similar to Презентация к вебинару по CMS WordPress

Nazapad 150602152457-lva1-app6892
Nazapad 150602152457-lva1-app6892Nazapad 150602152457-lva1-app6892
Nazapad 150602152457-lva1-app6892
Tochukova
 
работа с блогом1
работа с блогом1работа с блогом1
работа с блогом1
Natalia Odegova
 
работа с блогом1
работа с блогом1работа с блогом1
работа с блогом1
Nata Koinova
 
как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4
rit2011
 
Eleanor
EleanorEleanor
Eleanor
SC3402
 
Eleanor
EleanorEleanor
Eleanor
SC3402
 
Eleanor CMS
Eleanor CMSEleanor CMS
Eleanor CMS
SC3402
 
Создаем свой блог на Rusedu
Создаем свой блог на RuseduСоздаем свой блог на Rusedu
Создаем свой блог на Rusedu
RC
 
технология веб логов для оптимизации преподавания страноведческих дисциплин
технология веб логов для оптимизации преподавания страноведческих дисциплинтехнология веб логов для оптимизации преподавания страноведческих дисциплин
технология веб логов для оптимизации преподавания страноведческих дисциплин
Moscow State University
 

Similar to Презентация к вебинару по CMS WordPress (20)

презентация никоненко михаил
презентация никоненко михаилпрезентация никоненко михаил
презентация никоненко михаил
 
Курсовая работа. Презентация
Курсовая работа. ПрезентацияКурсовая работа. Презентация
Курсовая работа. Презентация
 
Михаил Шакин - Применение web 2.0 блогов в англоязычном SEO
Михаил Шакин - Применение web 2.0 блогов в англоязычном SEOМихаил Шакин - Применение web 2.0 блогов в англоязычном SEO
Михаил Шакин - Применение web 2.0 блогов в англоязычном SEO
 
Nazapad 150602152457-lva1-app6892
Nazapad 150602152457-lva1-app6892Nazapad 150602152457-lva1-app6892
Nazapad 150602152457-lva1-app6892
 
WordPress
WordPressWordPress
WordPress
 
Моделирование контента в WordPress
Моделирование контента в WordPressМоделирование контента в WordPress
Моделирование контента в WordPress
 
работа с блогом1
работа с блогом1работа с блогом1
работа с блогом1
 
работа с блогом1
работа с блогом1работа с блогом1
работа с блогом1
 
как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4
 
Сайт конференции
Сайт конференцииСайт конференции
Сайт конференции
 
Eleanor
EleanorEleanor
Eleanor
 
Eleanor
EleanorEleanor
Eleanor
 
Eleanor CMS
Eleanor CMSEleanor CMS
Eleanor CMS
 
Как стать электронной компанией в Спб. Часть 2
Как стать электронной компанией в Спб. Часть 2Как стать электронной компанией в Спб. Часть 2
Как стать электронной компанией в Спб. Часть 2
 
Wiki
WikiWiki
Wiki
 
Создаем свой блог на Rusedu
Создаем свой блог на RuseduСоздаем свой блог на Rusedu
Создаем свой блог на Rusedu
 
технология веб логов для оптимизации преподавания страноведческих дисциплин
технология веб логов для оптимизации преподавания страноведческих дисциплинтехнология веб логов для оптимизации преподавания страноведческих дисциплин
технология веб логов для оптимизации преподавания страноведческих дисциплин
 
Введение в Mendeley (2015)
Введение в Mendeley (2015)Введение в Mendeley (2015)
Введение в Mendeley (2015)
 
Работа с порталом техподдержки Vertex
Работа с порталом техподдержки VertexРабота с порталом техподдержки Vertex
Работа с порталом техподдержки Vertex
 
CMS
CMSCMS
CMS
 

Recently uploaded

CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
Хроники кибер-безопасника
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
Хроники кибер-безопасника
 
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
Хроники кибер-безопасника
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
Хроники кибер-безопасника
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
Ирония безопасности
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Ирония безопасности
 

Recently uploaded (9)

CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
 
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
 
Ransomware_Q3 2023. The report [RU].pdf
Ransomware_Q3 2023.  The report [RU].pdfRansomware_Q3 2023.  The report [RU].pdf
Ransomware_Q3 2023. The report [RU].pdf
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
 
MS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdfMS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdf
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
 
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdfMalware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
 

Презентация к вебинару по CMS WordPress

  • 1. CMS WordPress Более 20% интернета Презентация для вебинара http://geekbrains.ru/events/73 Автор: Евгений Холин (eholin@gmail.com)
  • 2. История создания • CMS WordPress впервые увидела свет в 2003 году; • Она создавалась и развивается как OpenSource проект; • Изначально CMS была предназначена только для блогов; • В 2004 году в версии 1.2 появились плагины; • В 2005 году в версии 1.5 появились темы и статические страницы; • В 2007 году была выпущены версии 2.2, которая включала в себя виджеты, поддержку Atom feed и была более быстрой и удобной, а также версия 2.3, в которую была включена поддержка таксономий;
  • 3. История создания • В 2008 году было выпущено несколько версий (2.5 – 2.7), которые значительно приблизили CMS к её современному виду, одним из самых значительных нововведений было автоматическое обновление самой системы, подключенных плагинов и тем, а также переработанное ядро CMS, существенно ускорявшее её работу; • В 2011 году была выпущена версия 3.0, в неё был включен ряд новых API, а также поддержка мультисайтовости – на одной CMS можно было сделать несколько сайтов, управляемых из единой панели администрирования;
  • 4. История создания • С 2011 по 2013 год было выпущено ряд версий, благодаря которым на WordPress стало возможным быстро запускать сайты с нуля без написания единой строчки кода. В это время активно развивались репозитории плагинов и тем на Wordpress.org • В 2014 году была выпущена версия 4.0, современная версия WP – 4.2.2 • Сейчас команда разработчиков WordPress идет по пути дальнейшего улучшения и совершенствования системы, в планах – добавление новых API и расширение функциональности.
  • 5. Причины популярности WordPress • Устанавливается на любой хостинг с поддержкой PHP/MySQL, есть множество хостингов с уже предустановленной WordPress; • Чтобы начать работу – нужно просто добавить свой контент, не требуется долго настраивать и писать код; • Все настройки CMS – через интуитивно понятный веб-интерфейс; • CMS переведена более чем на 40 языков, среди которых и русский; • Можно существенно изменить внешний вид сайта на WordPress с помощью тем – на выбор несколько десятков тысяч как бесплатных, так и платных тем. 1. Простая в использовании
  • 6. Причины популярности WordPress • Функциональность WordPress можно изменить до неузнаваемости с помощью плагинов, которых также доступно несколько десятков тысяч. Интернет-магазин, landing page, каталог – все это можно сделать на WordPress без единой строчки кода. • Плагины и темы устанавливаются в несколько кликов мыши. • Есть много информации для новичков, в том числе и на русском языке. 1. Простая в использовании
  • 7. Причины популярности WordPress • Низкий порог входа – чтобы сделать тему для WordPress, достаточно самых минимальных знаний PHP и среднего уровня владения HTML и CSS. Например, можно взять костяк темы с http://underscores.me и добавить лишь дизайн с помощью CSS, не меняя ни структуру темы, ни её функциональность; • Хорошая документация – на основном справочном ресурсе http://codex.wordpress.org описана вся функциональность WordPress, приведена информация по всем функциям, фильтрам и хукам. Но большая часть информации на английском языке. 2. Простая в разработке
  • 8. Причины популярности WordPress • Много подробных курсов, уроков и отдельных статей как для новичков, так и для продвинутых программистов: • http://codex.wordpress.org/WordPress_Lessons • http://www.wpbeginner.com/ • http://code.tutsplus.com/categories/wordpress • Благодаря различным API реализация многих вещей на WordPress не требует написания огромного количества кода; • Легко расширяемая – темы можно делать с помощью Bootstrap или Foundation, можно подключать любые JS-фреймворки и скрипты как к теме, так и к системе администрирования. 2. Простая в разработке
  • 9. Структура WordPress Вся CMS построена вокруг записей (Post). Записи – это краеугольный камень WP (https://codex.wordpress.org/Post_Types) Существует пять стандартных типов записей в WordPress: 1. Posts - записи, привязанные к хронологии, изначально используемые в блоге. Могут содержать текст, изображения и т.д. Есть предустановленные форматы записей, также можно создавать свои. Посты обычно выводятся по хронологии и используются для формирования Atom (RSS) фидов. Записи могут быть структурированы с помощью таксономий: категорий и тегов. Если включена поддержка ЧПУ – записи структурируются также по хронологии в URL: http://site.url/2015/05/12/sample-post/ Типы записей
  • 10. Структура WordPress 2. Pages – страницы, аналогичные записям блога, но не привязанные к хронологии, выводятся как обычные страницы сайта. Страницы могут быть организованы в иерархию, для каждой страницы может быть задана родительская страница, у каждой страницы может быть неограниченное количество дочерних страниц. Таким образом, иерархия может быть бесконечной. В обычной ситуации страницы не могут быть организованы с помощью таксономий, но это можно изменить с помощью плагинов или настройки темы: https://codex.wordpress.org/Function_Reference/register_taxonomy и https://codex.wordpress.org/Function_Reference/add_post_type_support Типы записей
  • 11. Структура WordPress 3. Attachments – любые вложения: изображения, аудио и видеофайлы, документы PDF и т.д. Они могут быть как прикрепленными к записям/страницам, так и существовать сами по себе. Вложение (в стандарте – только изображения) может быть использовано как миниатюра записи (https://codex.wordpress.org/Post_Thumbnails). Изначально это была обычная картинка для привлечения внимания к записе, сейчас мы уже привыкли видеть такие картинки в блогах, новостных сайтах – в общем, во всем интернете. Типы записей
  • 12. Структура WordPress 4. Revisions – это черновик записи или страницы. Не особо нужная функция, если у сайта (блога) один администратор, но если у сайта несколько авторов и редакторов – крайне незаменимая вещь. 5. Navigation Menu – это запись, которая содержит в себе информацию об одном пункте меню: название, ссылку и подчиненность. С помощью этого типа записей можно легко и просто создавать многоуровневые меню. Типы записей
  • 13. Структура WordPress Custom Post Types – настраиваемые типы записей. Вы можете создать любой настраиваемый тип записи и добавить к нему поддержку любой функциональности, которая есть в WordPress: таксономии, иерархическую структуру, миниатюры, настраиваемые поля (мета- записи) и т.д. Благодаря поддержке Custom Post Types WordPress стала такой гибкой и популярной CMS. Плагины галерей, слайдеров, e-commerce и т.д. – всё это работает именно на кастомных типах записей. Custom Post Types создаются с помощью функции register_post_type (https://codex.wordpress.org/Function_Reference/register_post_type) Типы записей
  • 14. Структура WordPress Таксономии (Taxonomies - https://codex.wordpress.org/Taxonomies) в WordPress – это основной способ горизонтальной связи записей. Существуют следующие таксономии: 1. Категория (Category) 2. Тег (Tag) 3. Категория ссылки (Link category) 4. Формат записи (Post format) 5. Настраиваемая таксономия (Custom taxonomy) Некоторые таксономии могут образовывать многоуровневую иерархию, например, категории и настраиваемые таксономии. Таксономии
  • 15. Структура WordPress Самые популярные виды таксономий: категории и теги. Категории – лучший способ распределить ваш контент по полочкам, особенно хорошо подходит для новостных сайтов и блогов. Одной записи может быть присвоено несколько категорий. Категории участвуют в ЧПУ – формируется URL вида /category/content/ Теги – ассоциативный способ каталогизации контента. Нет четкой иерархии, зато по ассоциациям можно выстраивать связь между различными постами. Все теги на сайте могут быть выведены как облако тегов. Теги также участвуют в ЧПУ – формируется URL вида /tag/content/ В шаблоне сайта можно настраивать вывод списка записей или одной записи в зависимости от категории или тега. Таким образом, мы можем очень гибко выводить наш контент. Таксономии
  • 16. Структура WordPress Менее популярные таксономии: категория ссылки и формат записи. Категория ссылки – такая же категория, но только для ссылки :) Так как каталоги ссылок в последнее время не пользуются популярностью, то и данная категория уже мало используется. Формат записи (http://codex.wordpress.org/Post_Formats) – удобная таксономия для блога. Позволяет настраивать внешний вид записи в зависимости от заданного формата. Есть несколько стандартных форматов, можно создать свой формат записи. Таксономии
  • 17. Структура WordPress Настраиваемые таксономии (Custom Taxonomies) обычно используются для настраиваемых типов записи, хотя их можно прикрепить к любому стандартному типу записи. Они включают в себя все свойства стандартных таксономий, могут быть иерархически организованы. Для чего это нужно? В первую очередь, для создания сложной иерархии, в которой нужно разделять наши записи по множеству признаков. При этом выстроить структуру, используя стандартные таксономии, не получается – она выходит слишком громоздкой. Пример – каталог книг с разделением по жанрам, авторам и т.д. Таксономии
  • 18. Структура WordPress В WordPress есть возможность для каждой записи сохранять и выводить неограниченное количество мета-данных или настраиваемых полей (Custom Fields, https://codex.wordpress.org/Custom_Fields). Настраиваемые поля можно задавать в темах (не самый лучший вариант!) или в плагинах. Также их можно использовать, не написав ни строчки кода, достаточно просто установить плагин для работы с мета-данными, например MetaBox (http://metabox.io). Мета-данные
  • 19. Структура WordPress Плагины в WordPress – это, по сути, расширение функциональности CMS, порой до неузнаваемости. Назову лишь несколько популярных плагинов, которые преображают WordPress: • Woocommerce – делает из WordPress интернет-магазин; • bbPress – форум для WordPress; • BuddyPress – социальная сеть на WordPress; • MailChimp - управление e-mail подписками. Всего в официальном репозитории https://wordpress.org/plugins/ более 37 000 бесплатных плагинов. А в одном из самых популярных магазинов http://codecanyon.net более 3500 плагинов. Плагины
  • 20. Структура WordPress Разработать плагин для WordPress достаточно просто – это обычный PHP-код, можно использовать CSS и JS (в т.ч. и фреймворки). Естественно, код должен соответствовать стандартам WordPress, особенно если вы планируете размещать его в репозитории плагинов или продавать на различных маркетплейсах типа codecanyon.net Более подробно о разработке плагинов: https://codex.wordpress.org/Writing_a_Plugin Плагины
  • 21. Структура WordPress Виджет (Widget, http://codex.wordpress.org/WordPress_Widgets) – частный случай плагина, изначально предназначался для вывода какой-то информации в сайдбаре (Sidebar, боковая колонка). Но, так как область сайдбара в теме WordPress можно задавать где угодно, не только сбоку, то виджеты стали появляться и в подвалах, и в шапках сайтов. Виджеты
  • 22. Структура WordPress Тема (Theme, https://codex.wordpress.org/Using_Themes) – составляет основу внешнего вида вашего сайта на WordPress. По сути, вся разработка сайта на WordPress у большинства разработчиков сводится к тому, чтобы сделать тему, подключить её и несколько плагинов к WP и настроить сайт. Неправильно, когда вся дополнительная функциональность типа Custom Post Types, реализуется в теме – она должна быть реализована в плагинах, темы отвечают только за внешний вид. Есть множество бесплатных тем, их можно скачать с https://wordpress.org, есть немало более качественных и привлекательных платных тем (пример магазина тем – themeforest.net). Темы
  • 23.
  • 24. Структура WordPress На http://wphierarchy.com приведена полная иерархия файлов в теме, на самом деле все намного проще – по минимуму в теме должны быть файлы style.css и index.php. Все остальное – лишь расширяет функциональность и внешний вид темы. Однако в темах все же больше, чем 2 файла, перечислю основные составляющие: • 404.php – файл, отвечающий за страницу 404; • archive.php – файл, отвечающий за вывод хронологического архива записей; • author.php – файл, отвечающий за вывод страницы с информацией о конкретном авторе; • category.php – файл, отвечающий за вывод списка записей одной категории; • comments.php – файл, отвечающий за вывод формы для комментариев и списка комментариев; • content.php – файл, отвечающий за вывод непосредственно контента записи, подключается в single.php или page.php, в свою очередь может подключать файлы, соответствующие разным типам записей; • footer.php – файл, отвечающий за вывод подвала сайта; Иерархия в темах
  • 25. Структура WordPress • front-page.php – файл, используемый для вывода главной страницы сайта без списка записей. Очень удобно использовать для коммерческих сайтов, где на главной странице не нужны последние записи блога. • functions.php – файл с дополнительными настройками темы, расширяет её функциональность; • header.php – файл, отвечающий за вывод шапки сайта; • index.php – файл, отвечающий за вывод списка записей или одиночной страницы на главной странице сайта; • page.php – файл, отвечающий за вывод страницы сайта; • search.php – файл, отвечающий за вывод результатов поиска по сайту; • sidebar.php – файл, отвечающий за вывод боковой колонки сайта; • single.php – файл, отвечающий за вывод одиночной записи; • style.css – файл таблицы стилей сайта; Иерархия в темах
  • 26. Структура WordPress Структура темы Шапка сайта Меню сайта header.php sidebar.php Подвал сайта footer.php Заголовок записи Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut laoreet iaculis tortor, ut sodales ante pharetra porta. Vestibulum quis lectus justo. In mollis iaculis tortor, non placerat tortor vehicula id. Заголовок записи Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut laoreet iaculis tortor, ut sodales ante pharetra porta. Vestibulum quis lectus justo. In mollis iaculis tortor, non placerat tortor vehicula id. index.php archive.php category.php Так выглядит главная страница сайта (если отсутствует файл front- page.php): • шапка сайта, • список записей, • сайдбар, • подвал сайта. Аналогично выглядят страницы категории или архива записей.
  • 27. Структура WordPress Структура темы Шапка сайта Меню сайта header.php sidebar.php Подвал сайта footer.php Заголовок записи Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut laoreet iaculis tortor, ut sodales ante pharetra porta. Vestibulum quis lectus justo. In mollis iaculis tortor, non placerat tortor vehicula id. single.php page.php Так выглядит одна запись или страница. Vivamus vehicula odio eros, non commodo massa convallis non. Integer varius magna faucibus, lobortis ligula eu, dictum purus. Sed id ipsum id orci fringilla semper. Proin laoreet volutpat euismod. Praesent at ullamcorper odio. Nunc suscipit posuere nunc, id euismod metus efficitur quis. Morbi vitae nibh varius, scelerisque est eu, sagittis sem. Etiam ornare diam ut ligula finibus dignissim.
  • 28. Структура WordPress Фреймворки, которые расширяют функциональность WordPress: • Redux Framework (http://reduxframework.com/) • Genesis Framework (http://my.studiopress.com/themes/genesis/) • Thesis Framework (http://diythemes.com/) • Kirki WordPress Customizer – фреймворк, существенно расширяющий WordPress Customizer API (http://kirki.org/) • http://underscores.me – базовый скелет для построения тем Фреймворки для WordPress
  • 29. Структура WordPress Функциональность сайта на WordPress может быть существенно расширена за счет использования API (Application Programming Interface, https://codex.wordpress.org/WordPress_APIs). Доступные API: • Dashboard Widgets API – API для создания виджетов в панели управления WordPress • Database API – набор интерфейсов для работы с базой данных WordPress, состоит из 3-х API: • Options API – API для работы с настройками плагина или темы (Options). Всё, что хранится в таблице wp_options • Transients API – аналог Options API, но только для временной информации. Используется обычно при кэшировании данных. • Metadata API – API для хранения мета-данных, используется для комментариев, записей или пользователей. Всё, что хранится в таблицах wp_commentmeta, wp_postmeta и wp_usermeta Обзор API WordPress
  • 30. Структура WordPress И еще немного WordPress API: • HTTP API – API для работы с HTTP-запросами. Используется для получения или отправки информации с/на удаленных серверов; • File Header API – используется для получения заголовков из файлов тем и плагинов WP; • Filesystem API – изначально создан для автообновления файлов WP, а также плагинов и тем, но в настоящее время используется для всех файловых операций внутри WordPress; • Plugin API – API для разработчиков плагинов, состоит из хуков (hooks), событий (actions) и фильтров (filters): • События используются для объявления каких-либо функций, подменяющих или дополняющих стандартные действия; • Фильтры используются для обработки данных, полученных в результате какого-либо события; • Хуки используются для перехвата каких либо действий CMS, правило простое – сначала создаем событие, потом подключаем его к какому-либо действию с помощью хука. • Подробно и на русском о создании плагинов: http://easy-code.ru/lesson/building-wordpress-plugin-part-one Обзор API WordPress
  • 31. Структура WordPress Это уже почти все API: • Quicktags API – используется для добавления кнопок к стандартному редактору WordPress; • Rewrite API – используется для изменения стандартного режима ЧПУ WordPress, незаменим при создании Custom Post Types; • Settings API – существенно упрощает работу с настройками тем и плагинов, т.к. отвечает за вывод элементов интерфейса и сохранение настроек в БД; • Shortcode API – API для создания шорткодов. Шорткод – это код, который вставляется прямо в запись (как вариант – в код темы), вызывает функцию и передает ей ряд параметров; • Theme Modification API – позволяет работать с модификациями темы как с опциями WordPress. Хорошо работает в связке с WordPress Theme Customizer API. • Theme Customization API – используется для настроек темы с помощью стандартного интерфейса "Appearance" → "Customize". Подробно и на русском: http://uwebdesign.ru/wordpress-customizer/ Обзор API WordPress
  • 32. Структура WordPress Все, точно последние API: • Widgets API – API для создания, сохранения и вывода виджетов; • XML-RPC WordPress API – API для работы с интерфейсом XML RPC, позволяет удаленно получать и отправлять данные (записи, таксономии и т.д.) WordPress. Отдельно упомяну про WordPress REST API – в настоящее время он не является полноценным официальным API и находится в разработке. Если говорить кратко – это интерфейс для работы с данными WordPress вне стандартной админки WordPress. Или, что ещё более крышесносяще – это интерфейс для работы с любыми данными в админке WordPress. На этом, пожалуй, все о WordPress API :) Обзор API WordPress
  • 33. Немного о безопасности WordPress WordPress, как и все, что создано одним человеком, другим человеком может быть взломана. Но многие проблемы можно предотвратить заранее: • Рекомендуется устанавливать и использовать плагины, использующие различные методы защиты от спама, например, Akismet или плагины с капчей; • Рекомендуется отключать pingbacks и trackbacks; • Рекомендуется отключать ссылки в комментариях или включать обязательную модерацию таких ссылок; • Рекомендуется регулярно обновлять WordPress и все плагины до последних версий; • Для защиты формы логина от bruteforce-атаки не придумали ничего лучше, чем пароль на папку wp-admin в .htaccess (https://wpcafe.org/hacks/kak-zashhitit-parolem-dostup-k-papke- wp-admin-v-wordpress/)
  • 34. Недостатки WordPress • Невысокое качество тем и плагинов на wordpress.org, потенциально большое количество уязвимостей; • Привлекательность для спаммеров и хакеров из-за высокой распространенности; • Поддержка кода, написанного по устаревшим стандартам; • Требовательность к ресурсам – решается с помощью кэширования; • Бессмысленный WP Cron, что решается с помощью define('DISABLE_WP_CRON', 'true') в wp-config.php; • Нарезка изображений, что решается с помощью https://wordpress.org/plugins/otf-regenerate-thumbnails/; • Генерация множества ненужных адресов и дублей контента, что решается с помощью https://wordpress.org/plugins/wordpress-seo/.
  • 35. Перспективы разработчика WordPress • Фриланс – наибольшего успеха можно добиться на англоязычных биржах типа upwork.com, но начинать можно, имея минимальные знания CMS и с русскоязычных бирж типа fl.ru; • Работа в веб-студии – можно без труда найти работу в офисе в любом более-менее крупном городе или удаленную работу; • Разработка собственных продуктов – плагинов и тем и их последующая продажа.
  • 36. Благодарю за внимание! Жду ваших вопросов.