✅ WEB- och WordPress -nyheter, teman, plugins. Här delar vi tips och bästa webbplatslösningar.

Kompositör för WordPress, del 1

19

Okej, så efter att ha pratat igenom alla olika bibliotek som kan hjälpa till att förbättra kodkvaliteten på ditt arbete, väcker det fortfarande en fråga:

Hur får vi dessa projekt att fungera mot vår kodbas?

Kort sagt, det kräver Composer. Om du aldrig har använt det så har jag skrivit kort om det tidigare, men jag tänker ge grunderna om vad du behöver för att komma igång med att använda den och de tidigare nämnda biblioteken i ditt arbete.

I både det här inlägget och nästa kommer jag att dela hur du ställer in allt lokalt i den mest grundläggande formen och sedan hur det integreras med Git så att du kan börja använda det i din vardag.

Konfigurera Composer för WordPress

Det finns mycket information som kan (och jag skulle hävda att man borde gå in i en fil för Composer). Detta inkluderar saker som författarens information, PSR, information, etc. Men det är verkligen utanför ramen för detta inlägg. Istället vill jag dela med mig av det absoluta minimum som krävs för hur man ställer in och konfigurerar denna information.

En provkatalog

Antag att du för ett ögonblick ska börja arbeta med ett plugin eller något relaterat till WordPress som kommer att kräva de olika biblioteken som diskuterades i föregående serie. Och när du ställer in katalogen för detta kommer du att ha väldigt få filer. Får ett par tomma PHP-filer, tillgångar, etc. Det kanske kommer att se ut så här:

Visst, exemplet ovan ligger redan lite före hur ditt arbete kan se ut eftersom:

  • Det finns en composer.lock fil som visar att Composer har körts,
  • Den har en vendor katalog som visar att bibliotek har installerats via Composer,
  • Det finns en grumphp.yml fil som definierar hur GrumPHP ska fungera (och jag kommer att ta upp detta senare) när man sniffar kod.

Men kärnan i ovanstående är densamma: Du har composer.jsonoch det definierar och inkluderar allt vi behöver baserat på föregående inlägg. Så hur ställer vi upp det?

Konfigurera kompositör

Först måste du ha en idé om hur du kommer att strukturera ditt plugin. Till exempel har jag en plugin-inställning så här:

  • Alla PHP-filer finns i src katalogen,
  • Alla CSS, JavaScript, bilder, etc., filer finns i assets katalogen,
  • Katalogen vendor är för saker som installeras via Composer,
  • views är vad som används i projektets front-end.

Till exempel:

För det andra, i katalogen i fråga, vill du skapa en fil som heter composer.json. Detta kan göras via Terminal genom att bara utfärda ett touch kommando, eller så kan du skapa det i din IDE.

Det viktiga att ta bort från detta är att det finns en src katalog eftersom det är katalogen som innehåller våra PHP-filer och det är den katalogen vi vill ha sniffat.

En grundläggande kompositörsfil

Med det sagt, här är en grundläggande composer.jsonfil som du kan använda i dina projekt baserat på den tidigare serien och baserat på vad som delas nedan:

{
  "name": "pressware/demo-wordpress-plugin",
  "description": "This file is used to show how to configure a WordPress plugin using Composer.",
  "autoload": {
    "psr-4": {
      "Pressware": "src/"
    }
  },
  "require-dev": {
    "phpro/grumphp": "^0.11.6",
    "phpmd/phpmd": "^2.6",
    "phpunit/phpunit": "5.7.21",
    "nikic/php-parser": "^3.0",
    "sebastian/phpcpd": "^3.0",
    "povils/phpmnd": "^1.1",
    "squizlabs/php_codesniffer": "^3.0",
    "jakub-onderka/php-parallel-lint": "^0.9.2",
    "sensiolabs/security-checker": "^4.0"
  }
}

Titta på filen ovan, så här analyserar du den:

  1. Rad 2 och 3 ger lite av en beskrivning av vad pluginet handlar om. Det är också andra områden i den här filen för att ge mer information om vad som behöver göras.
  2. Raderna 4 till 8 är viktiga eftersom de förklarar att vi använder PSR-4 för automatisk laddning och att alla filer faller under namnutrymmet på toppnivån Presswareoch att PHP-filerna finns i src katalogen.
  3. Raderna 9 – 18 täcker alla filer som täcktes i föregående serie.

Utför sedan följande kommando i din terminal:

$ composer install

Och det kommer att installera dessa paket.

Hur är det med Commits?

För att vara säker på att du snusar ordentligt och hanterar commits är det viktigt att du konfigurerar GrumPHP så att det tittar på filerna. Men jag ska ta en titt på det i nästa inlägg.

Under tiden kanske detta är ett bra tillfälle att ställa in ett demo-plugin och öva med ovanstående kod. Det kan vara svårt att ställa in det precis rätt första gången. Lyckligtvis är många av utdatafelen väldigt lätta att förstå, så det är relativt enkelt att lösa dem.

Inspelningskälla: tommcfarlin.com

Denna webbplats använder cookies för att förbättra din upplevelse. Vi antar att du är ok med detta, men du kan välja bort det om du vill. Jag accepterar Fler detaljer