WordLift Theme Development¶
Who should read this¶
This document is intended for Web Developers that would like to extend their themes to support WordLift’s data model and features.
In the first paragraph we describe the WordLift data model, i.e. how additional properties for entities are stored in WordPress.
WordLift Data Model¶
- WordLift Entities are custom posts;
- Entity properties are managed as standard posts’ metadata;
- Entity types are managed through a custom taxonomy;
- When a property references another entity:
- Its value is the entity ID (if the entity is inside the same WordPress site),
- Its value is the entity URI (if the entity is outside the WordPress site).
- The 4Ws classification, i.e. the relationships among posts and entities, are stored in a custom table called wl_relation_instances.
- WordLift’s Topics are a custom taxonomy
Content Filtering - Available APIs¶
- Standard WordPress methods (such as get_posts and get_post_meta) can be used on entities;
- get_post_terms can be used to extract topics from posts see the example below;
wp_get_post_terms( <post_id>, Wordlift_Topic_Taxonomy_Service::TAXONOMY_NAME, <args> )
Personalization of Entity pages - Single Post¶
Entities are configured in WordPress as Custom Post Types and the post type is called entity.
To personalise the design of entity pages the template file to be used is called Single Post.
Template files in WordPress are modular, reusable files, to create web pages on your web site. To learn more how to customize an existing WordPress theme or create a new one read the template hirarchy page on the WordPress website or visualise the WordPress template hierarchy.
When articles or pages are turned into entities they mantain their existing post type.