FileMaker Custom Web Publishing, usually abbreviated as CWP, is a technology for building custom websites and web applications that interact with databases hosted by FileMaker Server.
It gives web developers complete control over the user interface and application logic. The website can be created with PHP, JavaScript, or another web technology while FileMaker remains responsible for storing data, performing searches, and running business processes.
Custom Web Publishing is different from FileMaker WebDirect. WebDirect reproduces FileMaker layouts in a web browser, while CWP allows developers to design an entirely independent web interface.
How Does Custom Web Publishing Work?
A web application sends requests to the FileMaker Server Web Publishing Engine. FileMaker processes those requests and returns information that the application can display or transform.
Depending on the implementation, a CWP website can:
- find and display FileMaker records;
- create, edit, and delete records;
- work with related data;
- run FileMaker scripts;
- process forms;
- display container content;
- integrate FileMaker data into a larger website or online service.
The website does not need to resemble the original FileMaker layouts. Its interface can be designed specifically for customers, partners, employees, or the general public.
Custom Web Publishing with XML
The foundation of traditional FileMaker Custom Web Publishing is its XML interface.
A web application sends HTTP or HTTPS requests containing FileMaker query commands and parameters. FileMaker Server returns the corresponding data as an XML document, which the application can then process and display.
Although XML publishing is one of FileMaker’s longest-established integration technologies, it is important to clarify that it is still available and supported in current versions of FileMaker Server.
Claris continues to document how to host FileMaker databases for XML queries and how to enable PHP and XML web publishing.
This makes XML publishing relevant both for maintaining existing websites and for particular integrations where its established FileMaker query model remains useful.
The FileMaker API for PHP
Claris later created the FileMaker API for PHP as a PHP layer built on top of the XML interface.
Instead of constructing XML queries and processing the responses manually, PHP developers could use objects and methods provided by the API. This made common FileMaker operations easier to express in PHP applications.
However, Claris’s original PHP library did not evolve alongside modern PHP development. It was eventually deprecated and is no longer bundled with FileMaker Server. PHP itself remains widely used, but the old FileMaker API for PHP should no longer be selected as the foundation of a new project.
Existing PHP websites can continue to communicate with FileMaker. They simply need to use a maintained PHP library or one of FileMaker’s newer APIs.
A Modern PHP Alternative from fmcloud.fm
Romain Dunand, Technical Director of fmcloud.fm, developed an open-source replacement for the original FileMaker API for PHP.
His implementation modernized the library while preserving compatibility with the original API’s general approach. It introduced support for contemporary PHP development practices, including namespaces, Composer installation, modern autoloading, improved error handling, and compatibility with PHP frameworks.
For existing websites, this can provide a practical first step away from Claris’s deprecated PHP library without requiring an immediate rewrite of the entire application.
The project and its background are presented in FileMaker PHP API / Data API: an Open Source Project.
Custom Web Publishing vS the Data API and ODAta
OData and the FileMaker Data API are now the standard choices for most new web integrations.
They provide REST interfaces and return data in JSON, a format widely used by modern PHP and JavaScript applications. They also works with FileMaker Server and FileMaker Cloud.
Custom Web Publishing with XML, OData and the Data API therefore provide different ways to connect a web application to FileMaker:
- XML publishing is the original CWP interface and remains available;
- Claris’s PHP API was a convenience layer over XML but is deprecated;
- modern PHP libraries, including the alternative created by Romain Dunand, can replace the old Claris library;
- OData is now the preferred interface for new REST-based developments.
- the FileMaker Data API is now depracated (it is maintained but there won’t be new developments, Claris announced)
The best migration path depends on the architecture and age of the existing website. A PHP project using the former Claris API may first move to a compatible replacement and then transition progressively to OData or the Data API.
Why Use Custom Web Publishing?
Custom Web Publishing remains valuable when a project requires:
- a completely customized web interface;
- integration into an existing website;
- public or customer-facing pages that should not resemble FileMaker;
- precise control over navigation and user experience;
- interaction with several systems in addition to FileMaker;
- maintenance or modernization of an established XML or PHP application.
It allows FileMaker to remain the operational database and business-logic platform while web developers use the technologies most appropriate for the public interface.
Custom Web Publishing with fmcloud.fm
Custom Web Publishing requires more than hosting a PHP page. The FileMaker database, Web Publishing Engine, web server, SSL configuration, access privileges, and application code must work together securely and reliably.
fmcloud.fm has extensive experience with XML publishing, the former Claris PHP API, modern PHP libraries, and the FileMaker Data API. Our hosting platform supports the gateways required for FileMaker web integrations, while our team can help customers evaluate and migrate existing CWP applications.
This experience is particularly valuable for legacy websites. A complete rewrite is not always necessary: in many cases, an older PHP integration can be modernized progressively while preserving the FileMaker application and most of the website’s existing business logic.
Tip: our Pro plan even includes php hosting, so your php code can be executed just next to your FileMaker Server-hosted database, for better performance.
Conclusion
FileMaker Custom Web Publishing is the family of technologies used to build independent web interfaces connected to FileMaker Server.
Its XML interface remains current and supported. The former FileMaker API for PHP, which provided a PHP layer over XML, is deprecated and should be replaced with a maintained alternative or the FileMaker Data API.
Thanks to modern libraries such as the open-source implementation created by Romain Dunand, Technical Director of fmcloud.fm, existing PHP applications can often be modernized without starting again from scratch.