Mugo Web main content.
Multi-class attribute filter

Extended attribute filters: advanced content retrieval in eZ Publish

Retrieving content is one of the most common use cases when working with a content management system. eZ Publish provides a powerful way to retrieve content with its fetch functions. Although it provides a powerful framework for filtering and sorting the content based on a wide range of criteria, sometimes you need to extend the framework. Adding new filters to fetch functions is achieved by using extended attribute filters.

Book display

ONIX websites: your bibliographic data and the Mugo ONIX Bridge

In the world of books, book publishing and bookselling, the metadata exchange format “ONIX” is the preeminent method of communicating information about a book. In spite of the fact that ONIX is a rather flawed standard and protocol for exchanging bibliographic information, it is the standard which everyone has settled on. Mugo has been working with ONIX since 2003, first building a freely available ONIX management system as a proof of concept for the Centre for Canadian Studies in Publishing at Simon Fraser University and most recently building a turn-key system for an ONIX website - that is - an ONIX powered website.

Contribute back

Why and how to start contributing to an enterprise open source CMS community

Open source communities rely very strongly on the community to advance the software in question. eZ Publish adds the "enterprise" part to "enterprise open source content management system" by not only targeting larger enterprises but by also adding a company vendor -- eZ Systems -- behind the software. This helps spur development forward on a consistent pace. However, there is still immense value in having the implementation partner companies contribute their code and insights. Contributing back might not be a natural thing for the partner companies to do; if you're such a partner company, here's why you should and how to do it.

Mugo communication tools

5 essential communication tools for a web development company

As a web development company, we spend a lot of time deep in code, implementing solutions.  However, essential to our success is the proper use of additional administrative and communication tools to keep organized, to run smooth projects, and to interact with clients.  Skype, Dropbox, GitHub, and Google Apps are ubiquitous in the industry and embedded in our daily work.  An additional set of less obvious tools are also just as important to our work.


Running contests within a content management system to engage visitors

Rasmussen Reports runs a contest where visitors have to guess what an upcoming public opinion poll result will be.  Participants get points depending on how close they are to the actual result.  A new question is asked every week, making for a fun, recurring way for visitors to interact with site content. Here's how we developed the contest on top of an eZ Publish extension called eZ Survey.


eZ Publish websites for publishing companies

Over the years we've worked on many websites in the publishing industry. Each has a unique set of requirements and challenges, but we've been able to refine and re-use a set of tools and best practices. These make up what can be called a "publishing package" built on top of the eZ Publish framework.


Using a preview siteaccess as an eZ Publish content staging solution

Using eZ Publish's siteaccess system combined with hidden nodes, you can quickly create a flexible content staging solution.


10 ways to improve editors' lives in eZ Publish

Optimizing the editorial experience in a Content Management System is a continuously evolving task. The challenge is to make the CMS an enabling tool to help editors publish content as efficiently as possible. In many organizations, specific requirements at each publishing step can be complex and dynamic. Here are 10 built-in tricks, ways to extend the interfaces, and ready-made custom extensions to unleash the power of eZ Publish content management.


Splitting a Subversion repository into multiple repositories

Having multiple projects stored in one Subversion repository is a challenge if you want to move one of the projects to another repository. Also, over time, moves and deletions can bloat the size of your repository with obsolete, unused data. In this article, we will show you how to extract SVN projects to their own repositories, preserving full commit histories.


Making custom content scripts more efficient in eZ Publish

For those who write long-running scripts in eZ Publish to perform operations (move, rename, update, and so on) on many content objects, here are a couple of quick tips to speed up the scripts and make them more efficient.


Keeping URL clean aliases

I noticed a while ago on a client's website about Canadian books that some of the book nodes would have their url_alias broken and the url /content/view/full/<node_id> would be shown instead of the nice url. Running the updateniceurls.php would not solve the problem so I had a look at it and tried to see what could cause the problem and realized that the two tables ezcontentobject_tree (containing the node information) and ezurlalias_ml (containing the url_alias path parts) had different data for the same node.


Fixed positioning of page elements while scrolling

We recently implemented two different designs where the menu remained fixed to the edge of the screen as the user scrolled. One case involved vertical scrolling and the other involved horizontal scrolling. Each had a subtle challenge and both were fun to work on!