Documentation
Browse by topic
Explore related documentation through its most useful keyword groups.
1337 items
Grouped by Architecture
A named transformation applied to a value inside a template expression.
Explore this clusterA typed event or request exchanged between decoupled Zotonic components through the notifier.
A server-defined browser action or event binding connected through Zotonic wires.
Explore this clusterA namespaced interface for retrieving or changing data and invoking operations in Zotonic or browser-side components.
Explore this clusterAn OTP application or site component that adds Zotonic behavior templates data and configuration.
Explore this clusterA server-side template_compiler document that renders data into HTML text email or another representation.
Explore this clusterA request handler that maps web requests to responses and coordinates authorization rendering or data transfer.
Explore this clusterA route declaration that matches a URL pattern and selects a controller with arguments.
Explore this clusterThe central Zotonic entity that represents content users media categories and other addressable objects.
Explore this clusterDocumentation not covered by the other keyword groups in this split.
Explore this clusterFind a page without creating a duplicate.
Locate the right file in the media library.
Open Show an overview of all observers from the Development page. Find the notification and inspect the registered callbacks and their order.
Distinguish global Zotonic configuration, Erlang runtime configuration, site configuration files, and module settings stored for a site. Similar setting names…
The status site manages the running Zotonic installation. A site's /admin manages that site's content and enabled modules. They have different scopes and can…
Enable module#mod_development and open its template tools in the admin. Search for the template name and inspect the selected file and alternatives.
Returns the first character or element.
Not implemented, but exists in Zotonic for forward compatibility with future ErlyDTL and Django versions.
Replaces ampersands in the value with “&” entities.
Flatten a list to a comma separated string.
Round down a floating point value.
Flush site caches.
Add a $(..).focus() jQuery call to the target element to give it input focus.
Start with the URL that gives an unexpected result. Check its hostname: Zotonic uses it to select a site before matching the site's dispatch rules.
Start with the URL that gives an unexpected result. Check its hostname: Zotonic uses it to select a site before matching the site's dispatch rules.
Loop over multiple values in a list or search result.
HTML escapes a text.
Regular expression test.
Format dispatch controller options.
Format dispatch path element so variables will be more visible.
Show a duration in hours, minutes and seconds.
Show an integer value.
Show an integer or float.
Show a price with decimals.
Make body text easy to scan and read.
Resets the target form to its initial state.
Define a named reusable template fragment.
Parse a string as a JSON (JavaScript Object Notation) value. The returned value can be processed futher.
Return the absolute administration URL for a Zotonic site.
Choose a release or a development checkout and follow the installation guide.
This section describes the location and contents of Zotonic’s global configuration files erlang.config and zotonic.config . There’s also site-specific…
These variables are always available for rendering in templates.
Action An action is functionality that can be attached to a HTML element or event. Actions are wired to an element or event. Think of showing dialogs, posting…
Calculate the gravatar code for an e-mail address:
Groups items of a list by a property.
Group a list of sorted model#rsc resource IDs on their first letter of the title or another resource property. After grouping, it splits this list in a number…
Similar to filter#group_firstchar, but always uses the title column from the rsc table.
Show a message in the upper right corner of the browser window. The message will automatically disappear after some time.
Use scomp#wire to connect a browser event to an action or a server postback. Give the target element a stable ID within the rendered page.
Use scomp#wire to connect a browser event to an action or a server postback. Give the target element a stable ID within the rendered page.
Give the next operator enough context to continue safely.
A validator to check if a resource has a certain number of edges with a predicate.
Hide an element without any animation.
The category hierarchy tables have been replaced by m_hierarchy . This model defines named hierarchies of resources (pages).
Understand translated fields on one page.
Zotonic indexes resources from the site's active modules. A file existing on disk is not enough: its application must be discoverable, and its module must…
Choose the right tool for organizing a page.
Take the next step without overwriting more content.
The m_identity model manages usernames and other user identities. module#mod_authentication uses it to store and check salted passwords, but also provides a…
Selects an argument depending on a condition.
Show something if the condition is true.
Not implemented, but exists in Zotonic for forward compatibility with future ErlyDTL and Django versions.
Show something if two values are equal.
Show something if two values are not equal.
Tests whether a value is undefined, returning the given argument.
Show a still image using an <img\> element. The image will be automatically resized to the desired size and filters. For video, use the tag#media tag instead.
Adjust an image inserted in the body text.
Generate a data: url of a still image.
Manages the medium_edit_settings property for non destructive image editing.
Generate the url of a still image.
Model to track resources imported from CSV and XLSX files.
Transfer a list of email addresses.
Include another template. The include tag is replaced with the contents of the included template file. You can give arguments to the included template, they…
Create a pivot column and fill it through the custom_pivot notification.
Returns the index of the first occurrence of the item in the given list.
Tests if a date is in the future.
Include the markup of an extended template into the extending template.
Adds recipient query string details to hyperlinks.
Tests if a date is in the past.
Render a JS-aided inplace textbox.
Prepends the argument in front of the value.
Insert rendered HTML immediately after the target element.
Insert the result of a render action before an HTML element.
Inserts HTML after the contents of an HTML element.
Inserts HTML before the contents of an HTML element.
Discover actual metrics before configuring subscriptions.
Use the command suited to the question:
Use bin/zotonic logtail for the configured console log, or select error or crash when those files are available. The command prints the last 500 lines and…
Open Dependency graph of all available templates from the Development page. Use the graph to understand inheritance and include relationships before changing a…
Prepare an environment and deploy a release with a recovery plan.
Check the required tools and install optional media tools when you need them.
Use a datamodel for application-owned categories, predicates, resources, and relationships that must exist when a module is installed.
Install the native tools, prepare PostgreSQL, and build a local checkout.
Build and run Zotonic with its development containers, then create a site.
This is the Zotonic Developer Guide. It takes you through all aspects of Zotonic so you can start building your own sites as quickly as possible.
Use the admin to keep your website up to date.
Return the lowercase ISO country code associated with an IP address.
Return geographic information associated with an IP address.
Filter a list of resource ids on category, or test if a single resource id belongs to a category.
Tests if a value is defined.
Test if an integer value is even:
Test if a hostname can be used for a Let’s Encrypt certificate.
Test if a value is a list:
is_not_a mirrors filter#is_a. It is particularly useful when iterating over a category and excluding members of a sub-category (iterating over all images…
Test if a value is a number (integer or floating point):
Check if the given language is a rtl or ltr language.
Test if the given URL is a url for the current site.
Tests if a value is undefined.
Test if a resource is a user.
Test whether a value has valid email-address syntax.