Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

641 views

Published on

Какую можно извлечь пользу из публикации темы, как не допустить простых ошибок и что можно сделать, чтобы ускорить процесс разработки и публикации.

Published in: Internet
  • Be the first to comment

  • Be the first to like this

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

  1. 1. Как опубликовать свою тему в директорию WordPress Дмитрий Майоров / www.themepatio.com WordCamp Moscow 2016
  2. 2. themepatio.com/themes/maker
  3. 3. Зачем это делать?
  4. 4. Зачем выпускать тему -- Обратная связь -- Прокачать свои навыки -- Делиться хорошо
  5. 5. 1. GPL
  6. 6. Принципы лицензии -- Использовать для любых целей -- Изучать исходный код -- Изменять исходный код -- Распространять без ограничений
  7. 7. Как сделать тему GPL-friendly?
  8. 8. /* Theme Name: Maker Author: ThemePatio Text Domain: maker License: GNU GPL v2 or later License URI: http://www.gnu.org/licenses/gpl-2 Указать лицензию в style.css
  9. 9. === Maker === Contributors: iamdmitrymayorov Version: 0.2.0 License: GNU GPL v2 or later License URI: http://www.gnu.org/licenses/gpl- Tags: black, gray, red, white, dark, l Указать лицензию в readme.txt
  10. 10. Typicons Author: Stephen Hutchings License: SIL (http://scripts.sil.org/OFL) URL: http://typicons.com/ Используйте GPL ресурсы
  11. 11. Chair & Table Author: Jordan Sanchez Licence: CC0 1.0 URL: https://unsplash.com/photos/KyB-Eo4xS Используйте GPL картинки
  12. 12. Проверить совместимость www.gnu.org/licenses/license-list.en.html #GPLCompatibleLicenses
  13. 13. 2. Не начинайте с нуля
  14. 14. Underscores (_s) underscores.me
  15. 15. Components components.underscores.me
  16. 16. 3. Требования
  17. 17. <head> ... <script src=’theme.js’></script> ... </head> 3.1 Не встраивайте стили и скрипты
  18. 18. wp_enqueue_script( ‘maker-custom’, get_template_directory_uri() .‘theme.js’, ); functions.php
  19. 19. wp_enqueue_script( ‘jquery’ ); functions.php
  20. 20. Список библиотек и инструментов в ядре WordPress developer.wordpress.org/reference/functions/ wp_enqueue_script/
  21. 21. 3.2 Используйте префиксы -- Функции -- Классы -- События и фильтры -- Глобальные переменные -- Записи в БД
  22. 22. function output() { // Код функции. } Плохой пример
  23. 23. function maker_entry_meta() { // Код функции. } Хороший пример
  24. 24. 3.3 Валидация ввода, экранирование вывода
  25. 25. 5 000 000 / 50 = 100 000 руб/м2
  26. 26. договорн. / 50 = ?
  27. 27. sanitize_text_field( $input ) Валидация ввода
  28. 28. $wp_customize->add_setting( ‘footer’, array( ‘sanitize_callback’ => ‘sanitize_text_field’, ) ); Валидация ввода
  29. 29. esc_html( $output ); Экранирование вывода
  30. 30. // Get the data. $prefix_name = get_theme_mod( ‘footer’ ); // Escape as a late as possible and display. echo esc_html( $prefix_name ); Экранирование вывода
  31. 31. Подробнее codex.wordpress.org/Data_Validation
  32. 32. 3.4 Переводимые строки
  33. 33. echo ‘Комментарии’; Шаблон для клиента
  34. 34. echo __( ‘Comments’, ‘themeslug’ ); Тема для директории
  35. 35. _e( ‘Comments’, ‘themeslug’ ); Тема для директории
  36. 36. esc_html_e( ‘Comments’, ‘themeslug’ ); Тема для директории
  37. 37. Подробнее об I18N codex.wordpress.org/I18n_for_WordPress_Developers
  38. 38. 3.5 Территория тем и плагинов
  39. 39. Подробнее о требованиях make.wordpress.org/themes/handbook/ review/required
  40. 40. 4. Учитесь у других
  41. 41. 4.1. Изучайте стандартные темы
  42. 42. 5. Тестирование
  43. 43. define( ‘WP_DEBUG’, true ); 5.1 wp-config.php
  44. 44. 5.2 Theme Check wordpress.org/plugins/theme-check
  45. 45. 5.3 Codesniffer with WPCS github.com/WordPress-Coding-Standards/ WordPress-Coding-Standards
  46. 46. 5.4 Theme Unit Test codex.wordpress.org/Theme_Unit_Test
  47. 47. 5.5 Monster Widget wordpress.org/plugins/theme-check
  48. 48. 5.6 Настоящий контент
  49. 49. 6. Учавствуйте в проверке тем
  50. 50. 7. Не усложняйте
  51. 51. Вопросы? Дмитрий Майоров / www.themepatio.com WordCamp Moscow 2016

×