Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
MODx Web Development - Second Edition
MODx Web Development - Second Edition

MODx Web Development - Second Edition: Build dynamic websites with MODx PHP application framework and CMS

eBook
$22.99 $25.99
Paperback
$43.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Redeem a companion digital copy on all Print orders
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

MODx Web Development - Second Edition

Chapter 1. What is MODx?

MODx is a content management system and an application framework. MODx makes it quick and simple to create websites that are interactive and that can expose different functionalities, depending on the kind of user visiting the site. The creation of all of this is made possible without the user having any coding background as many of its powerful features work out-of-the-box, without any code changes. MODx and its shipped components are modular and well-abstracted so that the same components provide multiple behaviors, which are determined by how the components are used.

Content management system


A content management system (CMS) allows you to do the following:

  • Manage content

  • Set content management rules

  • Define content

Manage content

Managing content means allowing a user to create, publish, edit, and organize content. A good CMS assumes that the user has no technical knowledge. Hence, it provides an easy-to-comprehend user interface for managing content. A flexible CMS will maintain ease of use, even for a novice, and yet give much flexibility to the professional. Publishing the content must extend beyond just displaying the content, and should include designing how the content is shown, making the content accessible, and allowing easy search of the content, based on various criteria.

Content management rules

Content management rules allow the management of content to be delegated and distributed from just one user to many. Different access levels can be granted to different groups, and users can belong to one or more of the defined groups.

Define content

Managing content is fine, but what exactly is content? A good CMS allows the end user to define what content is. Content can be anything! It can be raw text, pictures, videos, music, or a combination of a few, or all, of them. A necessity in any CMS is to allow the user to define the possible types of content and give such types a name.

An application framework


An application framework is an integrated platform that makes the process of developing and maintaining applications a lot simpler. Often they support a certain development methodology and provide interfaces and tools to make the development rapid and agile.

An application framework serves the following two primary purposes:

  • Reusable program components: Any code that has been written once should be available for use within the same application, and in other applications too. This is called reusability. Generally, high reusability is achieved by careful planning and adherence to an objected-oriented paradigm. An application framework reduces the overheads in developing such reusable program components, and handles many of the coding overheads internally.

  • Abstracting logic from presentation: In a simpler sense, separating logic from presentation means separating any programming code from the formatting of whatever is finally rendered to the end user (presentation). Ultimately, what a browser can render is generated by the presentation layer and is known as the Document Object Model (DOM). The DOM has a structure, presentation, and behavior. Structure is generally defined by HTML, the presentation by CSS, and behavior by using JavaScript. Separation of logic from presentation means keeping everything that belongs to the DOM away from actual code. Application frameworks help in achieving such a separation by providing what is generally known as templating languages. MODx also allows the separation of logic from presentation, but how it helps you to do this is quite different from what is commonly known among developers as templating.

Web development methodologies


The development of websites has evolved over the years. They initially originated from simple hyperlinked pages that provided a wealth of information, evolving to complex objects being exposed as URLs at runtime. When wanting to develop a site, there are multiple options that one may choose for development. A briefing on the most widely known methodologies follows.

Old school—conventional three tiers

The 'old school' approach is to use a programming language to create a complete site or application from scratch without using any third-party templating system or framework. In this method, there are three layers:

  • Client-side

  • Server-side

  • Database access

In this architecture, a user requests a page. Every request is processed by executing an appropriate server-side script. A server-side script is any piece of code that is processed and that helps the server to send a response to the client. A common example of a server-side language is PHP. All code that executes in the user's system or the client's system is called client-side script or language. HTML and JavaScript are such client-side languages, as they are processed and rendered by the web browser on the user's computer. Whenever needed, any stored information is fetched by the server-side script from the database, and any new information is saved in the database. This approach is called the Three-Tier Architecture as, generally, the activities of rendering output, processing the script, and manipulating the database are spread across three layers of systems.

Advantages of the conventional three tiers

One advantage of the conventional three-tier architecture is that it has fewer dependencies. Generally, the only real dependency for such sites is the language itself and the database, if used. Hence, they can be run in any environment that supports the language and, if necessary, the database server. This advantage looks minimal considering the other overheads and the increasing support for CMSs and frameworks among the hosting providers.

The only restriction on what you can do is the limitation of the language itself. Coding everything from scratch, along with the overheads, also brings the flexibility of doing anything exactly the way you want. The only limitation on what can be done and what cannot be done is what is imposed by the language itself. Again, this is not a real advantage as the emerging technologies are being built so abstract that they impose almost no restriction themselves.

The conventional three-tier architecture can be used to develop new development methodologies. Whatever the framework of the CMS may be, beneath the surface, they must all follow the same core rules. Hence, something about these systems takes care of handling requests and generating responses at the lowest layer, which the developer need not worry about. The components that take care of such activities are themselves coded in the conventional three-tier architecture.

Disadvantages of the conventional three tiers

Having to reinvent the wheel is a big disadvantage of the conventional three-tier architecture. Any big project will have a common set of functionalities that are repeated. Many projects have, in fact, emulated an existing CMS or framework in the process of building their own tools. This is just repetition of work and time that could have been spent more productively. Most projects written in the conventional three-tier method end up reinventing the wheel, at least for the concepts of "formatting output" and "database abstraction".

Another disadvantage is that the three-tier architecture is error prone. The language allows you to get things done. It doesn't check if they are done cleanly or not. Hence, it is very simple to write code that gets something done, but not so easy to write clean code that gets the same thing done, even in the worst conditions.

The three-tier architecture is also difficult to maintain. It could be said that code is more read than written. And with this approach, because HTML is mixed with server-side code and appears messy, it is hard to read and maintain such code. Also, if the custom-written libraries are not well documented by the developers who wrote them, then the maintenance becomes even harder as one must read the code to understand its functionalities.

URL mapping becomes complex with the three-tier architecture. It must be noted that in most cases, the job of a server-side script is just to generate client-side output that can be rendered in the browser. So, when such an HTML page with further possible actions is created, the server-side script must be able to generate navigational elements and carefully map the links to a server-side script that can handle the particular request. That is, it has to map a URL to server executable code. This can become tedious to maintain as the site grows, or when a new team is introduced to maintain the code.

Security becomes problematic with the three-tier architecture. The language may have security vulnerabilities, such as SQL injection. Alternatively, there may be security bugs introduced by the programmer. Because, in this approach, all of the functionalities are taken care of by the programmer, there must be strong security testing for all developed functionality and different combinations of use-case scenarios. It is also possible that certain situations can go unforeseen. Writing secure code in such an architecture requires strict discipline, and is laborious.

Templating

Templating is the idea of using files that are very similar to regular HTML files, to render output. These template files have what is known as variable replacement, or commands, similar to a programming language, called directives, that can be inserted within HTML. Hence this approach clearly separates what is called presentation from logic. Apart from this single concept, everything else is the same as the approach mentioned above. Templating also inherits all of the advantages and disadvantages mentioned previously. The ones in addition to those already mentioned are listed below.

Advantages of templating

One of the main advantages of templating is that view is separated from logic, as explained in the previous figure.

Disadvantages of templating

One of the main disadvantages of templating is that there is a small learning curve for a new templating language. Every new templating language introduces a new syntax and, hence, a small learning curve. The time it takes to learn a templating language depends on the complexity of the system. However, a programmer can generally start using a templating language with just the reference guide or cheat sheets.

Application frameworks

Application frameworks are systems built on top of a programming language to let the developer focus only on the logic of the application. The framework takes care of the other repetitive work. All frameworks at least have the well-known features of "URL Mapping", "DB Abstraction", and "Templating". How each of these is implemented internally is specific to the framework. Every framework also exposes a methodology, the most famous of which is called MVC, which stands for Model, View, and Controller. The framework itself will contain documentations and libraries for frequently used functionalities, thus making the developer's work easier. Every framework also tries to ensure cross-browser compatibility, cross-platform support, and many other clean practices, most importantly the RESTful approach.

Note

For more information on RESTful practices, read www.xfront.com/REST-Web-Services.html.

Advantages of application frameworks

One of the main advantages of application frameworks is that there is a high reusability of code. Frameworks encourage architectures where a higher reusability of code is possible. They also provide enough APIs to do the most common tasks, so that developers don't have to rewrite them.

Application frameworks provide clean practices at no extra effort. Most frameworks follow clean practices, and because they allow you to take care only of the logic, the internals are handled by the framework. Hence, while you may not even know it, you have generated applications that adhere to clean practices!

Application frameworks have good testing mechanisms. Generally, application frameworks also provide some kind of helpful mechanisms to make testing easier. Most MVC frameworks auto-generate test files, or at least generate a very useful skeleton for each unit of functionality being implemented.

In application frameworks, view is separated from logic, which is similar to using a templating language. Most frameworks allow a mechanism for separating view from logic. Some frameworks do this by using a templating language that the framework understands. But this is only one way of doing it, and many frameworks follow different approaches to achieve the same outcome.

Database abstraction means writing a system in such a way that if you were to only change the database server that stores your data, your system would still work without any necessary code changes. Also, most frameworks have an implementation of the concept of Object-Relational Mapping (ORM), which allows the developer to manipulate the database as objects and provide a simple syntax to achieve complex queries.

Disadvantages of application frameworks

When working with application frameworks, there is a big learning curve in understanding the development methodology that the framework understands and expects you to follow. Getting used to a new development methodology can take some time.

All application frameworks have framework-specific syntaxes for a lot of functionalities that they expose. It takes some time to be able to get to the exact documentation when you need it.

Most MVC frameworks have a single templating system, or DB abstraction layer, already defined that you have to use. For some applications, this might be a limitation, or maybe you just prefer something else. This is a small disadvantage. Certain frameworks, like "Catalyst", allow developers to choose individual components as well.

Content management systems

Content management systems are a very interesting idea. The focus of any content management system is that the end user must be able to create websites that can be self-maintained without any programming knowledge. A CMS makes it simple to create the kind of sites that are generally known as Web 2.0. Web 2.0 simply means sites in which the content is being displayed is created by the end users and not the developers of the site. There are numerous content management systems, and each has its own exposed architecture. To use a content management system, one must understand the basics of the particular system, and then comprehension and insight into how one performs development using that particular system. Hence, one can quickly start creating powerful and dynamic websites.

Advantages of content management systems

When using a content management system, often the only thing that is required to build the site is to let the system know what type of content you want, how you would like it to be displayed, and who can do what. Almost everything else is handled by the system. This allows the developer to focus on the key areas of any website, which are the content itself and its presentation.

Most content management systems come without the prerequisite of needing to know a programming language. Although knowledge of the language helps in many ways, one can still build powerful and custom sites without any prior experience. Moreover, all CMSs are so user-friendly with onscreen help and wizards, that you have all that you need to get started right in front of you. Perhaps, simplicity is the keyword for any CMS. Of course, the simplicity mentioned here is what is called pseudo-simplicity, where a complex system hides within itself all of the complexity but exposes a simple usability.

Content management systems come with the necessary demonstration templates and sample pages that can be used to quickly kickstart the website. In most CMSs, almost without any effort, you have the baseline to start with, and all that is left to do is customizing the site to your requirements.

Disadvantages of content management systems

Simple sites are alright, but when the requirement grows, creating everything with what is already available requires a new mindset. Often, the biggest hurdle that developers find in getting used to a content management system is that everything is defined as content and not objects or functions. So every component that is available for download speaks in terms of what it does with the content. It is often necessary to use multiple components to get what you need. This is the case with any well-abstracted system; it takes a new mindset to learn it!

Many CMSs introduce the requirement of some templating language to be able to customize the look and feel of the site. In such cases, there is an overhead of learning the templating language, as well as learning how to use the templating language to create a new look and feel within the CMS used.

A big disadvantage of a CMS is that you are restricted to the functionalities provided by the CMS. Depending on the exposed architecture, there could be practical limitations on the extendibility of the CMS. Certain CMSs cannot be extended much beyond what they already have to offer. Certain CMSs can be extended a little, but not by much more. Some CMSs can be extended, but only at the cost of learning complex APIs and methodologies that are specific to the CMS. There are also some CMSs that allow extendibility with just the knowledge of the programming language in which they were written.

Why MODx?


As the following diagram shows, MODx breaks the limitations that are generally found in CMSs and yet provides the simplicity necessary to quickly start developing.

Why a CMS?

Content management systems are used when one wants to create a site that can be self-maintained. It really does replace a programmer for maintenance. The websites for most companies have simple workflows, if any. And there are a lot of individuals who would like to have a website for themselves, just like everyone wanted to have a business card. Content management systems avoid having to pay professional rates for simple websites when you can create and maintain such sites yourself. You might want to use a professional to initially create the website, but still maintain it yourself in order to provide a quicker turnaround time in updating new content. These are situations where a CMS like MODx provides a solution.

Why an application framework?

Application frameworks take over where the limitations of CMSs begin—when you want more than what is possible. To use any application framework, you must know the language it uses. But if you really want to develop, then you better be a programmer—but a smart one who lets the system handle "the obvious things"!

So, why MODx?

MODx provides the ease of a CMS and the extendibility of a framework, which is made possible by exposing a new architecture that is both easy and flexible. It is possible to create very complex and custom sites in MODx. Hence, one can start developing a complete site in MODx without any programming knowledge and use expertise only for the elements that need programming skills, if they are needed.

Another interesting concept of MODx is how it handles templating. Unlike most CMSs available, there is no need to learn any templating language in order to introduce a theme to your site. Hence, it does not even have the small learning curve of a templating language.

MODx is designed to be intuitive; hence, it is easy for anyone to understand how to create sites quickly and effectively. Once you have learned the basics, you will realize that the experience keeps getting better.

MODx administration is AJAX-driven, giving you the ability to manage the site with abilities that are very user friendly. Sites created with MODx can also have AJAX-enabled features without much effort. Many built-in snippets, such as the AJAX search snippet available for MODx, come with interesting AJAX functionalities that can be used out-of-the-box.

MODx is search-engine friendly, which means that it has everything to help you get your site listed on Google or any other famous search engine.

MODx is an open source project and, like most open source projects, it has strong community support. There are countless places from which to get help when you are stuck, and almost all queries get answered within a day. Moreover, having community support means that support will keep getting better.

All of this makes MODx suitable both for a casual developer who would like a quick site and also for serious developers who want something easy to start with and the option to build sophistication gradually. MODx uses an architecture that helps to overcome most of the disadvantages mentioned under application frameworks and CMSs while retaining their advantages.

Overview of the book


This book teaches you how to use MODx to create powerful, dynamic websites, even without the knowledge of a programming language. It leads you step-by-step, in a logical pattern, through building a complete website. Each chapter covers certain concepts, and includes simple examples. All of the examples, if you follow along, aggregate to a self-created website. The book also includes a chapter dedicated to the serious programmers who would like to extend what they can do with MODx.

This book can also be used as a reference or to relearn the particular concepts that have been discussed in each chapter. It has illustrative examples, wherever necessary, to make sure that it is friendly. It has a mixture of simple demonstrations and in-depth concepts that will interest both casual and serious readers.

Summary


In this chapter, you have learned the general concepts of web development and also been assured as to why MODx, as a tool, is a good choice for developing your website. The various development methodologies, especially a CMS and a Web Application, Framework have been explained. With these briefings on the fundamentals, you should have a clear understanding of what MODx is and why you would want to use it.

Left arrow icon Right arrow icon

Key benefits

  • Build a complete, feature-rich website using MODx
  • Covers detailed theory from the basics to practical implementation
  • Learn the most common web requirements and solutions, and build a site in the process
  • Simple, step-by-step instructions detailing how to install, configure, and customize MODx

Description

MODx is a content management system and PHP web application framework rolled into one. With the ease of a CMS and the extendibility of a framework, MODx allows you to develop professional-looking, intricate websites with its easy-to-use interface and flexible architecture. MODx provides reusable code fragments called snippets, most of which are so generic that, without any modification, they can serve multiple functionalities. The generic nature of the snippets makes it possible to get the perfect customization that is so hard in other CMS. This book will get web developers up-and-running with MODx. With step-by-step examples and illustrative screenshots, you will be guided through installation, configuration, and customization. By the end of the book, you will have created a powerful, dynamic website by using the individual elements of MODx, without the need for programming know-how. Starting with a walk-through of how to install MODx, you will quickly learn how to develop your site without having to use any programming language. Logical, step-by-step instructions will show you how to create your own unique site by adding and editing documents using the inbuilt TinyMCE editor. You will change the look and feel of your site by creating your own templates using HTML, CSS, and widgets. By following the example of a blog site, you will learn how to extend your templates to allow rich user interactions through comments, posts, and forms. The book teaches a few code snippets such as Ditto and Wayfinder in detail. These powerful and flexible snippets will enable you to add multiple functionalities to your site. The book will also introduce you to many more snippets that will help you build some of the commonly required web functionalities such as forums and image galleries. You will manage your users with authentication and authorization and make your site user-friendly with user groups, forums, and the use of PHx notations to embed logic in templates. Through following this easy-to-use, step-by-step guide you will, by the end of the book, have a fully functional, feature-rich MODx site with professional-looking, dynamic web pages that are totally customizable.

Who is this book for?

This book is ideal for newcomers to MODx. Both beginners and experienced web developers will benefit from this comprehensive guide to MODx. No knowledge of PHP programming or any templating language is needed, but the more advanced chapters towards the end of the book will allow more confident developers to extend their applications even further by creating their own snippets.

What you will learn

  • Set up a working platform for developing websites with MODx
  • Edit resources on your website, place them within containers, and change their properties using MODx Manager Interface
  • Create, edit, and manipulate resources on your website, and manage their configurations using the TinyMCE editor
  • Edit and modify resources without having to know HTML using the HTML editor (WYSIWYG editor)
  • Build your site to include user registrations, logins, and user types, and set rules on who can do what
  • Modify the NewsEditor snippet to allow posts from only the authenticated users
  • Create aggregation and feeds and learn how to create feeds for separate categories using a snippet called Ditto
  • Create lists of all the resources dynamically in MODx and learn how to present them as menus using the Wayfinder snippet
  • Install and use snippets, and learn to navigate their custom functionalities
  • Learn the powerful templating language PHx to extend logic to templates
  • Learn to create your own snippet for unique functionalities
Estimated delivery fee Deliver to Colombia

Standard delivery 10 - 13 business days

$19.95

Premium delivery 3 - 6 business days

$40.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Feb 23, 2011
Length: 288 pages
Edition : 1st
Language : English
ISBN-13 : 9781849513487
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Redeem a companion digital copy on all Print orders
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to Colombia

Standard delivery 10 - 13 business days

$19.95

Premium delivery 3 - 6 business days

$40.95
(Includes tracking information)

Product Details

Publication date : Feb 23, 2011
Length: 288 pages
Edition : 1st
Language : English
ISBN-13 : 9781849513487
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 87.98
MODx Web Development - Second Edition
$43.99
Learning jQuery - Fourth Edition
$43.99
Total $ 87.98 Stars icon

Table of Contents

14 Chapters
What is MODx? Chevron down icon Chevron up icon
Getting Started Chevron down icon Chevron up icon
MODx Basics Chevron down icon Chevron up icon
Templating Chevron down icon Chevron up icon
Authentication and Authorization Chevron down icon Chevron up icon
Content Aggregation Chevron down icon Chevron up icon
Creating Lists Chevron down icon Chevron up icon
Snippets Chevron down icon Chevron up icon
PHx Chevron down icon Chevron up icon
Simple Recipes Chevron down icon Chevron up icon
Creating Snippets Chevron down icon Chevron up icon
SEO, Deployment, and Security Chevron down icon Chevron up icon
Plugins and Modules Chevron down icon Chevron up icon
MODx Revolution Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Half star icon Empty star icon Empty star icon 2.8
(5 Ratings)
5 star 0%
4 star 20%
3 star 60%
2 star 0%
1 star 20%
Marcin Dancewicz Oct 15, 2011
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Great book for web developers who want to learn MODx. It explains all you need to know to start building websites with this script. You need to have some web development knowledge to find it useful. One dissapointment though - it doesn't say much about MODx Revolution.
Amazon Verified review Amazon
旅モバ May 26, 2013
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
本書はまずサンプル版を読んでいただくことをお勧めしたいのですが、MODx Evolution向けの電子書籍になります。MODx Revolution向けの電子書籍は別に「MODX Revolution - Building the Web Your Way」がありますので、そちらをチェックしてみてください。内容は、MODx Evolutionによるサイト構築に必要な事項が一通り書かれていますが、どちらかと言えばMODxでサイトを構築するWebデザイナーやマークアップエンジニア向けです。一応スニペットやプラグイン、モジュール開発に関することも触れられていますが、Web上で調べれば出てくる以上の情報は無いと思って良いです(むしろWebで出てくる情報の方が詳しい)。ただ、初めてMODxに触れる方は情報がまとまっているため、開発を進める上でのヒントにはなると思います。
Amazon Verified review Amazon
Guitarrista Jun 04, 2011
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
I reviewed the first version of this. It was a very positive review, because I felt that it filled a need, that of providing guidance to the new MODx user. It did this admirably well. Anyone who regularly uses open-source content management systems knows that much of the info is scattered in forums, individual blog posts, random other places, and sometimes even in official documentation. To me, it's useful to have much of this consolidated into one place.I do agree with reviewers that said that it's not for gurus. They would not find much new info with either book. It seems to me that systems don't get guru books until they have a critical mass of popularity, and as much as I like MODx, I don't think it's quite there yet.I have to scold the publisher and author on the title of this book, which is remarkably misguided. MODx 2 is Revolution (aka Revo), a completely new release, which has been out for awhile now. Accordingly, I was eager to see if there would be substantial Revo coverage. There isn't. They just have an extra chapter giving a quick overview of the Revo concepts. The entire rest of the book is devoted to MODx 1, aka Evolution or Evo.I'm very puzzled by this. I can only think that maybe there was a publishing deadline, and Revo was not officially released at that date, so someone decided to put it out there with little Revo coverage. I think this is a mistake, both conceptually and commercially. In any case, if you want a book on Revo, you'll have to wait.That said, Evo, in my opinion, will be operant for quite some time to come. It's still more stable than Revo, simply by virtue of its having been in use so long.So if you're new to MODx, and want to learn the in's and out's of MODx 1, aka Evo, this book will be useful, and will also give you a very brief overview of Revo. If you already have the first book, I would pass on this.
Amazon Verified review Amazon
RobAlex Jan 13, 2012
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
This book has been out for almost a year and there is still only one review (besides this one)! That says something about the frustration some of us have had trying to learn MODx; there's very little material available. Thankfully we now have the new Bob Ray book as an alternative.MODx Web Development has all the right material and is of a good length - not overwhelming. The order of topics and pace are also good. What made it of much less use to me were the errors in the examples. This is especially strange in a 2nd edition. When ever I finished an example it invariably would not work. Sometimes I could figure out why and sometime not. In addition, to create the examples, there is a lot of typing - they are not available for download although that could have been provided easily.O'Reilly Publishing provides a service called Safari that provides many books online. Turns out the first volume of this book is on Safari so I was able to cut and paste the example code and save myself some typing. The fact that the examples hadn't changed much from one edition to the next hints that there weren't that many changes and may explain why there were still so many errors.Finally the errors got to me and I gave up about half way through and still not understanding MODx. Since then I've been using Drupal for which there are dozens of books available. Perhaps the new MODx book is worth a look but it sure is large for a CMS that is supposed to be so much easier to use than, say, Drupal.
Amazon Verified review Amazon
stetod Sep 16, 2017
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
File esercizi non completamente disponibili!Exercise file not fully available!Pessimo modello didattico di studio!Bad teaching model of study!
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the digital copy I get with my Print order? Chevron down icon Chevron up icon

When you buy any Print edition of our Books, you can redeem (for free) the eBook edition of the Print Book you’ve purchased. This gives you instant access to your book when you make an order via PDF, EPUB or our online Reader experience.

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela