SPECIAL OFFER: Only $69 for access to everything in OSTraining for 1 year! You save $75! 
Join today and get access to 1,000's of books and videos. Learn WordPress, Drupal, Magento, Joomla and more! Sign up today!

| WooCommerce

WooCommerce is the most popular way to build an eCommerce site with WordPress.

If you are careful with your product listings, you will want to use the WordPress revisions feature with WooCommerce. This will allow you to keep track of any changes to your products.

With the help of a plugin called PublishPress Revisions Pro, you can do even more with revisons. You can submit, moderate, approve and schedule revisions to your WooCommerce products.

Read more ...

| WordPress

As a web developer or a site builder, you know that there is always something that could go wrong with your site. As an example, here are some scenarios:

  • the site crashes after a core or a plugin update
  • the site got hacked and all information is lost
  • the server crashed and it is not possible to restore the database of your site

Those are all external circumstances and you do not have influence over them. However, making a periodic backup of the codebase and database of your site and sending it to a cloud storage service like Dropbox can help to minimize the impact of such incidents. 

The UpdraftPlus WP plugin provides this functionality.

Keep reading to learn how to use this plugin!

Read more ...

| Joomla

Sometimes when building a new site or making changes to an existing site, you want to have the site online, yet in an offline mode. When a Joomla website is set to offline, the site is put behind a login and special rights are needed to login from the frontend. Super users can login to the frontend but have extra things visible like editing buttons and unpublished articles. If you want to see the site for you client or yourself as a public user, you can setup a special group to use for this function.

Keep reading to learn how.

Read more ...

| WordPress

Revisionary is a WordPress plugin that has been around for nearly 10 years.

Revisionary allowed you to moderate or schedule changes to published posts.

The plugin was first launched in 2009 and had been starting to show its age in recent year. Fortunately, the plugin just had a major new update and it now looks ready for WordPress in 2019.

Revisionary is now called "PublishPress Revisions" but you can still find it at the same place on WordPress.org.

Read more ...

| WordPress

One OSTraining user asked us this week if it was possible to schedule a revision to go live in the future. This would be very helpful if you need to automatically update a Post on a future date.

This is possible in WordPress thanks to a plugin called "PublishPress Revisions". 

PublishPress Revisions is the plugin for managing WordPress revisions and this is one of its most useful features.

  • Install PublishPress Revisions from WordPress.org.
  • Go to Revisions > Settings.
  • On this screen, make sure that the “Scheduled Revisions” box is checked.

 enable scheduled revisions

Now that's done, you're ready to create a scheduled revision. Please note that you can only do this with content that is marked as “Published” status. 

Read more ...

| WordPress

WordPress has one of the most powerful revision systems available on any blogging platform.

When you start writing in WordPress, your changes will be automatically and safely saved. And, if you want to compare your current version of a post to an old version, WordPress gives you an easy side-by-side comparison. The image below shows a revision comparison in WordPress - the old content is marked in red and the new content is in green.

Read more ...

| Drupal

Drupal is a wonderful Content Management System with tons of features that solve many problems for editors and content managers. A developer can take different approaches to achieve the same result, and the Drupal update process is no exception.

It is possible to update Drupal either with Composer, Drush, or manually within the CPanel interface. The first two methods imply that you have at least mid-level experience with the command line and secure shell access to your public host. The third method is more visual and is suitable for developers beginning with Drupal.

Keep reading, if you want to learn how to update your Drupal site with this method.

Read more ...

| WordPress

All deployments of WordPress require an installation of PHP for running WordPress Core and associated extensions, along with a MySQL database for backing storage of your content and configurations.  While configuration of these services is well documented, it can create confusion for the uninitiated and could impact the time required to stand up your site instance.  With the advent of Docker, many Content Management Systems like WordPress can now be shipped with environmental dependencies and software prerequisites pre-configured, allowing you to create a new site instance rapidly that is completely isolated from the host environment. 

Microsoft Azure offers the ability to deploy Azure Resource Manager (ARM) Templates that leverage Docker-Compose to stand up containerized applications in just a few clicks.  Using Docker allows us to create an isolated user environment that fulfills the PHP + MySQL requirement and is portable across any VM for which the container’s source architecture matches the target.  While Wordpress can run directly on an Azure VM or deployed as a standalone Azure App Service, a Docker container is portable across any host capable of running a Docker compatible OS.  Due to this capability, you could lift and shift your containerized application between various cloud providers provided access to a host environment that is compatible with you containerized app.

If you already have a WordPress deployment and are interested in moving your instance to run in a container, you are in luck!  Migrating an existing WordPress instance to an Azure VM running Docker can be done in five easy steps! 

Here is exactly how I did it for my personal blog.

Read more ...

| Web Design

We've already determined that CSS Flexbox is super cool, so let's look at mixing in another super cool CSS tool. Custom Properties (also known as CSS Variables or Cascading Variables) are entities that allow you to assign a value in one location and then simply call it as a variable everywhere else. So, changing the value in one place changes it everywhere the var() function refers to the property, no more Find and Replace needed!

Basically this is a two part operation:

  • You define the value of the custom CSS property (eg. --color1: #ff00ff;, --width: 25%; or --box-padding: 10px;)
  • You refer to this value within the var() function throughout your CSS (eg. color: var(--color1);, width: var(--width);, padding: var(--box-padding);)

So they are not really variables, but custom properties. For the sake of understanding, this tutorial will use both definitions. 

You can create multiple custom property values, and use them across multiple stylesheets, using the @import rule, for example. Another use case is to apply CSS variables within media queries, to alter the layout and make it responsive. 

This tutorial will explain the use of CSS variables (custom properties) with CSS Flexbox, by creating a grid-like layout. 

Let’s start!

Read more ...

| WordPress

The Easy Image Collage plugin for WordPress allows you to create image collages within your WordPress site and use them everywhere, either on a post, page, or custom post type. 

The plugin is compatible with both the Classic WP Editor and the Gutenberg Editor. Furthermore, it is possible to embed unlimited collages to any post or page, drag the images to accommodate them within their spot in the collage, and to add a Pinterest button to share the collage. 

In this tutorial, we will explain the functioning of this module. Let’s get started!

Read more ...

| Drupal

Drupal is well known for its stability and security out-of-the-box. However, we all know how dangerous the internet can be with all the risks of having your site attacked. There are particular situations in which an extra security measures are needed. This tutorial will deal with specific ways to secure your Drupal site, and the modules involved in this process. 

Let’s get started!

Read more ...

| Drupal

Your local websites are always developed within the same operating system, that is the operating system of your machine (Windows, OSX, Linux). However, the online version of your site is probably hosted on some type of Linux server. Vagrant allows developers to have the conditions to replicate these systems within a Vagrant box. There are multiple kinds of boxes since Vagrant is a very popular alternative amongst developers. One of these boxes is called Scotch Box. Scotch Box is a preconfigured Vagrant Box with a LAMP (Linux, Apache, MySql, PHP) or a LEMP (Linux, Apache/Ngnix, MySql/MongoDB, PHP) stack in it.

This tutorial will explain the basic installation of these tools. Keep reading to learn how!

Read more ...

| Joomla

Session Lifetime

By default, Joomla has a 15 minute session time for logged in users, meaning if a user goes inactive for more than 15 minutes, they are automatically logged out and need to enter their credentials again. But, sometimes you need longer session times, for instance, when you are developing a site and don’t want to be logging in over and over. Or, maybe you have some very long forms for logged in users to complete and you don’t want their session expiring before they can hit the submit button.

So, let’s take a look at changing the session time in the backend of Joomla.

Read more ...

No matter what CMS you might be using, WordPress, Drupal, Joomla, Magento, etc., it's of benefit to learn some CSS to make sure you can carry your branding through your site. Buttons on websites are a bit more complex to style, but they really give the site a finished and polished look when you customize them to fit your look and feel.

The <button> tag describes a clickable surface, which triggers an action, a JS method or event when clicking on it. Buttons provide interactivity in your site, that is why they should always be associated with a script (that is not always the case, as we will see later).

You are allowed to embed text and images into a <button> element, in contrast to the <input type=”button”> element. Buttons can be embedded in all HTML content categories, including <form> elements.

Keep reading to learn more!

Read more ...

| Drupal

Some different modules and plugins can alter the display of a view in Drupal, for instance, to alternate the order of image and text every new row, or to build some kind of stacked layout. 

It is possible to alter the display of a view with just some lines of CSS code instead. This approach has many advantages, being the fact of not having to install and update a module, the most relevant one.

Keep reading to learn how!

Read more ...

OSTraining’s tenth anniversary is coming up on November 18th!

This is a meaningful milestone, and we owe a huge “Thank You” to OSTraining’s members, viewers and readers. You made this decade possible. Some of you have been with us since even longer - since 2006 and 2007, when we first started training.

Read more ...

Join today and get access to 1,000's of books and videos. Learn WordPress, Drupal, Magento, Joomla and more! Sign up today!