用途:帮助开发者构建兼容 Elementor 的主题,注册主题位置、创建动态标签、扩展 Finder 与编辑器右键菜单,并集成缓存。
主要能力:
- 主题位置:通过 elementor/theme/register_locations 钩子调用 register_all_core_location() 或 register_location() 注册 header、footer、single、archive 及自定义位置;用 elementor_theme_do_location() 输出并带降级模板。
- 主题条件:继承 Condition_Base,实现 get_type、get_name、get_label、check 等方法,通过 elementor/theme/register_conditions 注册,支持父子条件。
- 动态标签:继承 Tag,实现 get_name、get_title、get_group、get_categories、render,通过 elementor/dynamic_tags/register 注册,可注册自定义分组。
- Finder:继承 Base_Category,通过 elementor/finder/register 注册分类,或用 elementor/finder/categories 过滤器增删条目。
- 右键菜单:在 elementor/init 事件中通过 elements/context-menu/groups 过滤器增删分组与动作,脚本用 elementor/editor/after_enqueue_scripts 入队。
- Hello Elementor 主题:提供多个过滤器控制文章类型支持、菜单、WooCommerce、样式、内容宽度、页面标题等。
- 缓存:使用 elementor/hosting/page_cache/purge_everything 动作与 allow_page_cache、{content_type}_changed_urls 过滤器。
使用方式:以上均为 WordPress 钩子与 PHP/JS 扩展点,需在主题或插件中按示例注册回调。
限制:主题条件与 Theme Builder 依赖 Elementor Pro;调用位置输出前需检查 function_exists 并提供降级;动态标签 render() 必须 echo 并转义输出;缓存过滤器需先校验 $allow 参数。资料未提供收费、价格与平台信息。