Mugo Web main content.
Straight double quotes to curly double quotes and straight single quotes to curly single quotes

Automating “curly” quotes in rich text fields

One of our clients recently came to us with an interesting problem. When end users type content into a rich text field, double quotes, single quotes and apostrophes are not “smart.” That is, the quotes and apostrophes are straight instead of curly — typographically speaking, they are inch and feet characters.

An editor might type this:

  • J. R. R. Tolkien wrote "The Lord of the Rings," a trilogy of novels that serve as a sequel to Tolkien's "The Hobbit."

But really want this:

  • J. R. R. Tolkien wrote “The Lord of the Rings,” a trilogy of novels that serve as a sequel to Tolkien’s “The Hobbit.”

Here's how we created a script to automate search and replace for curly quotes and implemented an easy-to-use button in the client’s CMS to run the task.

LEARN MORE

Custom tags in eZ Platform with legacy bridge without XSL

In a previous blog post we covered how to create custom tags in eZ Platform (with the legacy bridge or eZ Publish 5.x). The most difficult part of that process was building the XSL to output the custom tag HTML. But there's a simpler way to do it, which allows the developer to use Twig template code instead of XSL.

LEARN MORE
Image of eZ Publish and SELinux

Enabling SELinux to keep your eZ Publish / eZ Platform website secure

Dealing with permissions and security systems such as Security-Enhanced Linux (SELinux) is an issue that seems to challenge many developers. Some enterprise Linux distributions like Red Hat and CentOS come with SELinux enabled by default, but not knowing how SELinux works can lead developers to disable it. This is a mistake.

LEARN MORE
Image showing a Facebook Instant Article

Integrating Facebook Instant Articles into eZ Publish / eZ Platform

Facebook's solution to speed up mobile web page loading is called Facebook Instant Articles (FBIA), and it's only available to Facebook app users. Here's a look at how to integrate FBIA into eZ Publish / eZ Platform.

LEARN MORE
Code snippet screenshot

Injecting content into rich text fields at the template level in eZ Publish / eZ Platform

On content heavy sites, it can be useful to inject snippets of code into CMS data before display (for example, into the body copy of an article). These snippets could be automatically generated glossaries, tables of contents, or ad units, placed mid-content.

Let's explore a general approach to getting such snippets into place.

LEARN MORE

Building a custom REST API to synchronize content in eZ Publish

eZ Publish allows you to develop custom REST APIs to transfer data among different platforms. This "getting started" guide will show you how to build and integrate a REST API into an eZ Publish installation by developing a custom module view that returns a JSON object.

LEARN MORE

Integrating Google AMP into an eZ Publish site

Accelerated Mobile Pages (AMP) is Google's technology designed to create fast mobile pages. AMP allows developers to take advantage of fast rendering and improved performance. Here's a look at how it can be integrated into an existing eZ Publish website.

LEARN MORE
Metadata and better image quality doesn't improve your understanding of this image

Image optimizations in eZ Platform and Symfony: JPEG quality and stripping image metadata

Your eZ site might be serving megabytes of unnecessary image data on every page load. Do your users and your SEO rankings a favour: strip image metadata and set a reasonable image quality setting for your image aliases!

LEARN MORE
solr & cent os logos

Installing eZ Find's Solr on CentOS 7

To set up Apache Solr -- the search platform that powers eZ Publish (through the eZ Find extension) and eZ Platform -- as a service on CentOS 7, you have at least two options. We’ll cover both: a manually created service for the new systemd as well as the older SystemV -- via the service script included with eZ Find.

LEARN MORE

A simple Sass integration for eZ Publish

Working with CSS preprocessors like Sass or Less is much more fun than working with pure CSS. Here's a simple shell script to integrate Sass into your eZ Publish project.

LEARN MORE
Breaking through... the cache

Simple, automated cache busting JavaScript and CSS in Symfony with eZ Platform and eZ Publish 5.x

In eZ Publish 5.x and eZ Platform, we use Assetic to manage a website's JavaScript and CSS. By default, if you make a change to your JS or CSS files, the resulting file name ends up the same. This has some undesirable cache implications that vary depending on whether you're using a reverse proxy or CDN, how you've set up browser caching rules, and more. Here's a simple way to version the file names, while still being able to cache the files as much as possible.

LEARN MORE
Self-test checklist

Efficient QA workflows: a checklist for testing your own code

Not all of the burden of testing website code lies with automated tests, a QA team, or the end client. There is a lot you can do as a developer to test your own website code and make sure it is as good as possible before passing it over to someone else or an automated system. At Mugo, we've developed a simple and general checklist to follow, in order to make "self-testing" a key step in the QA workflow.

LEARN MORE