Image for post
Image for post

Hi everybody, how have you been?

Today’s post is the continuation of the previous one, A WordPress Setup With Docker, PHP 7.4, Apache 2.4 and MySQL 8 on Ubuntu 20.04 LTS, where we looked at a step-by-step approach to setting up a WordPress 5 site locally.

It turns out to be the case that nowadays most professional web sites use HTTPS in order to protect users’ connections over the Internet, as well as to look SEO friendly to Google’s eyes, and WordPress is no exception.

In fact, well, if you’re a WordPress developer, as a rule of thumb you should always be using SSL certificates on your sites. …


Image for post
Image for post

Are you a web developer working on another WordPress site? If so, you may want to run a site locally and safely on your laptop to play around with a theme or plugin first, or you want to experiment with this or that cool feature with no fears on breaking the live site.

Today’s post is especially helpful in 2020 and 2021 with so many radical, disruptive changes taking place in the WordPress community mainly introduced by the development of Gutenberg, the new content editor for WordPress 5.0.

Gutenberg aims to be a game-changer in the way WP sites are built. Some argue it resembles Medium or Wix in the way content is created, but judging by the debate users have had so far, the future of the new editor’s adoption might not seem too clear yet. …


Image for post
Image for post

Here we go one more time with another brief how-to guide on Ethereum smart contracts with Solidity.

In the previous post entitled The Git Way for a Smart Contract to Receive Ether we looked at how to write a contract that would receive ether, and today we’re just querying its balance through a Node.js app.

Once again, let’s do it step by step the Git way!

Please sit back and make yourself comfortable, go take a cup of tea on this occasion and browse the commit log at programarivm/solidity-contract-balance.

Image for post
Image for post

Here’s the commit log for you to do the exact same thing I did, step by…


Image for post
Image for post

Hey dapp developers, how are things going? Today I am excited to show you how to deploy another Solidity smart contract into Ropsten. This simple contract will be capable of only receiving ether so its balance can be queried at any moment.

Let’s do it step by step, the Git way!

Please visit programarivm/solidity-receive-ether and sit back, go take a cup of coffee while browsing the commit log of the repo.

Disclaimer: This tutorial is aimed to intermediate dapp learners who already know a few basics about Truffle and Solidity, and want to know more.

As you can see on GitHub, The Git Way for a Smart Contract to Receive Ether is the third part of a series on how to build decentralized apps with Solidity. …


Image for post
Image for post

In the previous post entitled A Simple Laravel ACL Example we wrote a simple custom access control list (ACL) and learned that the steps we went through also apply to plain PHP apps as well as to any other PHP framework.

Today we are taking a step further by letting our app authorize validation logic in a decoupled way with the help of Laravel’s form requests.

Since authorization stuff needs to be performed by access control rules, we’re now taking full advantage of our ACL while following one of the five SOLID principles of object oriented design: the Open-Closed principle. …


Image for post
Image for post

Implementing an ACL (access control list) in your Laravel application is actually a snap.

Let me share a simple solution which basically consists in writing a middleware only to match the URL of the incoming request against the permissions stored into the database.

In the present article we are not using any third party Laravel package. This simple ACL idea is intended to those who are not big fans of installing unnecessary external dependencies in their projects.

Figure 1. Additional packages are not required

For this reason it can also be used in plain PHP apps as well as in any other PHP framework — for example, Symfony. …


Image for post
Image for post

Are you a full-stack PHP developer? Chances are that you might want to easily override an environment variable through the command-line interface.

Let’s say you are writing a bash script to automate a certain process: your Docker containers must be rebuilt, and the app’s DB_HOST and REDIS_HOST variables must be updated accordingly.

On such scenario, PHP frameworks like Laravel can be easily extended in order to accomplish our goal, specifically the FlexEnv package can help like this:

$ php artisan env:set NEW_KEY "your key's value"

However, if your PHP framework doesn’t have any extension to create, edit and delete .env files via the command line, or if you just don’t want to use an extension for managing environment variables through the command line, then the sed (stream editor) command comes to the rescue — in UNIX. …


Hey everybody, Jordi here, and today I am sharing some thoughts on my first real-world — as opposed to “Hello world” — React app.

Image for post
Image for post
Figure 1. React logo

It seems there aren’t too many tutorials out there on how to build complex React applications with Flux. Well, the RealWorld example apps can help — even though I wasn’t able to find any Flux implementation example.

So I decided to write an SPA application called Meerkat, this funny mammal resembling a small dog, much like Timon in the Lion King.

The repo is available on GitHub, and basically the app allows users to review and rate restaurants. …


Image for post
Image for post

Hey everybody, welcome to my first Medium article.

Here is a helpful tip for those who want to model a many-to-many relationship with extra columns or fields in a Laravel app with Eloquent.

Please note that this is not a step-by-step guide through the process of setting up a Laravel app from scratch; instead, I am just sharing a certain way of doing things — implementing a design paradigm if you like.

What is an entity table?

This is the typical scenario that arises when you realise that you want to add new properties to a relational join table so far having nothing but foreign keys. …

About

Jordi Bassagañas

Hi there! How are you today? I blog about technology, the Internet, SEO, programming tips, PHP and more. programarivm.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store