WordPress как на ладони
Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Пользуюсь сам и вам рекомендую!

Заголовки плагина

Заголовки плагина - это важный компонент, который сообщает WordPress, что PHP файл внутри каталога плагинов является плагином WordPress. Такие заголовки выглядят как PHP комментарий в начале главного файла. У заголовков есть свой стандарт, ниже о нет.

Возможные заголовки плагина

Заголовок плагина должен находится в основном файле плагина и только там.

Как минимум, заголовок должен содержать имя плагина:

<?php
/**
 * Plugin Name: Мой первый плагин
 */

// код плагина

В заголовке могут быть указанны и другие данные:

<?php

/**
 * Plugin Name: Название плагина
 * Description: Описание плагина желательно не очень длинное (140 символов)
 * Plugin URI:  Ссылка на страницу плагина
 * Author URI:  Ссылка на автора
 * Author:      Имя автора
 * Version:     Версия плагина, например 1.0
 *
 * Text Domain: ID перевода, указывается в load_plugin_textdomain()
 * Domain Path: Путь до файла перевода.
 * Requires at least: 2.5
 * Requires PHP: 5.4
 *
 * License:     GPL2
 * License URI: https://www.gnu.org/licenses/gpl-2.0.html
 *
 * Network:     Укажите "true" для возможности активировать плагин для сети Multisite.
 * Update URI: https://example.com/link_to_update
 */

// код плагина
Plugin Name:(обязательный)
Название плагина, которое отображается в списке плагинов в админке.
Description:
Краткое описание плагина, которое отображается в разделе Плагины в в админке. Рекомендуется не превышать 140 символов.
Version:

Номер текущей версии плагина, например, 1.0 или 1.0.3.

При установке версии имейте ввиду, что WP для сравнения версий использует функцию version_compare(). Поэтому при изменении версии убедитесь что новая версия будет выше. Например, 1.02 больше чем 1.1

Plugin URI:
Домашняя страница плагина, которая может быть на WordPress.org или на вашем собственном сайте.
Author:
Имя автора плагина. В списке может быть более одного автора.
Author URI:
Сайт автора или профиль на другом веб-сайте, например, WordPress.org.
Requires at least:
Самая низкая версия WordPress, на которой будет работать плагин. Например: 2.5.
Requires PHP:
Минимальная требуемая версия PHP. Например: 5.4.
License:
Короткое имя лицензии плагина, например GPL2. Более подробную информацию о лицензировании можно найти на WordPress.org.
License URI:
Ссылка на лицензию, например, https://www.gnu.org/licenses/gpl-2.0.html .
Text Domain:
Идентификатор перевода (домен локализации) используется в функциях локализации и в названии файла перевод mo. Подобрее смотрите цитату здесь.
Domain Path:
Нужен если файл перевода находится не в той же папке, в которой находится текущий файл. Например, .mo файл находится в папке /myplugin/languages, а файл плагина в /myplugin/myplugin.php, тогда тут указываем /languages.
Network:
Укажите "true" чтобы плагин обязательно активировался по всей сети сайтов в MU сборке WordPress. Это сделает невозможным активировать плагин для одного сайта, если активирована мультисеть.
Update URI:
URL для обновления сайта. Используется в функции wp_update_plugins(). Из домена будет создан хук update_plugins_(hostname).

Размер заголовка

Заголовок плагина разбирается функцией get_plugin_data(), которая обрабатывает только первые 8kiB (6000-8000 символов) информации, и если данные плагина получаются больше, то автору придется их уменьшить или переместить данные плагина наверх. Такое может произойти, если например, добавить данные о лицензии перед данными плаглина.

Указание лицензии плагина

Большинство плагинов WordPress опубликованы под лицензией GPL, что соответствует той же лицензии, которую использует сам WordPress. Тем не менее, есть и другие варианты. Лучше всегда четко указать, какую лицензию использует ваш плагин.

Выше было показано, что лицензию можно указать в параметр заголовка License:. Но есть еще одна распространенная практика - поместить блок лицензии под заголовками плагина в основном файле плагина.

Блок лицензии выглядит примерно так:

{Plugin Name} is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
any later version.

{Plugin Name} is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with {Plugin Name}. If not, see {URI to Plugin License}.

Объединив с заголовками плагина получим:

/**
 * Plugin Name:  Plugin Name
 * Plugin URI:   http://URI_Of_Page_Describing_Plugin_and_Updates
 * Description:  This describes my plugin in a short sentence
 * Version:      1.5
 * Author:       John Smith
 * Author URI:   http://URI_Of_The_Plugin_Author
 * License:      GPL2
 *
 * {Plugin Name} is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * any later version.
 *
 * {Plugin Name} is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with {Plugin Name}. If not, see {License URI}.
*/

PHPDoc DocBlock

В заголовки также можно подмешивать что угодно, например можно добавить блок документации PHPDoc для различных IDE:

/**
 * Plugin Name
 *
 * @package           PluginPackage
 * @author            Your Name
 * @copyright         2019 Your Name or Company Name
 * @license           GPL-2.0-or-later
 *
 * @wordpress-plugin
 * Plugin Name:       Plugin Name
 * Plugin URI:        https://example.com/plugin-name
 * Description:       Description of the plugin.
 * Version:           1.0.0
 * Requires at least: 5.2
 * Requires PHP:      7.2
 * Author:            Your Name
 * Author URI:        https://example.com
 * Text Domain:       plugin-slug
 * License:           GPL v2 or later
 * License URI:       http://www.gnu.org/licenses/gpl-2.0.txt
 */
12 комментариев
Полезные 1 Все
    Войти