Enviar pesquisa
Carregar
Looking into WordPress Core, WordCamp Russia 2015
•
0 gostou
•
2,259 visualizações
Sergey Biryukov
Seguir
https://russia.wordcamp.org/2015/
Leia menos
Leia mais
Internet
Vista de apresentação de diapositivos
Denunciar
Compartilhar
Vista de apresentação de diapositivos
Denunciar
Compartilhar
1 de 37
Baixar agora
Baixar para ler offline
Recomendados
Everything You Need to Know About WP_Query, WordCamp Russia 2014
Everything You Need to Know About WP_Query, WordCamp Russia 2014
Sergey Biryukov
Contributing to WordPress, WordCamp Russia 2013
Contributing to WordPress, WordCamp Russia 2013
Sergey Biryukov
i18n for Plugin and Theme Developers, WordCamp Moscow 2016
i18n for Plugin and Theme Developers, WordCamp Moscow 2016
Sergey Biryukov
WordPress.org Under the Hood, WordCamp Moscow 2017
WordPress.org Under the Hood, WordCamp Moscow 2017
Sergey Biryukov
Вёрстка WordPress тем - WP Kharkiv Meetup #1
Вёрстка WordPress тем - WP Kharkiv Meetup #1
dima_kuzovlev
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
PVasili
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
2ГИС Технологии
Andrew Stepanov, Epam Systems "Zend Framework Projects Optimization by Andrew...
Andrew Stepanov, Epam Systems "Zend Framework Projects Optimization by Andrew...
EPAM Systems
Recomendados
Everything You Need to Know About WP_Query, WordCamp Russia 2014
Everything You Need to Know About WP_Query, WordCamp Russia 2014
Sergey Biryukov
Contributing to WordPress, WordCamp Russia 2013
Contributing to WordPress, WordCamp Russia 2013
Sergey Biryukov
i18n for Plugin and Theme Developers, WordCamp Moscow 2016
i18n for Plugin and Theme Developers, WordCamp Moscow 2016
Sergey Biryukov
WordPress.org Under the Hood, WordCamp Moscow 2017
WordPress.org Under the Hood, WordCamp Moscow 2017
Sergey Biryukov
Вёрстка WordPress тем - WP Kharkiv Meetup #1
Вёрстка WordPress тем - WP Kharkiv Meetup #1
dima_kuzovlev
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
PVasili
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
2ГИС Технологии
Andrew Stepanov, Epam Systems "Zend Framework Projects Optimization by Andrew...
Andrew Stepanov, Epam Systems "Zend Framework Projects Optimization by Andrew...
EPAM Systems
Wordpress theme
Wordpress theme
Александр Пермяков
инструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэл
PVasili
Николай Сиварев "Приручая сайты"
Николай Сиварев "Приручая сайты"
Yandex
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Ontico
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
CodeFest
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
2ГИС Технологии
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Ontico
External Widgets Performance
External Widgets Performance
Ecommerce Solution Provider SysIQ
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordCamp Kyiv
Codeception UATestingDays
Codeception UATestingDays
davertmik
Python и Django – платформа для фрилансера
Python и Django – платформа для фрилансера
Alexander Koshelev
Стабильность WebGL приложений / Кирилл Дмитренко (Яндекс)
Стабильность WebGL приложений / Кирилл Дмитренко (Яндекс)
Ontico
Alex baumgertner bem_in_small_projects
Alex baumgertner bem_in_small_projects
Alexander Baumgertner
практическое использование модуля Panels богуцкий виктор
практическое использование модуля Panels богуцкий виктор
drupalconf
Компоненты Фронтенда - HotCode 2013
Компоненты Фронтенда - HotCode 2013
Andrey Listochkin
Modules and assembling of JavaScript (in russian)
Modules and assembling of JavaScript (in russian)
Mikhail Davydov
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Yandex
Kranonit s16 (python). dmitry furzenko
Kranonit s16 (python). dmitry furzenko
Krivoy Rog IT Community
Фронтенд разработка без боли
Фронтенд разработка без боли
Anton Piskunov
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
SQALab
Моделирование контента в WordPress
Моделирование контента в WordPress
Anna Ladoshkina
Практическая доступность с WordPress
Практическая доступность с WordPress
Anna Ladoshkina
Mais conteúdo relacionado
Mais procurados
Wordpress theme
Wordpress theme
Александр Пермяков
инструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэл
PVasili
Николай Сиварев "Приручая сайты"
Николай Сиварев "Приручая сайты"
Yandex
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Ontico
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
CodeFest
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
2ГИС Технологии
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Ontico
External Widgets Performance
External Widgets Performance
Ecommerce Solution Provider SysIQ
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordCamp Kyiv
Codeception UATestingDays
Codeception UATestingDays
davertmik
Python и Django – платформа для фрилансера
Python и Django – платформа для фрилансера
Alexander Koshelev
Стабильность WebGL приложений / Кирилл Дмитренко (Яндекс)
Стабильность WebGL приложений / Кирилл Дмитренко (Яндекс)
Ontico
Alex baumgertner bem_in_small_projects
Alex baumgertner bem_in_small_projects
Alexander Baumgertner
практическое использование модуля Panels богуцкий виктор
практическое использование модуля Panels богуцкий виктор
drupalconf
Компоненты Фронтенда - HotCode 2013
Компоненты Фронтенда - HotCode 2013
Andrey Listochkin
Modules and assembling of JavaScript (in russian)
Modules and assembling of JavaScript (in russian)
Mikhail Davydov
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Yandex
Kranonit s16 (python). dmitry furzenko
Kranonit s16 (python). dmitry furzenko
Krivoy Rog IT Community
Фронтенд разработка без боли
Фронтенд разработка без боли
Anton Piskunov
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
SQALab
Mais procurados
(20)
Wordpress theme
Wordpress theme
инструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэл
Николай Сиварев "Приручая сайты"
Николай Сиварев "Приручая сайты"
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
External Widgets Performance
External Widgets Performance
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
Codeception UATestingDays
Codeception UATestingDays
Python и Django – платформа для фрилансера
Python и Django – платформа для фрилансера
Стабильность WebGL приложений / Кирилл Дмитренко (Яндекс)
Стабильность WebGL приложений / Кирилл Дмитренко (Яндекс)
Alex baumgertner bem_in_small_projects
Alex baumgertner bem_in_small_projects
практическое использование модуля Panels богуцкий виктор
практическое использование модуля Panels богуцкий виктор
Компоненты Фронтенда - HotCode 2013
Компоненты Фронтенда - HotCode 2013
Modules and assembling of JavaScript (in russian)
Modules and assembling of JavaScript (in russian)
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Kranonit s16 (python). dmitry furzenko
Kranonit s16 (python). dmitry furzenko
Фронтенд разработка без боли
Фронтенд разработка без боли
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
Автоматизируем тестирование UI с Ruby, Cucumber и Selenium
Destaque
Моделирование контента в WordPress
Моделирование контента в WordPress
Anna Ladoshkina
Практическая доступность с WordPress
Практическая доступность с WordPress
Anna Ladoshkina
Managing a Local WordPress Community, WordCamp Europe 2016
Managing a Local WordPress Community, WordCamp Europe 2016
Sergey Biryukov
Composer и разработка сайтов на WordPress
Composer и разработка сайтов на WordPress
Anna Ladoshkina
Ведение бизнеса на основе WordPress
Ведение бизнеса на основе WordPress
Andrey Ovsyannikov
Using Composer to create manageable WordPress websites
Using Composer to create manageable WordPress websites
Anna Ladoshkina
i18n for Plugin and Theme Developers, WordCamp Milano 2016
i18n for Plugin and Theme Developers, WordCamp Milano 2016
Sergey Biryukov
Destaque
(7)
Моделирование контента в WordPress
Моделирование контента в WordPress
Практическая доступность с WordPress
Практическая доступность с WordPress
Managing a Local WordPress Community, WordCamp Europe 2016
Managing a Local WordPress Community, WordCamp Europe 2016
Composer и разработка сайтов на WordPress
Composer и разработка сайтов на WordPress
Ведение бизнеса на основе WordPress
Ведение бизнеса на основе WordPress
Using Composer to create manageable WordPress websites
Using Composer to create manageable WordPress websites
i18n for Plugin and Theme Developers, WordCamp Milano 2016
i18n for Plugin and Theme Developers, WordCamp Milano 2016
Semelhante a Looking into WordPress Core, WordCamp Russia 2015
TestGuy - эмулируем вашего тестировщика
TestGuy - эмулируем вашего тестировщика
davertmik
Yii2
Yii2
Noveo
всплывающее окно при закрытии сайта
всплывающее окно при закрытии сайта
Olga Pirozhenko
WordPress auto-install: просто о сложном
WordPress auto-install: просто о сложном
Vladimir Samoletov
WP Kitchen Meetup Spring 2015 - Владимир Самолетов: WordPress auto-install: п...
WP Kitchen Meetup Spring 2015 - Владимир Самолетов: WordPress auto-install: п...
WordCamp Kyiv
Страх и ненависть в исходном коде
Страх и ненависть в исходном коде
Kolya Korobochkin
Первые шаги после установки WordPress
Первые шаги после установки WordPress
Darja Kruzhkova
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 1)
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 1)
ZFConf Conference
Vue.js и его брат-близнец Vue-server.js / Андрей Солодовников (НГС)
Vue.js и его брат-близнец Vue-server.js / Андрей Солодовников (НГС)
Ontico
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
DevDay
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
it-people
Разработка через тестирование в Python и Django #pyconru
Разработка через тестирование в Python и Django #pyconru
JetStyle
Pycon Russia 2013 - Разработка через тестирование в Python и Django
Pycon Russia 2013 - Разработка через тестирование в Python и Django
Ilya Shalyapin
Илья Шаляпин, Евгений Генералов: Разработка через тестирование в Python и Djn...
Илья Шаляпин, Евгений Генералов: Разработка через тестирование в Python и Djn...
it-people
WP Kitchen Meetup Spring 2015 - Виктор Кулебякин: WordPress JavaScript Utils
WP Kitchen Meetup Spring 2015 - Виктор Кулебякин: WordPress JavaScript Utils
WordCamp Kyiv
Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0
matroskin1980
DrupalCamp Kyiv 2011. Views - стандарт вывода списка данных. Расширение Views...
DrupalCamp Kyiv 2011. Views - стандарт вывода списка данных. Расширение Views...
Viktor Likin
Основые безопасности WordPress
Основые безопасности WordPress
Konstantin Kovshenin
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
Igor Sazonov
Web весна 2012 лекция 7
Web весна 2012 лекция 7
Technopark
Semelhante a Looking into WordPress Core, WordCamp Russia 2015
(20)
TestGuy - эмулируем вашего тестировщика
TestGuy - эмулируем вашего тестировщика
Yii2
Yii2
всплывающее окно при закрытии сайта
всплывающее окно при закрытии сайта
WordPress auto-install: просто о сложном
WordPress auto-install: просто о сложном
WP Kitchen Meetup Spring 2015 - Владимир Самолетов: WordPress auto-install: п...
WP Kitchen Meetup Spring 2015 - Владимир Самолетов: WordPress auto-install: п...
Страх и ненависть в исходном коде
Страх и ненависть в исходном коде
Первые шаги после установки WordPress
Первые шаги после установки WordPress
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 1)
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 1)
Vue.js и его брат-близнец Vue-server.js / Андрей Солодовников (НГС)
Vue.js и его брат-близнец Vue-server.js / Андрей Солодовников (НГС)
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
Разработка через тестирование в Python и Django #pyconru
Разработка через тестирование в Python и Django #pyconru
Pycon Russia 2013 - Разработка через тестирование в Python и Django
Pycon Russia 2013 - Разработка через тестирование в Python и Django
Илья Шаляпин, Евгений Генералов: Разработка через тестирование в Python и Djn...
Илья Шаляпин, Евгений Генералов: Разработка через тестирование в Python и Djn...
WP Kitchen Meetup Spring 2015 - Виктор Кулебякин: WordPress JavaScript Utils
WP Kitchen Meetup Spring 2015 - Виктор Кулебякин: WordPress JavaScript Utils
Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0
DrupalCamp Kyiv 2011. Views - стандарт вывода списка данных. Расширение Views...
DrupalCamp Kyiv 2011. Views - стандарт вывода списка данных. Расширение Views...
Основые безопасности WordPress
Основые безопасности WordPress
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
Web весна 2012 лекция 7
Web весна 2012 лекция 7
Looking into WordPress Core, WordCamp Russia 2015
1.
Почему стоит участвовать в
разработке WordPress Сергей Бирюков WordCamp Russia 2015
2.
Обо мне Сергей Бирюков ●
Разработчик ядра WordPress core.trac.wordpress.org ● Локализатор WP в России ru.wordpress.org sergeybiryukov.ru @SergeyBiryukov
3.
Зачем смотреть, как устроен
WordPress?
4.
Как следить за разработкой
WordPress?
5.
● make.wordpress.org/core/ ● wp-svn ●
wp-trac
6.
7.
wp-admin/edit-form-advanced.php wp-admin/includes/meta-boxes.php wp-includes/default-filters.php
8.
grep, ack, cmd-f
и т.д.
9.
PhpStorm 8
10.
PHPXref
11.
Codex
12.
developer.wordpress.org
13.
14.
add_action( 'publish_post' )
15.
add_filter( 'all', function(
$stuff ) { echo '<code>' . current_filter() . '</code>'; return $stuff; });
16.
add_filter( 'gettext', function( $new,
$old, $domain ) { if ( 'Set featured image' === $old ) { if ( 'company' === get_post_type() ) { $new = __( 'Set company logo', 'mydomain' ); } } return $new; }, 10, 3 );
17.
add_filter( 'admin_post_thumbnail_html', function( $output,
$post_id ) { if ( 'company' === get_post_type( $post_id ) ) { $output = str_replace( __( 'Set featured image' ), 'Select / Upload a company logo', $output ); $output = str_replace( __( 'Remove featured image' ), 'Remove company logo', $output ); } return $output; }, 10, 2 );
18.
Для фильтров и
действий важен контекст
19.
apply_filters( 'media_view_strings', $strings,
$post )
20.
remove_post_type_support()
21.
Экран редактирования — одна
большая форма
22.
<textarea name="excerpt" id="attachment_caption"> <?php
echo $post->post_excerpt; ?> </textarea>
23.
Произвольные таксономии
24.
add_action( 'save_post', function(
$post_id, $post ) { // Не забываем проверить nonce и привилегии if ( isset( $_POST['my_tax_ui'] ) ) { // array_map() $terms = $_POST['my_tax_ui']; wp_set_object_terms( $post_id, $terms, 'my_tax' ); } else { wp_delete_object_term_relationships( $post_id, 'my_tax' ); } }, 10, 2 );
25.
26.
<select name="tax_input['my_tax'][]">
27.
add_action( 'save_post', function(
$post_id, $post ) { // Не забываем проверить nonce и привилегии If ( ! isset( $_POST['my_tax_ui'] ) ) { wp_delete_object_term_relationships( $post_id, 'my_tax' ); } }, 10, 2 );
28.
<input type="hidden" name="tax_input['my_tax'][]" value="0" />
29.
30.
add_rewrite_endpoint( 'export', EP_PAGES
) site.com/some-page/export/ site.com/some-page/export/json/
31.
get_query_var( 'export' )
32.
add_filter( 'request', function(
$vars ) { if ( isset( $vars['export'] ) && empty( $vars['export'] ) ) { $vars['export'] = '1'; } return $vars; });
33.
get_query_var( 'export', null
)
34.
Сложные запросы
35.
'tax_query' => array( 'relation'
=> 'AND', array( 'taxonomy' => 'age', 'terms' => array( '5' ), ), array( 'relation' => 'OR', array( 'taxonomy' => 'academic_skills', 'terms' => array( 'reading', 'writing' ), ), array( 'taxonomy' => 'skills', 'terms' => array( 'focus', 'flexibility' ), ), ), )
36.
term_id + taxonomy
= term_taxonomy_id
37.
sergeybiryukov.ru @SergeyBiryukov Спасибо! Вопросы?
Baixar agora