Как опубликовать свою тему в директорию wordpress

58
Как опубликовать свою тему в директорию WordPress Дмитрий Майоров / www.themepatio.com WordCamp Moscow 2016

Upload: dmitry-mayorov

Post on 15-Apr-2017

446 views

Category:

Internet


5 download

TRANSCRIPT

Page 1: Как опубликовать свою тему в директорию WordPress

Как опубликоватьсвою тему в директориюWordPress

Дмитрий Майоров / www.themepatio.com

WordCamp Moscow 2016

Page 2: Как опубликовать свою тему в директорию WordPress
Page 3: Как опубликовать свою тему в директорию WordPress

themepatio.com/themes/maker

Page 4: Как опубликовать свою тему в директорию WordPress
Page 5: Как опубликовать свою тему в директорию WordPress

Зачем это делать?

Page 6: Как опубликовать свою тему в директорию WordPress

Зачем выпускать тему

- Обратная связь

- Прокачать свои навыки

- Делиться хорошо

Page 7: Как опубликовать свою тему в директорию WordPress
Page 8: Как опубликовать свою тему в директорию WordPress

1. GPL

Page 9: Как опубликовать свою тему в директорию WordPress

Принципы лицензии

- Использовать для любых целей

- Изучать исходный код

- Изменять исходный код

- Распространять без ограничений

Page 10: Как опубликовать свою тему в директорию WordPress

Как сделать тему GPL-friendly?

Page 11: Как опубликовать свою тему в директорию WordPress

/*Theme Name: MakerAuthor: ThemePatioText Domain: makerLicense: GNU GPL v2 or laterLicense URI: http://www.gnu.org/licenses/gpl-2.0.html

Указать лицензию в style.css

Page 12: Как опубликовать свою тему в директорию WordPress

=== Maker ===Contributors: iamdmitrymayorovVersion: 0.2.0License: GNU GPL v2 or laterLicense URI: http://www.gnu.org/licenses/gpl-2.0.htmlTags: black, gray, red, white, dark, light,

Указать лицензию в readme.txt

Page 13: Как опубликовать свою тему в директорию WordPress

TypiconsAuthor: Stephen HutchingsLicense: SIL (http://scripts.sil.org/OFL)URL: http://typicons.com/

Используйте GPL ресурсы

Page 14: Как опубликовать свою тему в директорию WordPress

Chair & TableAuthor: Jordan SanchezLicence: CC0 1.0URL: https://unsplash.com/photos/KyB-Eo4xS_c

Используйте GPL картинки

Page 15: Как опубликовать свою тему в директорию WordPress

Проверить совместимостьwww.gnu.org/licenses/license-list.en.html

#GPLCompatibleLicenses

Page 16: Как опубликовать свою тему в директорию WordPress

2. Не начинайте с нуля

Page 17: Как опубликовать свою тему в директорию WordPress

Underscores (_s)underscores.me

Page 18: Как опубликовать свою тему в директорию WordPress

Componentscomponents.underscores.me

Page 19: Как опубликовать свою тему в директорию WordPress

3. Требования

Page 20: Как опубликовать свою тему в директорию WordPress

<head>...<script src=’theme.js’></script>...</head>

3.1 Не встраивайте стили и скрипты

Page 21: Как опубликовать свою тему в директорию WordPress

wp_enqueue_script( ‘maker-custom’, get_template_directory_uri() .‘theme.js’,);

functions.php

Page 22: Как опубликовать свою тему в директорию WordPress

wp_enqueue_script( ‘jquery’ );

functions.php

Page 23: Как опубликовать свою тему в директорию WordPress

Список библиотек и инструментовв ядре WordPressdeveloper.wordpress.org/reference/functions/

wp_enqueue_script/

Page 24: Как опубликовать свою тему в директорию WordPress

3.2 Используйте префиксы

- Функции

- Классы

- События и фильтры

- Глобальные переменные

- Записи в БД

Page 25: Как опубликовать свою тему в директорию WordPress

function output() { // Код функции.}

Плохой пример

Page 26: Как опубликовать свою тему в директорию WordPress
Page 27: Как опубликовать свою тему в директорию WordPress

function maker_entry_meta() { // Код функции.}

Хороший пример

Page 28: Как опубликовать свою тему в директорию WordPress

3.3 Валидация ввода, экранирование вывода

Page 29: Как опубликовать свою тему в директорию WordPress

5 000 000 / 50 = 100 000 руб/м2

Page 30: Как опубликовать свою тему в директорию WordPress

договорн. / 50 = ?

Page 31: Как опубликовать свою тему в директорию WordPress
Page 32: Как опубликовать свою тему в директорию WordPress
Page 33: Как опубликовать свою тему в директорию WordPress

sanitize_text_field( $input )

Валидация ввода

Page 34: Как опубликовать свою тему в директорию WordPress

$wp_customize->add_setting( ‘footer’, array( ‘sanitize_callback’ => ‘sanitize_text_field’,) );

Валидация ввода

Page 35: Как опубликовать свою тему в директорию WordPress

esc_html( $output );

Экранирование вывода

Page 36: Как опубликовать свою тему в директорию WordPress

// Get the data.$prefix_name = get_theme_mod( ‘footer’ );

// Escape as a late as possible and display.echo esc_html( $prefix_name );

Экранирование вывода

Page 37: Как опубликовать свою тему в директорию WordPress

Подробнееcodex.wordpress.org/Data_Validation

Page 38: Как опубликовать свою тему в директорию WordPress

3.4 Переводимые строки

Page 39: Как опубликовать свою тему в директорию WordPress

echo ‘Комментарии’;

Шаблон для клиента

Page 40: Как опубликовать свою тему в директорию WordPress

echo __( ‘Comments’, ‘themeslug’ );

Тема для директории

Page 41: Как опубликовать свою тему в директорию WordPress

_e( ‘Comments’, ‘themeslug’ );

Тема для директории

Page 42: Как опубликовать свою тему в директорию WordPress

esc_html_e( ‘Comments’, ‘themeslug’ );

Тема для директории

Page 43: Как опубликовать свою тему в директорию WordPress

Подробнее об I18Ncodex.wordpress.org/I18n_for_WordPress_Developers

Page 44: Как опубликовать свою тему в директорию WordPress

3.5 Территория тем и плагинов

Page 45: Как опубликовать свою тему в директорию WordPress

Подробнее о требованияхmake.wordpress.org/themes/handbook/

review/required

Page 46: Как опубликовать свою тему в директорию WordPress

4. Учитесь у других

Page 47: Как опубликовать свою тему в директорию WordPress

4.1. Изучайте стандартные темы

Page 48: Как опубликовать свою тему в директорию WordPress

5. Тестирование

Page 49: Как опубликовать свою тему в директорию WordPress

define( ‘WP_DEBUG’, true );

5.1 wp-config.php

Page 50: Как опубликовать свою тему в директорию WordPress

5.2 Theme Checkwordpress.org/plugins/theme-check

Page 51: Как опубликовать свою тему в директорию WordPress
Page 52: Как опубликовать свою тему в директорию WordPress

5.3 Codesniffer with WPCSgithub.com/WordPress-Coding-Standards/

WordPress-Coding-Standards

Page 53: Как опубликовать свою тему в директорию WordPress

5.4 Theme Unit Testcodex.wordpress.org/Theme_Unit_Test

Page 54: Как опубликовать свою тему в директорию WordPress

5.5 Monster Widgetwordpress.org/plugins/theme-check

Page 55: Как опубликовать свою тему в директорию WordPress

5.6 Настоящий контент

Page 56: Как опубликовать свою тему в директорию WordPress

6. Учавствуйте в проверке тем

Page 57: Как опубликовать свою тему в директорию WordPress

7. Не усложняйте

Page 58: Как опубликовать свою тему в директорию WordPress

Вопросы?Дмитрий Майоров / www.themepatio.com

WordCamp Moscow 2016