定制 elseif/internetdagarna 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

elseif/internetdagarna

Composer 安装命令:

composer create-project elseif/internetdagarna

包简介

Automatisk hantering för WordPress-projekt

README 文档

README

WordCamp Internetdagarna, Waterfront Stockholm, 2016

Denna kodbas är framtagen för presentationen på WordCamp Stockholm 2016.

Koden ska ses som ett "proof-of-concept" på en strukturerad miljö för utveckling och distribution av WordPress-projekt.

Denna presentation sammanfattas i slides här!

Syftet är att ge en inblick och förståelse för hur utveckling med WordPress kan automatiseras och göras med kontrollerat upplägg med versionshantering, pakethantering, deployment och test.

Länkar efter presentationen

Några frågor kring presentationen visade på intressanta uppslag:

Roots: Trellis - Vagrantmiljö, Bedrock - paketstruktur, Sage - tema Laravel Forge, funkar fint för denna typ av WordPress-upplägg.

Grundkrav

  • PHP
  • Composer
  • Git
  • Virtual Box
  • Vagrant

Option

  • Node, npm för testcase i CasperJS
  • En VPS att leverera till

Snabba steg

Om du vill få detta att rulla med snabba steg:

  • composer create-project elseif/internetdagarna
  • cd internetdagarna
  • cp .env.example .env
  • (modifiera Homestead.yaml rad 15 till ditt projekts sökväg)
  • vagrant up
  • (modifiera hosts-filen med: 192.168.10.13 => internetdagarna.dev)
  • vendor/bin/dep initial dev
  • (surfa till http://internetdagarna.dev)

Mer om varje del nedan!

Versionshantering

Git används för versionshantering. Installera Git på din dator! Projektet ligger på Github med licens MIT.

Pakethantering

Vi använder Composer, styrfilen för externa paket finns definierade i composer.json.

composer install

Ta för vana att köra composer update för att dina externa paket ska vara uppdaterade.

Utvecklingsmiljön

Vagrant med Virtual Box

Homstead Laravel

composer update
composer require laravel/homestead --dev
php vendor/bin/homestead make

Redigera Homestead.yaml till med dina inställningar. Uppdatera /etc/hosts (OSX)

vagrant up

Krånglar miljön? Starta om Vagrantboxen:

vagrant reload --provision

Deployment

Vi använder PHP Deployer och WP CLI för att initiera ny webbplats.

vendor/bin/dep initwp dev

Initierar WordPress-installation i din Vagrantbox samt sätter ett testtema som aktivt.

Logga in i wp-admin: http://internetdagarna.dev/wp/wp-admin med admin och lösenord admin.

vendor/bin/dep testdata dev

Fyller din WordPress-webbplats med testdata.

Test

Vi använder PHPUnit och i detta fall ett mycket enkelt UI-test med hjälp av CasperJS som genererar en bild på testet. CaperJS kräver Node i global installation.

Selenium (Javabaserat) är ett annat verktyg för UI-test men eftersom vi ofta ändå använder Node så är CasperJS närmare till hands och dessutom betydligt enklare.

Installationsexempel:

sudo npm install -g phantomjs
sudo npm install -g casperjs
vendor/bin/dep tests dev

Drar igång UI-test i din Vagrantbox.

Deployment Production

vendor/bin/dep deploy production

Skapar en ny release på produktionsservern. Grundkraven är att destinationen har Git och Composer installerat. Vidare behöver en shared/.env samt installerad databas. Det går att initiera WordPressinstallationen med tidigare startup, ex:

vendor/bin/dep startup production

Observera att databas och .env måste finnas på servern. Kom ihåg att ändra admin-lösenordet!

统计信息

  • 总下载量: 5
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 3
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-11-20

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固