mezon PHP Router Library
Read more at https://www.phpclasses.org/package/11631-PHP-Route-HTTP-requests-mapping-URLs-into-classes.html#2020-04-29-03:57:19
The WordPress ecosystem is chock full of outstanding free software. Why, you could build an entire website using an attractive free theme and a selection of highly-functional plugins.
But free solutions aren’t always the best ones. This is especially the case for web designers who build sites for clients. Sometimes, commercial software is needed to achieve professional-grade results.
Investing in commercial themes and plugins can often be the right choice for your project. However, it also brings a certain set of responsibilities. These are things that designers often overlook. Unfortunately, doing so can lead to problems down the road.
Therefore, it’s important to think about what using commercial WordPress software means. Today, we’ll take a look how you can keep things running smoothly both now and in the future.
On the surface, the question of who pays for a particular piece of software may seem obvious. It should be the client’s responsibility, right? Well, it’s a bit more complicated.
If the software in question, let’s say a WooCommerce extension, is going to be used exclusively for the client’s website – they should be the one to pay. Whether you purchase the software and bill them later or have them buy it directly (the better option), your client should be the license holder in this case.
However, a lot of themes and plugins these days have developer licensing options. This allows a web designer to purchase a single license for use on a predetermined number of projects – sometimes even unlimited. This muddies the waters a bit.
At best, it can be a win-win situation. You get to utilize a trusted product without licensing hassles and your client reaps the benefits of it.
Still, there is the potential for future issues. As your work evolves, you may not necessarily use a particular theme or plugin forever. If that software has yearly license renewals, you may be stuck purchasing it anyway – just so your existing client websites don’t fall out-of-date.
One of the biggest issues with commercial software in the WordPress space isn’t the software itself – it’s mismanagement by designers.
If you’ve ever inherited a website from another designer, you may have witnessed this first-hand. A theme or plugin is in use, but incredibly outdated. Yet, the license key required to install an update is nowhere to be found. Or, worse yet, the software was directly customized by the previous designer – making an update even more precarious.
This may not be a big deal – at least not right away. But eventually something will go wrong. The more updates applied to your WordPress install, the more likely it is that the old software will break.
Nothing in the WordPress ecosystem is frozen in time. Things are constantly changing. In that sense, leaving a client with something that can’t be updated is akin to leaving a hidden trap. At some point, their site is going to become entangled in it.
And, when it involves critical components such as themes or page builder plugins, the effort and cost to make repairs can be significant.
So, how can we take advantage of commercial offerings while doing right by our clients? Here are a few ideas:
One of the biggest mistakes a designer can make is using unlicensed software on a client’s website. For example, taking a plugin that was licensed for one domain and installing it on another.
Functionally speaking, this puts the site at risk as the plugin can’t be updated. Beyond that, it’s also hurting that plugin’s author as well.
It should probably go without saying, but we’ll say it anyway: Only install plugins and themes if they are licensed for your project.
It’s important that clients understand their role in staying on top of software licensing. They should have all relevant license keys for software they’ve purchased. It will come in handy if they need to reference it later on.
In addition, clients should be aware of when licenses will renew and why it’s important to stay updated. At that point, it’s out of our hands. The best we can do is educate clients in hopes that they follow through.
Like everything else in web development, it’s important to make any commercial theme or plugin customizations in a sustainable manner. This means using child themes and WordPress hooks as opposed to directly editing files.
This helps to ensure that any customizations won’t be lost during future software updates. Otherwise, your clients may be in for an unwelcomed surprise when a feature no longer works as intended.
Launching a website and handing it off to a client is a time of optimism. Everything is new, fresh and functional. But if a piece of commercial software can’t be updated in the future, that good feeling won’t last.
Make sure that any commercial themes and plugins can be upgraded via the WordPress dashboard. This helps to ensure that your client’s new website will receive the latest features, along with bug and security fixes.
If a particular component has to be updated manually, let your client know. This way, you can work as a team and plan ahead.
It may sound like using commercial software with WordPress is a hassle. Actually, it only becomes a problem if we neglect the accompanying responsibilities.
More than anything, the key to keeping things humming along is communication. Clients need to know what needs to be done, how much it will cost and why it’s important to keep up with licensing. This will prevent the vast majority of issues from ever popping up.
In addition, web designers must build and hand over their projects to clients with sustainability in mind. This means that every component of a website is able to be updated now and five years from now.
So, use your favorite commercial themes and plugins without hesitation. Just make sure that you’re utilizing them with the future in mind.
The post A Guide to Using Commercial WordPress Themes and Plugins appeared first on Speckyboy Design Magazine.
Latest PECL Releases:
Runtime::enableStrictMode
method (b45838e3) (@twose)Buffer
class (559a49a8) (@twose)coroutine::async
with lambda (#3127) (@matyhtf)enable_reuse_port
option (#3192) (@matyhtf)uchar
for bit field (#3071) (@twose)enable_delay_receive
(#3221) (#3224) (@matyhtf)= Fixed bugs:
ConnectionPool->fill
(swoole/library#18) (@NHZEX)DD_SERVICE_MAPPING=pdo:payments-db,mysqli:orders-db
#801, #817DD_TRACE_AUTO_FLUSH_ENABLED=1
(PHP 7) #819, #826DD_TRACE_GENERATE_ROOT_SPAN=0
#834The problem: if you publish any document as PDF, in print, etc. and the text contains URLs, there is a chance that one day those URLs won't work anymore. There's nothing to do about that, it happens.
Luckily, this is a solved problem. The solution is to link to a stable and trustworthy website, that is, one that you maintain and host (of course, you're trustworthy!). Then in the document you link to that website, and the website redirects visitors to the actual location.
An example: my book contains a link to https://enjoy.gitstore.app/repositories/matthiasnoback/read-with-the-author. When I moved that repository to a new organization on GitHub, this link resulted in a 404 Page not found error. The proper URL is now https://enjoy.gitstore.app/repositories/read-with-the-author/read-with-the-author. Chris from Gitstore was able to save the day by setting up a redirect on their site, but I wanted to make sure this kind of problem would never be a problem for me again.
The ingredients for the solution:
I wanted to hook this new website into my existing Docker-based setup which uses Traefik to forward traffic to the right container based on labels. It turns out, with a simple Nginx image and some custom setup we can easily set up a website that is able to redirecting visitors.
The Dockerfile
for such an image:
FROM nginx:stable-alpine
COPY default.conf /etc/nginx/conf.d/default.conf
Where default.conf
looks like this:
server {
listen 80 default_server;
index index.html;
root /srv;
error_page 404 /404.html;
rewrite /repository https://enjoy.gitstore.app/repositories/read-with-the-author/read-with-the-author redirect;
}
This already works, and when I deploying the resulting image to the server that receives traffic for advwebapparch.com, a request for /repository will indeed redirect a visitor to https://enjoy.gitstore.app/repositories/read-with-the-author/read-with-the-author using a temporary redirect.
When I'm working on my book, I don't want to manually update a server configuration file every time I'm adding a URL.
Instead, I'd like to work with a simple text file.
Let's name this file forwards.txt
:
/repository https://enjoy.gitstore.app/repositories/read-with-the-author/read-with-the-author
/blog https://matthiasnoback.nl
And then I want the Docker image build process to add rewrite
rules automatically,
So I wrote a little PHP script that does this runs during the build.
Here's what the Dockerfile looks like.
It uses a multi-stage build:
FROM php:7.4-alpine as php
# This will copy build.php from the build context to the image
COPY . .
# This will generate default.conf based on template.conf
RUN php build.php
FROM nginx:stable-alpine
# Copy the default.conf from the php image to the nginx image
COPY --from=php default.conf /etc/nginx/conf.d/default.conf
Here's what happens inside the PHP script:
function insertRewritesInNginxConf(string $conf): string
{
$rewrites = [];
foreach (file('forwards.txt') as $line) {
$line = trim($line);
if (empty($line)) {
continue;
}
$rewrites[] = ' ' . 'rewrite ' . $line . ' redirect;';
}
return str_replace(
'%INSERT_URL_REWRITES_HERE%',
implode("\n", $rewrites),
$conf
);
}
/*
* Generate the Nginx configuration which includes all the actual
* redirect instructions
*/
file_put_contents(
'default.conf',
insertRewritesInNginxConf(file_get_contents('template.conf'))
);
We should add a bit of validation for the data from the forwards.txt
file so we don't end up with a broken Nginx configuration, but otherwise, this works just fine.
I don't want to manually check that all the links that are inside the "link registry" still work. Instead, I'd like to use Oh Dear for that, which does uptime monitoring and checks for broken links as well.
For this purpose I added another function to the PHP script, which, based
Truncated by Planet PHP, read more at the original (another 1844 bytes)
Two new programs have been added to the Free File Synchronization Software page. One of them can even back up across a local network and the Internet. As everyone who has worked on a computer for some time knows, it is very important to back up (at the very least) your data onto a separate device on a regular basis, since computers can fail at unexpected times. Software like these are used to automatically mirror the data on your main computer with your backup drive or system, so that it is kept up to date.
Note: if you want to back up an entire computer, and not just your data, please see the Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities page instead.
What do you do if you’re partway through an important project for a client and you get, well… stuck? You simply can’t wring any more good ideas from that brain of yours, and none of your ordinary tricks to relieve creative block are working.
To many designers, this is the kiss of death, but I’m here today to tell you that it doesn’t have to be. We’re going to explore some unusual but very effective ways to get those creative juices flowing again so that you can get back in the flow of things and continue to wow your clients.
Here’s a fact about the human brain that you may not know: every single decision you make throughout your day will have a negative effect on your ability to successfully complete a task. That’s right – whether it’s choosing which color to make that dropdown menu, or whether you should wear that green shirt or the blue one, every time you’re forced to make a decision, you lose just a bit more mental energy.
This is why you may find yourself burnt out by lunchtime if you begin your day by answering emails or answering silly questions from dense clients. Those small decisions have used up a huge amount of your energy for the day. Sure, you can recover some of it by eating a nutritious lunch or having a quick nap, but you won’t be quite as productive after noon as you were before.
Adopting systems and routines that automate a lot of your daily decisions can help tremendously in recovering some of that creativity you thought was lost forever.
Consider taking a full day to plan the little things you know you will have to do for the week, even down to what color shirt you’ll wear. Try to batch your email responses if you can – it’s not a crime to cut and paste responses if they’re relevant and get the point across.
The more things you can automate, the more you can turn your focus to the work that truly matters.
Starting a new project can be very intimidating. And yes, I’m about to use yet another of my famous food analogies, so get ready.
Have you ever been to a restaurant, and the waiter hands you a menu that’s absolutely terrifying? I don’t mean it has teeth or it growls at you or anything like that. I mean, there are so many items on the menu, and the descriptions are so lengthy that you almost lose your appetite and want to run back out the front door?
Too much choice can do more than confuse us – it can just about ruin our experience and make us want to hide while we try to process everything in front of us.
For me, it seems like the more freedom I have with a design project, the scarier, more confusing, and more impossible it becomes to get started.
Of course, freedom in my design work is something I’ve strived very hard to achieve, and I’m very fortunate to have it. But sometimes, with a big, hairy project deadline looming over my head, I almost wish I was a student again, with rigid assignments and a limited scope as to what I could work on.
What’s the solution to this problem? I’ve found that doing something spontaneous to get my blood pumping and my creative energy flowing helps tremendously. Exercise is the most obvious choice here, and I don’t need to tell you how many ills it can help cure besides creative block.
However, there are other options, such as spending quality time with friends or loved ones, working on something else, like a personal project, or, my personal favorite, cooking.
Sometimes, your problem isn’t that you’re frightened into submission by your project. Rather, you’re inundated with too much energy, which can manifest as nervous fidgeting, hair-pulling, or procrastinating by doing meaningless busy work.
This can be just as maddening because you’re not exactly sure where to begin, and you know you should be doing something productive, but you just can’t figure out what.
You may not realize it, but your brain is like clay. Whatever approach you decide to take for your work will leave an impression on your brain for next time. So, if you react to a challenging project with stress, nerves, or excessive anxiety, you’re saving a copy of that reaction in your brain’s hard drive, which will automatically pull up every time you’re faced with a similar dilemma.
In this case, you need a solution that will burn off or diminish some of that excess energy. A calming activity, such as meditation, walking, journaling, or reading, will help soothe your brain and help it focus on the task at hand.
The post How to Get Those Creative Juices Flowing Again appeared first on Speckyboy Design Magazine.
Everybody wants to receive positive feedback for a job well done. That’s one reason why so many businesses include testimonials on their website.
Beyond the warm and fuzzy feelings, testimonials can also help recruit new customers. Knowing that others have had a good experience inspires confidence. In all, it’s a happy little cycle that helps to keep business booming.
In terms of implementing a testimonial UI, simple is often better. That doesn’t mean they have to be boring, however. The clever use of color, layout, and special effects can turn your testimonials into something that stands out.
Let’s take a look at some examples that will give your testimonials a place to shine.
Testimonials are often paired with sliders and carousels for both interactivity and efficiency. Several examples in our collection utilize them. However, this example is unique in its design. While there are standard navigation arrows at the bottom of the feature, clicking on the client photos on either side will also enable you to slide back and forth.
See the Pen Responsive Testimonial Carousel by Md Nahidul Islam (@thenahid)
If you’re looking to add a testimonial section to your page that stands out, it would be hard to top this. First, there’s the animated, color-changing gradient in the background. Second, the use of CSS clip-path
makes for an awesome badge-like look on the images. Even with all of that, the UI is still simple and classy.
See the Pen Responsive testimonial slider by hellokatili (@hellokatili)
For all the CSS purists out there, here’s a solution that doesn’t need a single line of JavaScript. While it’s nothing earth-shattering in terms of looks, that’s actually a good thing. It leaves plenty of room for you to style it to match your needs. In addition, this would fit nicely in a relatively small space.
See the Pen Testimonial Slider Pure CSS by MAHESH AMBURE (@maheshambure21)
This card UI is both simple and beautiful. Each card has its own background photo – presumably to use a client’s photo or logo. CSS opacity
is used to allow enough contrast to place white text on top. It also encourages the use of smaller amounts of content, which is much easier to digest than a longer testimonial.
See the Pen #1574 – Testimonial Card by LittleSnippets.net (@littlesnippets)
The design is what we’re focused on in this non-functioning demo. It goes to show that simplicity can be really effective. The slight angle on the background photo draws your eyes in, while the generous padding around the quote itself gives off an airy feel.
See the Pen Stripe’s Testimonial Widget in Tailwind CSS by Adam Wathan (@adamwathan)
Here’s a different take on a testimonial UI. It’s full-screen, and you have to hover over images to see each person’s respective quote. The look is incredibly sharp, and the transitions are smooth. This could be a nice choice for more artistically focused websites.
See the Pen Testimonial Hover Reveal by Dave Knispel (@daveknispel)
There’s a lot to like in this example. The side-by-side carousel layout makes for an interesting visual effect. Images move to the left as quotes change on the right. Speaking of the quote area, it offers plenty of whitespace and is easy to read. It makes for a package that is anything but typical.
See the Pen testimonial slider , swiper slider by md aqil (@md-aqil)
Another prime example of simplicity, this card layout uses a couple of CSS effects to differentiate itself. First is the slightly-rotated quote mark in the background. CSS transform
is used to break uniformity – in a good way. Also, the color gradient in the footer makes the whole card, dare we say, “pop.”
See the Pen mdJWryR by bradley (@bradleyham)
The whole idea behind collecting testimonials is to demonstrate that you know how to make customers happy. For several different businesses and organizations, they serve as a key selling tool.
When it comes to displaying testimonials on a website, there are several compelling options. The examples above show how color, movement, typography, and layout can all play an important role in building an attention-getting UI. It’s up to you to decide which approach works best for your brand.
Want to see even more testimonial UIs? Take a look at our CodePen collection and discover what else designers are doing.
The post Spread the Word: Beautiful Testimonial UI Examples appeared first on Speckyboy Design Magazine.