You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为Elementor表单添加动态标签:获取文章标题等字段

为Elementor表单隐藏字段添加文章标题等自定义动态标签

要扩展Elementor的动态标签,让文章标题、ID、自定义字段等内容能被表单隐藏字段调用,你可以通过Elementor提供的钩子来注册自定义动态标签,具体步骤如下:

1. 编写自定义动态标签代码

通过elementor/dynamic_tags/register钩子注册新的动态标签类,将需要的页面数据字段添加到标签列表中。以下是示例代码,包含文章标题和文章ID的标签实现:

<?php
add_action( 'elementor/dynamic_tags/register', function( $dynamic_tags ) {
    // 注册「文章标题」动态标签
    class Custom_Post_Title_Tag extends \Elementor\Core\DynamicTags\Tag {
        public function get_name() {
            return 'custom-post-title';
        }

        public function get_title() {
            return esc_html__( '文章标题', 'text-domain' );
        }

        public function get_group() {
            return 'post'; // 归到默认的「文章」标签分组
        }

        public function get_categories() {
            return [ \Elementor\Modules\DynamicTags\Module::TEXT_CATEGORY ]; // 标记为文本类标签,适配隐藏字段
        }

        public function render() {
            global $post;
            if ( $post ) {
                echo wp_kses_post( get_the_title( $post->ID ) );
            }
        }
    }

    $dynamic_tags->register( new Custom_Post_Title_Tag() );

    // 注册「文章ID」动态标签
    class Custom_Post_ID_Tag extends \Elementor\Core\DynamicTags\Tag {
        public function get_name() {
            return 'custom-post-id';
        }

        public function get_title() {
            return esc_html__( '文章ID', 'text-domain' );
        }

        public function get_group() {
            return 'post';
        }

        public function get_categories() {
            return [ \Elementor\Modules\DynamicTags\Module::TEXT_CATEGORY ];
        }

        public function render() {
            global $post;
            if ( $post ) {
                echo esc_html( $post->ID );
            }
        }
    }

    $dynamic_tags->register( new Custom_Post_ID_Tag() );
} );

如果需要其他字段(比如发布日期、自定义字段),可以参照上述模式扩展:

  • 发布日期:将render()方法内的代码替换为echo esc_html( get_the_date( 'Y-m-d', $post->ID ) );
  • 自定义字段:替换为echo esc_html( get_post_meta( $post->ID, '你的自定义字段键', true ) );

2. 添加代码到站点

  • 方法一:将代码复制到当前主题的functions.php文件末尾
  • 方法二:使用代码片段插件(如Code Snippets)添加,避免主题更新导致代码丢失

3. 在Elementor表单中使用

编辑Elementor表单的隐藏字段,点击字段设置中的动态标签按钮,在「文章」分组下就能看到新增的「文章标题」「文章ID」等标签,选择后即可自动填充对应页面的内容到隐藏字段中。

内容的提问来源于stack exchange,提问作者slarge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 19:18:13