Этой статьей я открываю небольшой тренинг по написанию расширений для WooCommerce. Чтобы не писать зря мы сделаем Telegram бот для WooCommerce.

Давно хотел написать Telegram бота для своего Интернет магазина.Я хочу получать всю информацию о заказах в свой telegram и может быть реализовать какие то функции по управлению заказами.
Вначале статьи приведу несколько ссылок на официальную документацию :
- Bot Telegram — https://telegram.org/blog/bot-revolution
- WooCommerce расширения — https://docs.woocommerce.com/document/create-a-plugin/
От слов к делу. Создадим начальный каркас нашего плагина. Откроем PHPStorm или любой другой привычный Вам редактор PHP , создадим файл woo-telegram.php и заполним его.
Вот так это может выглядеть :
/* Plugin Name: WooCommerce -> Telegram Description: Плагин интеграции WooCommerce c Telegram. */ if ( ! defined('ABSPATH')) { exit; } if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) { function wc_telegram_add_integration($integrations) { global $woocommerce; if (is_object($woocommerce)) { include_once( 'includes/telegram.php' ); $integrations[] = 'Telegram'; } return $integrations; } add_filter('woocommerce_integrations', 'wc_telegram_add_integration', 10); }
Вначале идут описание плагина, стандартные проверки на прямой вызов скрипта и существование плагина WooCommerce. Дальше пишем функцию wc_telegram_add_integration смысл которой создать нашу интеграцию в WooCommerce. В ней же определяем где будет лежать наш основной код (includes/telegram.php). Завершаем все стандартным фильтром add_filter который регистрирует нашу функцию в WooCommerce.

В принципе наш вновь созданный Telegram бот для WooCommerce уже имеет вид плагина. Разместив его в папке wp-content/plugins вы увидите его в списке плагинов и даже сможете активировать/деактивировать его.
Но в WooCommerce->Настройки->Интеграции Вы его пока не увидите. Исправим это и напишем минимальную обвязку плагина. Открываем наш файл includes/telegram.php и добавляем в него:
<?php if (!defined('ABSPATH')) { exit; } class Telegram extends WC_Integration { public function __construct() { $this->id = "woo-telegram"; $this->method_title = "Телеграм бот для WooCommerce"; $this->method_description = "Плагин связывает WooCommerce c Telegram ботом."; } }
В начале опять проверка на прямой запуск плагина, дальше мы создаем наш класс Telegram и наследуем его от встроенного класса WC_Integration. Все плагины для WooCommerce интеграций должны наследоваться от этого класса. Заполняем минимально необходимой информацией. Где id это идентификатор нашего класса, method_title — Наименование которое будет отображаться в настройках а method_description описание плагина. Оно также будет отображаться в настройках плагина.

Активируйте плагин , перейдите на страницу Интеграция настроек WooCommerce и Вы увидите , что наш плагин уже существует и отображает всю информацию которую мы в него пока заложили. На этом закончим первую часть, в следующей части мы зарегистрируем нашего бота в телеграм, добавим в него настроек и подумаем над минимальным функционалом.
Спасибо.
[…] писать Telegram bot для Woocommerce. В первой и второй части мы сделали каркас плагина, […]
Уже есть плагин бесплатный «Sell via Telegram for WooCommerce»
так это статья не рекламирует покупку плагина , а предлагает самому написать его )