sticker

Subscribe! Enter your email address below:

NO SPAM: We absolutely hate spam. We will not share, rent, or give away your email address to anyone.You can unsubscribe at any time. Easily!

May 17, 2018

Here we are again PHP fans, with your latest edition of phpweekly.com.
 
This week we take a look at creating a custom settings panel in WooCommerce.
 
We also have Part 1 of a workflow series on deploying WordPress.
 
PHP Conference Asia has been announced, taking place in Singapore in September. Already confirmed to speak is Rasmus Lerdorf and Sebastian Bergmann. Super Early Bird tickets are on sale now.
 
Plus the latest Full Stack Radio podcast is all about Vuex, and using it to manage your applications state.
 
And finally, find out about upcoming events and releases across the WordPress project in The Month in WordPress: April 2018.

Have a great weekend, and enjoy your read.

Cheers
Ade and Katie

Please help us by clicking to our sponsor:

encrypt php scripts 
Protect your PHP Code
Why not try SourceGuardian 11. Click here to download a 14 Day Trial copy. Protect your code using Windows, Linux or Mac and run everywhere with our free Loaders.

Articles

Progress and Next Steps for Governance of the Drupal Community
One of the things I love the most about my new role as Community Liaison at the Drupal Association is being able to facilitate discussion amongst all the different parts of our Drupal Community. I have extraordinary privilege of access to bring people together and help work through difficult problems. The governance of the Drupal project has evolved along with the project itself for the last 17 years. I’m determined in 2018 to help facilitate the next steps in evolving the governance for our growing, active community.

I'm Starting a Newsletter
For the past few months, I've been looking for a new home to share articles, projects, podcasts, or other things that leave an impression on me.

Diversity Initiative: The CARE Team
Adopting a Code of Conduct was a great step forward for the Symfony community. Now, if a community member encounters an issue of harassment or other unwanted behaviour, they need to be able to report it and get support. This is one of the roles of the CARE team.

10 Best WordPress Event Management Plugins (Calendars, Ticketing, RSVPs)
If you’ve ever tried to install a calendar plugin you know that it’s not exactly the same as a fully functional event management tool. Calendars display dates of events, while the best WordPress event management plugins offer functions like ticketing, RSVPs, guest management, automated email notifications, booking forms and more. In order to achieve some of the more advanced calendar features, a WordPress event management plugin is required. What’s great is that you have dozens of options to choose from, and the best ones are affordable, powerful, and easy to understand.

Tutorials and Talks

Rectify: Turn All Action Injects to Constructor Injection in Your Symfony Application
Action Injections are much fun, but it can turn your project to legacy very fast. How to refactor out of the legacy back to constructor injection and still keep that smile on your face?

How to Create a Custom Settings Panel in WooCommerce
One of the reasons for WooCommerce's popularity is its extendability. Like WordPress itself, WooCommerce is packed full of actions and filters that developers can hook into if they want to extend WooCommerce's default functionality.

How To Send JSON Data From a Drupal 8 Site
Imagine a situation: your mobile application needs to get some information from your site on Drupal 8 using JSON. Why JSON? Why not XML? In this article you will learn how to do it without much effort and installing additional modules, how to change the JSON array programmatically, and send the JSON data with and without using Views.

Understanding Design Patterns - Template Method
Defines the skeleton of an algorithm in a method, deferring some steps to subclasses. Template Method lets subclasses redefine certain steps of an algorithm without changing the algorithms structure.

Extending WordPress WP Forms Plugin Functionality
WP Forms plugin is a great form plugin that bundles a friendly and useful visual form builder. As a developer I want to use the form builder editor to allow users be independent creating the forms but I also want to save the form submission in it’s own database structure, therefore did a little research on the plugin code and found a neat way to do this.

Running Magento 2 API Tests Via Postman
In a current Magento 2 project we are focusing on building a headless instance that communicates with a kind of PWA application. In such an environment testing the APIs via Postman makes sense and since the Magento 2 API is documented via Swagger, one can easily import the API definition into Postman. Here is how to do it with httpie.

WordPress Deployment Part 1: Preparing WordPress
Welcome to the first post in a workflow series on deploying WordPress. In this series, we’re going to look at how you can set up automated deployments for your WordPress site in a range of different ways. But before we get into the “how”, first we’re going to look at why you should consider setting up automated deployments for WordPress and how you can prepare your site for automated deployments.

Testing Your Code with Multiple Versions of PHP Using Docker
About a year ago, I spent some time working with an open source project called PHP Crud API. The project creates a RESTful API from a relational database using a single PHP script. It’s quite an impressive feat of engineering, but as I started working on the project, I realised I needed a reliable way to test my changes in different versions of PHP. That’s where Docker comes in.

How To Do PHP Continuous Integration With Travis CI
Code versioning has become a standard practice in development circles, with GitHub being a popular platform for hosting code repos. However, a common issue is the testing of the code as it is pushed by a team member. As the volume of commits increases, ensuring the quality and accuracy of code becomes a challenge.

Monitoring File Changes Using NodeJS
During script runs – that change files – I frequently need to check which files have been modified by the scripts, especially in CRON automated tasks. This allows me to take appropriate actions depending on the file state change. The following post shows how we can monitor file state changes in nodejs.

Introducing View Components in Laravel, An Alternative to View Composers
In software development, one of the “best practices” is to create reusable code that can be implemented in different parts of your application if needed.

Mocking with Anonymous Classes
PHP7 gave us some cool features, including anonymous classes. These are classes that you can define on the fly, associate with a variable and instantiate whenever you like. In a well built application you might think there are limited use cases for these, with all classes you need having their own file and specific place in the application, but what about classes that are incredibly custom, few lines long and barely used?
 
Getting Lucky With Crystal in Homestead
I’m going to open this post with an apology for anyone who’s corporate firewall gets triggered by this URL, but I just couldn’t resist the title.
News and Announcements

Atlas 3.x (“Cassini”) and PHPStorm Completion
I’m proud to announce the release of Atlas.Orm 3.0.0-beta1, along with releases of the supporting Mapper, Table, Query, Cli, and Pdo packages. (Atlas is a data-mapper for your persistence model, not your domain model, in PHP.)

php[tek] Conference - May 31st-June 1st 2018, Atlanta
php[tek] 2018 is the premier PHP conference and annual homecoming for the PHP Community. This conference will be our 13th annual, and php[architect] and One for All Events are excited to continue to host the event in Atlanta! Tickets are on sale now.

Oscon - July 16-19th 2018, Portland
OSCON is the complete convergence of the technologies transforming industries today, and the developers, engineers, and business leaders who make it happen.The 20th Open Source Convention takes place next July. From architecture and performance, to security and data, get expert full stack programming training in open source languages, tools, and techniques. Tickets are on sale now.

PHP Detroit Conference - 26-28th July 2018, Livonia
PHPDetroit is a two-day, regional PHP conference that brings the community together to learn and grow. We're preceding the conference with a 2 track tutorial day that will feature 4 sessions covering various topics. We will also be running an UnCon alongside the main tracks on Friday and Saturday, where attendees can share unscheduled talks. Tickets are on sale now.

CoderCruise - August 30-September 3rd 2018, Ft. Lauderdale, FL
Tired of the usual web technology conference scene? Want a more inclusive experience that lets you get to know your fellow attendees and make connections? Well, CoderCruise was designed to be just this. It's a polyglot developer conference on a cruise ship! This year we will be taking a 5-day, 4-night cruise out of Ft. Lauderdale, FL that includes stops at Half Moon Cay and Nassau. Tickets are on sale now.

Pan-Asian PHP Conference - September 26-29th 2018, Singapore
The third pan-Asian PHP conference will take place in September 2018 in Singapore - the Garden City of the East! This is a single track, 2 days Conference, followed by a day of tutorials on 29th September 2018. Come and meet with the fastest growing PHP communities in Asia. More than 300 attendees are expected in this single track conference, with Rasmus Lerdorf and Sebastian Bergmann already confirmed as speakers. The Call for Papers is now open, and Super Early Bird Tickets are on sale now.

Podcasts

Laravel News Podcast LN62: Caching, Bots, and Async Programming
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community, which this week featured a lot of caching.

Voices of the ElePHPant - Interview with TJ Gamble
Cal Evans and TJ Gamble sit down and talk Magento, PWAs, and Imagine.

Full Stack Radio Podcast Episode 88: Blake Newman - Vue.js State Management with Vuex
In this episode, Adam talks to Blake Newman about getting started with Vuex, and how you would use it to manage your applications state using several practical real-world examples. 

MageTalk Magento Podcast #168 - “You’re Already Connected to Your Sister”
We hope you like talking about GDPR because this one is ALL. ABOUT. GDPR. Buckle up, buttercup.

PHP Ugly Podcast #104: We Lose Our Free Will
Topics include the Twitter mass password reset and how dark patterns trick you online.

Post Status Draft Podcast - The Meta Episode
In this episode, Brian and Brian discuss meta data in WordPress, including the challenge of implementing data into new tools, such as the REST API and the Gutenberg editor.

Reading and Viewing

Book Review: Discovery - Explore Behaviour Using Examples
I've just finished reading "Discovery - Explore behaviour using examples" by Gáspár Nagy and Seb Rose. It's the first in a series of books about BDD (Behavior-Driven Development). The next parts are yet to be written/published. 

Why WordPress Uses PHP
Why does WordPress use PHP? In this video from my course, Learn PHP for WordPress, you'll get a detailed answer to this question. I'll give you an introduction to what PHP is and then show you why it's used in WordPress.

The PHP Developer Stack for Building Chatbots
On July 19th 20:00 CEST, I will join a Nomad PHP meeting to talk about The PHP Developer Stack for Building Chatbots. I am super excited to present my new talk, and I want to tell you a little bit more about it.

PHP Versions Stats - 2018.1 Edition
It's stats o'clock! See 2014, 2015, 2016.1, 2016.2, 2017.1 and 2017.2 for previous similar posts.

The Month in WordPress: April 2018
This past month saw a lot of preparation for upcoming events and releases across the WordPress project. Read on to find out more about these plans, and everything else that happened around the community in April.

Jobs

German Speaking PHP Developer (m/f)
You’re proud to call yourself a nerd and consider programming in PHP to be more than just a job? You’d like to help us make our shop better and faster while simultaneously providing our customers with an unparalleled and flawless shopping experience? If you feel like this describes you and also happen to have a weakness for new technology, you’re just the person we’re looking for!




Do you have a position that you would like to fill? PHP Weekly is ideal for targeting developers and the cost is only $50/week for an advert.  Please let me know if you are interested by emailing me at [email protected]

Interesting Projects, Tools and Libraries

psalm
A static analysis tool for finding errors in PHP applications.

subrion
A Content Management System (CMS) which allows you to build websites for any purpose. Yes, from blog to corporate mega portal.

laravel-ecommerce
AvoRed E Commerce is an Laravel Open Source Shopping Cart.

easy-digital-downloads
Sell digital downloads through WordPress.

dv-php-core
Devless is a ready-made back-end for development of web or mobile applications. 

mantisbt
Mantis Bug Tracker

bulk-delete
Bulk Delete is a WordPress Plugin that allows you to delete posts, pages and users in bulk based on different conditions and filters.

applicationinsights-php
This project extends the Application Insights API surface to support PHP.

php-invoker
Invoke PHP callables with a timeout.

aimeos-core
Aimeos PHP e-commerce framework for high performance online shops.

backdrop
Backdrop is a full-featured content management system that allows non-technical users to manage a wide variety of content. 

phpstan
PHP Static Analysis Tool - discover bugs in your code without running it!

Please help us by clicking to our sponsor:

encrypt php scripts 
Protect your PHP Code
Why not try SourceGuardian 11. Click here to download a 14 Day Trial copy. Protect your code using Windows, Linux or Mac and run everywhere with our free Loaders.
 

So, how did you like this issue?

Like us on FacebookFollow us on Twitter
We are still trying to grow our list. If you find PHP Weekly useful please tweet about us! Thanks.
Also, if you have a site or blog related to PHP then please link through to our site.

unsubscribe from this list | update subscription preferences 
 

Subscribe! Enter your email address below:

NO SPAM: We absolutely hate spam. We will not share, rent, or give away your email address to anyone.You can unsubscribe at any time. Easily!

Talk to us!

If you have some news, want to share a link with us or chat with us feel free to email us.

And we also have an RSS feed that you can use.

Like us on FacebookFollow us on Twitter

Copyright © PHPWeekly.com