Яндекс.Метрика
qr-код - Как-то так стрелка - Как-то так
Ведущий экономист + ... пиктограмма - Как-то Так THIS     АКТУАЛЬНЫЕ ВЕЩИ - СВОИМИ СЛОВАМИ
Персональная помощь в экономическом планировании и WEB
+ WEB = разработка + ремонт + поддержка !

Как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS)

Как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS)

Многие сайты/проекты, чтобы не изобретать велосипед удобнее делать уже на готовых платформах php – CMS (WordPress, Bitrix от 1С, Joomla, OpenCart, ImageCMS и т.п.). Ну, или же, для придания большего колорита и определённой независимости, на одном из фреймворков (Laravel, Symfony, CodeIgniter и т.п.).

Речь конечно же идёт о среде разработке с использование серверного языка программирования PHP.

Основное преимущество в использовании наиболее популярных CMS заключает в возможности расширения их функционала за счёт разработки собственных скриптов, подключения сторонних библиотек с интеграцией их в файловую среду самого движка.

Другими словами – разработали свой скрипт/программу на PHP, или взяли стронную библиотеку (других разработчиков) и интегрировали её в тело своего движка (CMS) для взаимодействия её с функционалом вашего проекта и возврата результата её работы в шаблон страницы CMS.

В данном посте речь пойдёт именно о том, как подключить стороннюю библиотеку, разработанную на PHP (стандарта Packagist) к своему проекту на CMS с помощью  популярного менеджера зависимостей PHP – COMPOSER.

Чтобы понять, как можно настроить всё это взаимодействие, с учётом конкретной потребности разработчика в решении определённой задачи, приведём простой пример.

Так как практически все популярные CMS построены на подходах ООП (объектно-ориентированного программирования) и файловая структура их схожа, общие подходы в реализации данной задачи для всех CMS (WordPress, Bitrix, Joomla, Drupal и т.д. ) будут подобны.

У нас есть сайт на движке ImageCMS (фреймворк CodeIgniter) и необходимо реализовать такую простую задачку.

На своём сайте с помощью функционала движка (админ панели) создадим обычную страницу, на которой, создав предварительно дополнительные поля для загрузки двух изображений (через всю туже админку), выведем их в формате png, и уже на их основе сгенерируем одно изображение в формате gif (в двух вариациях).

Создание страницы и вывод исходных изображений на ней будет достигнуто с помощью стандартной административной процедуры управления движком(CMS), а вот в создании gif картинки (анимации) на этой же странице нам как раз поможет сторонняя библиотека.

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

  • 1 – с помощью файла functions.php, находящегося в корне темы движка (используемого для расширения его функционала)
  • 2 – созданной нами библиотеки lib_gif в теле самого фреймворка(codeigniter) движка(ImageCMS) (в папке application/ libraries)

Осталось найти нужную библиотеку на PHP для решения поставленной задачи.

Есть такой замечательный ресурс https://packagist.org, на котором разработчики всего мира размещают и делятся своими программными скриптами (библиотеками), облегчая тем самым процесс разработки другим программистам.

Packagist — это репозиторий пакетов Composer. Он позволяет находить пакеты и сообщает Composer, откуда взять код. Любой разработчик может использовать Composer для управления своим проектом или зависимостями библиотек.

Composer же, в свою очередь, представляет из себя популярный менеджер зависимостей PHP, который упрощает процесс установки и обновления зависимостей проекта (некоторый аналог NodeJS NPM).

Он способствует установке, через командную строку своего терминала/консоль, всех необходимых версии пакетов в соответствии с запросом разработчика.  Кроме всего прочего, Composer часто используется для установки на своём локальном сервере новых проектов построенных на таких популярных фреймворках PHP, как Laravel и Symfony.

И так, заходим на сайт https://packagist.org и ищем что-нибудь похожее для решения нашей задачи – создание gif анимации.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 1

Находим нужную нам библиотеку - pomirleanu/gif-create

Ознакамливаемся с инструкцией по её установке и использованию.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 2

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 3

До того как приступим к установке pomirleanu/gif-create, нам необходимо сначала установить в нашу систему (в данном случае Windows) compser, для того чтобы обеспечить загрузку и подключение данной библиотеки в наш проект через командную строку.

Так как локальная среда разработки у нас на Оpen Server (OS), то composer уже установлен в систему по умолчанию вместе с OS.

Единственное что мы ещё сделаем, это добавим для своего удобства и возможности работы с ним не только через консоль OS, но и Visual Studio Code, который является нашим редактором кода (IDE - интегрированной средой разработки). Или, другими словами, подружим консоль VS Code и OpenServer.

Делаем в настройках OS следующее:

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 5

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 6

Если же ваша среда разработки не на OS (а, к примеру, на XAMPP, WAMP, или же отдельно подключаемом PHP и т.п.), то composer необходимо установить глобально. Достаточно скачать и запустить установщик для Windows.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 7

Для проверки установленной версии composer в командной строке терминала введём:

composer –v

и получим всю служебную инвормацию по нему

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 8

Далее создадим папку app_packagist (название любое может быть задано) в корне проекта, в которую и загрузим необходимую библиотеку с помощью composer.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 9

Заходим через консоль VS Code в данную папку и выполняем следующую команду:

composer require pomirleanu/gif-create

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 4

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 10

После чего в папке app_packagist будет создан:

  • файл composer.json, где указан подключаемый пакет (название/версия).
  • файл composer.lock, где указаны все установленные зависимости и их версии.
  • и папка vendor с загруженными основными и зависимыми пакетами (библиотеками)

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 11

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 12

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 13

Если бы мы изначально в папке app_packagist создали файл composer.json и указали в нём конструкцию в виде объекта require:

и после этого сделали запрос:

composer install

то получили такой же результат.

По сути, тоже самое, что и с запросом composer require pomirleanu/gif-create, только при первом варианте файл composer.json создаётся автоматически, если до этого его в папке не было.

В папке vendor видим всё основные и вспомогательные пакеты необходимые для создания gif-анимации из изображений png.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 14

Создаём страницу (my_page) своего сайта с помощью админ-панели CMS:

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 15

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 16

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 17

Цепляем шаблон вывода этой страницы к созданному файлу my_page.tpl, где выводим наши исходные изображения (/uploads/1.png и /uploads/2.png)

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 18

Посмотрим что у нас получилось.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 18_1

Ниже, на той же странице, выведем результат работы подключаемой библиотеки pomirleanu/gif-create.

Для этого в файле созданного шаблона (my_page.tpl) нашей страницы напишем следующий код, который и будет отвечать за вывод анимации по двум вариантам.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 19

1 – с помощью созданной функции gif в файле functions.php:

{site_url(gif($image_1,$image_2))} – url первой анимации

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 20

2 – с помощью созданной библиотеки lib_gif (в папке application/ libraries):

{$url_animated = $CI->load->library('lib_gif')->index($image_1,$image_2)}

{site_url($url_animated)} - url второй анимации

По сути, код идентичен внутри метода index().

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 21

Отличие первой анимации от второй заключается в том, что массив $frame, который является первым аргументом вызываемого метода (->create($frames, $durations)) объекта класса (new GifCreate\GifCreate()) в 1-ом способе включает в себя первым элементом url = /uploads/1/png, а во 2-м втором url = /uploads/2.png.

Поэтому чередование исходных изображений в сгенерированной анимации в 1-ом и 2-ом варианте у нас будет отличаться.

как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - 22

Вот таким образом можно настроить взаимодействие CMS с любой внешней библиотекой, установленной с помощью composer, в рамках своего проекта для синтеза, обработки и вывода определённых данных, в том числе на создаваемых страницах непосредственно самим движком (CMS).

Понимая, как использовать в своих проектах ту либо иную библиотеку из репозитория пакетов Composer, можно значительно упростить сам процесс разработки, тем более что сегодня большая часть всех сайтов/ресурсов, как-никак разрабатывается на уже готовых php платформах (CMS) .  

Как подключить стороннюю библиотеку PHP с помощью COMPOSER к сайту на движке (CMS) - Как-то Так!

Подписывайтесь на мой телеграмм канал - Мои заметки - ЭКОНОМИКА +

Если у вас есть какая-либо потребность в решении определённой задачи, связанной с созданием, запуском, ремонтом и поддержкой своего интернет-проекта (сайта) в сети, или же экономическим анализом и бизнес-планированием коммерческой деятельности   telegram или форма обратной связи

Administrator
611
0
Имя
E-mail
Рейтинг
Отзыв

Конвертер валют
RUB RUB-icon
USD USD-icon
EUR EUR-icon
CNY CNY-icon
BYN BYN-icon
UAH UAH-icon
KZT KZT-icon
ЗАМЕТКИ ЭКОНОМИСТА
SHORT - о чём речь
ЭКОНОМИЧЕСКАЯ ГРАМОТНОСТЬ
Хочу Всё Знать. Полезные Советы