Хей, имам нещо специално за теб!

5 грешки, които допускаш по време на интервю

Попълни имейл адрес, на който до минута ще получиш обещаното ;)

Сървър за WordPress локално разработване - Local vs DevKinsta

Сървър за WordPress локално разработване – Local vs DevKinsta

Какъв софтуер използваш за разработка на WordPress на локалната си машина? кой е по-добър - Local или DevKinsta? Научи всичко в...

За да разработваш WordPress професионално и да създаваш теми и плъгини – то ти е необходим правилният софтуер. От любимия ти code editor, през компилатор на скриптове и стилове, до локален сървър.

Тъкмо за избор и настройване на локален сървър са следващите редове. Stay tuned 😉

Какво е локален сървър?

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

Локалният сървър ни позволява да разработваме теми, плъгини и като цяло – уеб сайт в сигурна среда, без необходимост от интернет връзка и с ограничен достъп. Може да разглеждаме локалната инсталация като staging такава. До не много отдавна популярни решения за създаване на локален сървър бяха WAMP, XAMPP, MAMP и д . Към днешна дата, обаче, има далеч по-съвременни и по-богати на функционалности решения. ?

Кога се използва локален сървър?

След като вече знаеш какво представлява локалният сървър, време е да разгледаме и няколко случая, в които е уместно да използваш такъв.

➡️ За разработване и/или редактиране на теми и плъгини

WordPress апликация, изградена на локален сървър е перфектното решение, когато говорим за разработване на теми или плъгини. Тук имаш сигурността да работиш необезпокоявано и най-вече – без риск да засегнеш production сайта (в случай, че има такъв). Също така имаш възможността да експериментираш бързо и ефективно (без да се налага да непрестанно да качваш файлове през FTP клиент на сървъра). Излишно е да споменавам, че диагностиката и отстраняването на бъгове е многократно по-бързо.

➡️ За разработване на нов уеб сайт

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

➡️ При съществени промени на съществуващ уеб сайт

Всички знаем, че имплементирането на нов код или редактирането на съществуващ такъв директно на продукционна среда е сравнимо със скачане от мост ?. Затова и тук силно препоръчвам използването минимум на staging среда, а още по-добре – на локална разработка преди това.

Вече знаейки какво представлява локалният сървър и за какво се изполва, нека разгледаме и двете решения, след което ще направим подробно сравнение.

Local by Flywheel

Съвсем набързо – Local by Flywheel е революционен софтуер за локална разработка на WordPress, който значително изпъква пред конкурентните решения. Познат в миналото като Pressmatic, Local впечатлява с множество функционалности съвсем БЕЗПЛАТНО ?. Да, правилно, софтуерът е изцяло безплатен и достъпен за всички операционни системи.

За да добиеш по-ясна представа за всички features, които Local предлага (отново, безплатно), ще ги разбия на няколко подточки.

➡️ Избор на сървърна среда

Само с един клик (наистина) избираш с какъв сървър да се сдобиеш – NGINX или Apache. Така, освен да пресъздадеш продукционната среда, на която после ще живее сайта, можеш и да тестваш между различните среди. Освен това, също толкова лесно може да сменяш PHP версията, под която работи апликацията ти. Local поддържа и по-стари PHP версии, като например 5.6.39, както и последната такава – 8.0.0. Имай предвид, че самият екипът, работещ над WordPress core все още отстранява някои бъгове, свързани с последната PHP версия.

XDEBUG и PHPStorm са добавени като add ons, като за да ги използваш, трябва първо да ги активираш.

Избор на PHP версия и сървър в Local

➡️ Инсталиране на WordPress за под една минута

От user interface-a, през разнообразните features и интуитивността на админ изгледа, Local те улеснява във всяко отношение и най-вече – в създаването на нов проект (сайт). Ако при например WAMP трябва да свалиш желаната WordPress версия от wordpress.org, да създадеш база данни през phpMyAdmin и да конфигурираш всичко от стъпка първа, то с Local имаш чисто нова WP апликация само за няколко секунди.

През екрана за първоначални настройки можеш да избереш версията на WordPress, на каква PHP версия да стъпи, дали е multisite (да, Local поддържа и WordPress multisite) и още.

Създаване на нов WordPress сайт с Local

Може ли да разработваш локално с Local без сайта да е WordPress?

Ако си си задал този въпрос, то отговорът е – да, можеш. Всичко, което трябва да направиш е да минеш през стандартния процес за създаване на WordPress уеб сайт, след което да влезеш в папката на сайта и да изтриеш всички файлове, свързани с CMS-a, както и всички таблици, отново свързани с WordPress от базата данни.

➡️ Споделяне на линкове

Един от най-яките (според мен) feature-и на Local е възможността да споделяш Live LInks към проекта си. Тоест – имаш локален сървър, от който обаче може да споделяш линкове и хора, които не са на твоята машина могат да виждат апликацията.

За да използваш Live Links, трябва да имаш създаден акаунт в Local. След като го направиш, ще видиш опцията Live Link и enable.

Създаване и споделяне на Live Link през Local

Live Links са наскоро ъпдейтнати като функционалност и вече предлагат:

  • повишен лимит на свързване – всеки Live Link Site Tunnel позволява множество връзки спрямо предходнята си версия. Това означава, че Local сайт може да бъде споделян с много потребители (хора) и между много и различни устройства
  • постоянни линкове – линк, създаден с Local, изглежда по този начин: mysite.localsite.io. Всеки линк се отнася до един Local сайт. От настройките можеш да редактираш линкът, както и данните за достъп до него (парола и потребителско име). Имаш опция и да затвориш тунела (да прекъснеш връзката).
  • сигурност – тъй като всеки Live Link е своеобразен достъп до компютъра ти, внимавай на кого даваш достъп. В Pro версията на Local линковете минават през HTTPS и имат включен Privacy mode, но това не се отнася за безплатната версия.

➡️ Сайтът зарежда под HTTPS / Mailcatcher

Local създава тунел под ngrok, което ти позволява както да изпращаш Live Links, така и да зареждаш и тестваш сайта си под HTTPS. Това е от изключителна важност, в случай, че искаш по време на разработка да тестваш различни интеграции, като например Stripe, PayPal, REST APIs.

Неминуемо ще се нуждаеш и от тестване на имейл изпращане от уеб сайта, над който работиш. Тук от Local са помислили да интегрират Mailcatcher, който прихваща изходящите мейли от PHP sendmail и ги запазва в пощенска кутия за преглед и дебъгване.

➡️ Blueprints, копия и експортване на сайт

Една от най-големите благинки (според мен) на Local е, че ти позволява да имаш т.нар. Blueprints. Какво представляват Blueprints? Представи си, че всеки път (или често), когато започваш нов WordPress сайт стартираш с определени теми, плъгини и като цяло – setup. Е, с Blueprints може да създадеш нещо като темплейт, който да преизползваш. Всичко, което трябва да направиш, е да избереш даден сайт, който ще ти служи за Blueprint и с десен клик на мишката да го запазиш като такъв, след което в таб Blueprints ще имаш достъ до него и конфигурацията му.

Създаване на нов Blueprint в Local

Освен създаването на темплейтни стартери, Local ти позволява и да експортваш и импортваш сайт с буквално 2 клика. Това е полезно в случай, че искаш да направиш копие например на сайт, който ще доработваш, но желаеш да запазиш първоначалните му настройки. Полезно е и ако да речем искаш да дадеш .zip с файловата структува и бази данни на друг разработчик.

Export & Import на сайт в Local

➡️ Deploy към продукционна среда

Local ти дава възможност да deploy-неш локален сайт към продукционна среда (уеб сървър) отново с няколко клика. Важно е тук да отбележа, че към момента на писане на тази статия възможните хостинг доставчици, към които може да се осъществи връзка са WPEngine и Flywheel (компанията зад Local).

DevKinsta by Kinsta

Неотдавна хостинг компанията Kinsta предложи собствено решение за локален сървър – DevKinsta. Много сходен до Local, този софтуер идва с някои предимства, но също и недостатъци спрямо вече утвърдения си конкурент. Нека разгледаме по-подробно какво представлява и как се работи с него.

➡️ Docker контейнери

Това, с което DevKinsta се отличава най-много от конкурентните софтуер решения е интеграцията с Docker – платформа за разработване на софтуер, която на практика „складира“ средата, в която разработваме в контейнер. Например, ако проектът, който разработваш работи под Node.js версия 14.x и PHP версия 7.4, цялата тази информация се запазва в Docker контейнера и при работа на друг разработчик не е необходимо той да настройва средата си и да сваля различните версии, от които зависи апликацията.

Точно по този начин DevKinsta създава нов Docker контейнер за всеки един от WordPress сайтовете, които разработваш.

Още с инсталационния процес на DevKinsta ще се наложи да инсталираш и Docker десктоп приложението (ако го нямаш на машината си).

➡️ Избор на уеб сървър?

Всъщност това заглавие е малко подвеждащо 😀 DevKinsta създава всеки нов уеб сайт под NGINX по подразбиране. Също така, в настройките на сайта, след като е създаден, няма опция за промяна на уеб сървър.

Създаване на нов WordPress сайт в DevKinsta

➡️ MariaDB

Създаден като fork на MySQL и то от създателя на mySQL, MariaBD е тип релационна база данни. Препочитан избор що се отнася до performance и бързина спрямо MySQL. С DevKinsta всеки WordPress създава 12-те си таблици в MariaDB база данни.

➡️ HTTPS и мейл сървър

DevKinsta също предлага зареждане на сайтовете под HTTPS, коеtо, както споменах по-горе, е от особена важност, когато искаш да тестваш third-party software интеграции. И тук имаш възможност да тестваш имейли.

Local by Flywheel vs. DevKinsta

Local by FlywheelDevKinsta
Docker containersнеда
Live Linksдане
DB ManagerAdminerAdminer
WP_DEBUGда, има и extensionда, с toggle
HTTPSдада
Deployment към WP Engine и Flywheelкъм Kinsta
WP Multisiteдада
Local emailдада
PHP support5.6 – 87.2 – 8.2
Server typeNGINX, ApacheNGINX
Blueprintsдане

Заключението

В края на тази дълга и обстоятелствена статия и след безброй часове прекарани в тестване (особено с Local, тъй като работя с него от години), мога да заявя следното:

DevKinsta е страхотен инструмент, иновативен, вземайки предвид Docker контейнерите, както и бъдещите функционалности, които Kinsta екипът предвижда. Има потенциал и със сигурност много разработчици вече му симпатизират и използват.

Безспорно е обаче предимството на Local. Екипит на FlyWheel работи от години над софтуера и всички негови функционалности. Fun fact – докато пиша тази статия се появи и нов feature – клъстаризиране (групиране) на уеб сайтовете в Local.

С това изчерпвам темата по повод избор на суфтуер за локална разработка. Надявам се инормацията да ти е била полезна и вече да вдигаш WordPress (и не само) сайтове за под една минута.

Stay blond 😉

Един коментар

Остави коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

  1. Привет,
    С Local by Flywheel как мога да се свържа с споделена база данни за да мога да разработвам с приятел?