Blogovod, Envato API

Blogovod, Envato API

Както вероятно вече знаете, WordPress има механизъм, който открива, че плъгините, теми и самата сърцевина WordPress са актуализирани. Уведоми потребителя, когато те са налице, той получава информация за тези актуализации и автоматично ги инсталирате. Всичко това обаче е само плъгините и шаблони, поставени в хранилища WordPress.

1C: Enterprise - легендарният софтуерната компания "1C". предназначен за автоматизиране на дейността на предприятието.

Първоначално "1C: Enterprise" е проектиран, за да автоматизирате счетоводство и управленско счетоводство (включително заплати и управление на човешките ресурси), но днес този продукт установи неговото използване в области, свързани не само с решението на счетоводни задачи.

Технологичната платформа "1С: Предприятие" предоставя интерфейс на базата данни. Използвани база от DBF файлове в 7.7 формат със собствен 1CD версия 8.0 или Microsoft SQL Server СУБД и да е от тези версии. В допълнение, версия 8.1 за съхранение на данни е възможно в PostgreSQL и IBM DB2. и версия 8.2 се добавя и Oracle. Платформата има вътрешен език за програмиране, който предвижда, освен достъп до данните, оперативна съвместимост с други приложения чрез OLE и DDE. версии 7.7, 8.0 и 8.1 - чрез COM-съединение.

Малко за автоматично актуализиране

WordPress е една отлична система за автоматично обновяване, което ви уведомява, че на разположение новата версия на ядрото на WordPress, инсталирана плъгини или теми. Уведомления се показват в лентата на администратор, както и добавките на страницата, където можете да получите повече информация за новата версия.

За да инсталирате новата версия, просто трябва да натиснете "Автоматично актуализиране". WordPress автоматично ще изтеглите новата опаковка, тя разопакова и да замени старите файлове с нови. Не е необходимо да използвате FTP за качване на файлове и премахване.

Blogovod, Envato API

Има и специална страница за актуализацията, която е на разположение в менюто "Console". Това е полезно, когато искате да прекарате сериозно разширен плъгини, вместо да актуализирате всеки един от тях поотделно. Тя също има бутон "Проверка отново", можете да използвате, за да принуди проверката за нови актуализации. По подразбиране, WordPress го прави на всеки 12 часа.

Blogovod, Envato API

От двете страници (Plugins Актуализация) Можете да видите подробна информация за новата версия, като щракнете върху "Детайли" или "Преглед на информацията за версията H.H.H".

Blogovod, Envato API

Планът за работа

Всички по-горе характеристики са предоставени от WordPress сървъра, т.е. при поискване от блога си wordpress.org, сървърът връща цялата необходима информация. Envato сървъра също ви позволява да получите цялата необходима информация за актуализацията на плъг-ин, които се продават на CodeCanyon (приставки Envato Market), но в различна структура от данни (различни от WordPress). В допълнение, скриптове WordPress няма никой, който да е отговорен за получаване на информация от всеки сървър, различен от WordPress. Затова нашата задача е да:

И трите точка план ние може да реализира с помощта на WordPress три филтъра, а именно pre_set_site_transient_update_plugins. plugins_api и upgrader_package_options.

подготовка на данните

Сценарият се реализира като клас (ООП), и получава две стартиране параметър е необходимо за работа. По принцип, можете да промените този клас, така че получените данни са определени в класа, но този клас ще загуби своята гъвкавост.

За да се гарантира изпълнението на задачата, се нуждаем от следната информация:

  • $ Id - приставка идентификационен номер в системата Envato
  • $ Data [ 'знак'] - личен ключ плъгин на купувача (Personal Token)
  • $ Data [ 'версия'] - най-актуалната версия на плъгина
  • $ Data [ 'охлюв'] - псевдоним се включват (например: Сам-про-Lite)
  • $ Data [ 'pluginSlug'] - пълен псевдоним плъгин (плъгин папка + името на главния файл, например: Сам-про-Lite / Сам-про-lite.php)
  • $ Data [ 'име'] - име на плъгина

Купувач плъгин може да генерира Лична Token на Envato сайт API. Минималният набор от разрешения за ключа трябва да бъде:

Blogovod, Envato API

Минималният набор от разрешения

На строителя на плъгин приема данните под формата на два параметъра: низ $ идентификатор, както и данни масив $. След проверка, че конструктор данни определя като методи товарачи филтри клас checkUpdate. checkInfo и setUpdatePackage.

  • pre_set_site_transient_update_plugins - checkUpdate
  • plugins_api - checkInfo
  • upgrader_package_options - getUpdatePackage

Първи данни за актуализация

Тъй като вашият плъгин не е поставен в хранилище WordPress, искане за информация относно актуализирането на приставката ще остане без отговор, ако не се предприемат необходимите действия. Т.е. не се намесва в процеса на получаване на информация.

Всеки път, когато заявките WordPress хранилища за наличието на нови версии, които тя е записала в специална настройка _set_transient_update_plugins маса база данни wp_options. pre_set_transient_update_plugins филтър се нарича точно преди таблицата с параметри за запис. За да се намеси в този процес.

Филтърът минава само един параметър за обработка - масив от данни, които се записват в базата данни.

Обработка _set_transient_update_plugins рекорд

Първо, проверете наличието на множество «проверява» поле данни за присъствие. Ако е така, това означава, че WordPress е поискала и обработват данни за актуализация и сега е време да се вмъкне параметър им данни. Ако не, тогава 12:00 не се предава ... не правят нищо.

Ако времето за работа, попитайте за Envato сървър (метод помощник requestInfo клас) и сравни настоящата версия на плъгина за версията с плъгин, получени в отговор на искането. Ако сте получили повече от текущата версия, попълнете задължителните полета плъгин описание на обекта и да добавите обект в областта на «отговор» на получения масив. Всичко. Сега WordPress, знае, че приставката ни трябва да се актуализира.

«Пакет» нивата е пълен псевдоним плъгин, поради факта, че не можем да пиша линк към актуализираната плъгин файл, тъй като Тя се предлага в кратък период от време и може да не е актуална към момента на физически подобрения. Въпреки това, когато се преминава параметри, за да се актуализира, ние нямаме начин да се определи какво точно плъгина се актуализира в момента. Alias ​​ще ни помогне да се определи какво се актуализира нашата плъгин.

Що се отнася до информацията за плъгин, за да се получи Envato API от него изисква само идентификатора на плъгин (в системата за Envato Market) и частния ключ (Personal Token) на купувача:

Метод requestInfo клас

Референтните данни за структурата на данните, предавани на сайта на API Envato не винаги отговарят на действителността! Бъдете внимателни!

Ако се получи отговор на метода връща масив от данни, съдържащи информация за плъгина, които ще бъдат показани в модален прозорец "Подробности":

Blogovod, Envato API

Получаване на плъгин файл

За плъг-ин и прехвърлите файла той WordPress инсталация, за да най-доброто използване upgrader_package_options филтър. Има и други варианти (например филтър upgrader_pre_download), но най-добрият.

Както и да получи информация за плъгина, за да се получи препратка към файла плъгин е необходимо плъгин и основен купувач личен идентификационен номер. един на пълен пакет архив плъгин, а другият да файл за изтегляне, подходящ за предаване на WordPress инсталатор ще бъде получен отговор от сървъра две препратки.

URL искане плъгин файл