Mugo Web main content.

In-depth insights on content, code, and creativity

Building a development environment from a production website with Vagrant and VirtualBox

When it comes to local development environments, in a lot of cases Mugo uses VirtualBox images and manages them with Vagrant. These environments are sometimes created after the production environment has been set up. To make a local development environment as similar to production as possible, one approach is to actually copy the production server.

LEARN MORE

Image aliases and filters in eZ Publish 5.4+

As of eZ Publish 5.4 / 2014.11, there is a new way to define custom image filters and image aliases. This is because image alias generation is now using LiipImagineBundle, with the underlying Imagine library from avalanche123. In this post we will review the old and new ways of configuring image aliases and filters along with a useful example.

LEARN MORE

JavaScript and CSS caching best practices with ezjscore and eZ Publish

A good caching system keeps elements in the cache as long as possible, but clears them as soon as the elements are updated. For content pages in eZ Publish and most content management systems, "purge-on-publish" features are well documented. When it comes to JavaScript and CSS files, there are usually different caching systems involved, and these are important to configure. Otherwise, you'll end up with the all-too-familiar problem of a broken front-end on deployments, where the only fix is to have users do a "hard refresh" (CTRL+F5) in the browser.

LEARN MORE

Integrating the Dropbox Chooser with eZ Publish

When working with a CMS, you might decide to store some files in Dropbox rather than in the CMS for several reasons, including storage, workflow, and performance considerations. The Dropbox Chooser is one of 2 Dropbox Drop-ins. The "Chooser" enables users to generate a file link from a Dropbox account, and the "Saver" enables users to save a file to a different Dropbox account. The Chooser is often most useful for CMS editors.

Using the Dropbox Chooser with the eZ Publish Administration Interface saves editorial staff a lot of time by giving them direct access to the file links they need without having to jump between Dropbox and eZ Publish. The Chooser UI also allows you to upload files to a Dropbox account, making it even easier to get everything done within one operation.

LEARN MORE

Multi-language sites in eZ Publish: requirements analysis

eZ Publish has had multi-language features (also called "internationalization") built into its core for over a decade. If you're considering building a multi-language eZ Publish website from scratch or to add additional languages to a single-language eZ Publish site, there are many technical details to be aware of. However, before you begin, it's important to develop a list of requirements for how end users and editors will use the languages on the site.

LEARN MORE

eep in action: eZ Publish command line operations

eep (Ease eZ Publish) is a command line tool we introduced in a previous post, which in combination with other command line tools like awk, grep and xargs makes for powerful one-liners. The examples in this post will highlight its versatility and show just how quickly and conveniently eZ Publish related tasks can be accomplished using eep. Get ready for some command-line fun!

LEARN MORE

Securing eZ Find's Solr installation

When using eZ Publish's eZ Find extension on a public facing site or project -- arguably any project -- it is vital to secure it to prevent unauthorized access and potential data loss. eZ Find is powered by Apache Solr, an open-source search server based on the Lucene Java search library. Its power and flexibility make eZ Find a great tool when working with a lot of content in eZ Publish.

There are a number of ways a Solr installation can be secured. We'll look at BasicAuth via Jetty UserRealms and iptables firewall rules in detail.

LEARN MORE

VirtualBox virtual machines with Vagrant and Ansible for website development

Vagrant and Ansible are tools to efficiently provision virtual machines (also called VMs or simply boxes).

This blog post will begin with a short discussion of why one would invest the time to use these tools, then cover the required software, an overview of how Vagrant works with VirtualBox and the use of Ansible to provision a VM.

LEARN MORE

Managing Salesforce and HubSpot storage and API limits

Using HubSpot together with Salesforce, you can tie your inbound marketing campaigns to your customer and lead records for a nearly complete view of every user interaction with your business. (Add some analytics and you're all set!) However, with so much data syncing going back and forth, you must take care not to go over your storage and API call limits in Salesforce. Surprisingly, data overage charges are not cheap, and if you use up your API call limits, not only will your data stop syncing between HubSpot and Salesforce, but other systems -- such as your website -- will not be able to access and update important data.

LEARN MORE

Mugo Image Server for eZ Publish: a scalable, flexible solution

In order to increase the image serving performance of high-traffic websites and improve the editorial user interface around image management, Mugo Web came up with an alternative way to serve content images in eZ Publish.  It is aptly titled the "Mugo Image Server for eZ Publish".

LEARN MORE

Built-in Varnish Cache "purge-on-publish" support in eZ Publish

eZ Publish 5 comes with built-in Varnish Cache support. Essentially this means that when content is published in the eZ Publish back-end, it notifies Varnish so that the Varnish cache is cleared. This feature is often called "purge-on-publish" and makes it so that you can cache your pages for a very long time, but that edits refresh the cache and thus appear immediately. To get this native support, you just have to use the "new stack" in eZ Publish. However, even if your legacy site is not ready to be fully upgraded to the new stack and you are running eZ Publish 5 in "legacy mode", you can take advantage of this native support.

LEARN MORE

Marketing automation technical review: Marketo versus HubSpot

Some time ago I wrote a blog post about integrating Salesforce and Marketo in a web marketing solution powered by a content management system (in this case, the eZ Publish CMS). Recently, Mugo had the opportunity to migrate one of our clients from Marketo to HubSpot. The decision to move to HubSpot was made for non-technical reasons; regardless, it is useful to review the technical differences and challenges when it comes to integrating the marketing systems with a content management system.

LEARN MORE