wordpress 重力窗体-自定义进度条?,

pvcm50d1  于 2023-02-07  发布在  WordPress
关注(0)|答案(3)|浏览(164)

有人能给我解释一下修改重力表单进度条需要什么代码吗?我想更改默认的进度条,以使用自定义图形的每一步。
开始:

第一步:

第二步:

我试着跟随这个重力表格页面,但方向在我的网站上不起作用。
代码:

add_filter( 'gform_progress_bar', 'my_custom_function', 10, 3 );
 function my_custom_function( $progress_bar, $form, $confirmation_message ) 
 {

      $progress_bar =
           '<ul>
                <li>Page 1</li>
                <li>Page 2</li>
                <li>Page 3</li>
            </ul>';

      return $progress_bar;
 }

有什么想法吗?

h5qlskok

h5qlskok1#

或许可以试试这样的方法:

add_filter( 'gform_progress_bar', 'custom_progress_bar', 10, 3 );
function custom_progress_bar( $progress_bar, $form, $confirmation_message ) {

    $current_page = GFFormDisplay::get_current_page( $form['id'] );

    if($current_page == 1) {
        $progress_bar = '<img src="path/to/image">';
    } else if($current_page == 2){
        $progress_bar = '<img src="path/to/image">';
    } else if($current_page == 3){
        $progress_bar = '<img src="path/to/image">';
    } else if($current_page == 4){
        $progress_bar = '<img src="path/to/image">';
    } else if($current_page == 5){
        $progress_bar = '<img src="path/to/image">';
    }

    return $progress_bar;
}

下面提供的示例代码是我用来隐藏第一页的进度条,但在其余页面显示的代码。我相信您应该能够返回每个页面的步骤图像:

add_filter( 'gform_progress_bar', 'hide_progress_bar_wrap', 10, 3 );
function hide_progress_bar_wrap( $progress_bar, $form, $confirmation_message ) {

    $current_page = GFFormDisplay::get_current_page( $form['id'] );

    if($current_page == 1) {
        $progress_bar = '<span class="wrap_progress_bar" style="visibility:hidden;display:none">'.$progress_bar.'</span>';
    }

    return $progress_bar;
}

希望能成功!

z9ju0rcb

z9ju0rcb2#

重力表单现在已经内置了这个设置。你可以简单地从进度条调整到设置中的步骤,然后根据需要应用额外的CSS到样式。不需要使用自定义图形。

htzpubme

htzpubme3#

简化的自定义进度条
//使用筛选器gform_progress_bar_8,将8替换为表单ID
//显示总共4步重力形式的情况

add_filter( 'gform_progress_bar_8', 'op_custom_progress_bar', 10, 3 );
    function op
_custom_progress_bar( $progress_bar, $form, $confirmation_message ) {
        $total_page = 4;
        $current_page = GFFormDisplay::get_current_page( $form['id'] );
        $percent = 25;
        $form_page = 1;
        if($current_page == 1) {
            $percent = 25;
            $form_page = 1;
        } else if($current_page == 2){
            $percent = 50;
            $form_page = 2;
        } else if($current_page == 3){
            $percent = 75;
            $form_page = 3;
        }
            $progress_bar = '
                <div id="gf_progressbar_wrapper_8" class="gf_progressbar_wrapper">
                    <p class="gf_progressbar_title">Step <span class="gf_step_current_page">'.$form_page.'</span> of <span class="gf_step_page_count">'.$total_page.'</span>
                    </p>
                    <div class="gf_progressbar gf_progressbar_blue" aria-hidden="true">
                        <div class="gf_progressbar_percentage percentbar_blue percentbar_'.$percent.'" style="width:'.$percent.'%;"><span>'.$percent.'%</span></div>
                    </div>
                </div>';
        return $progress_bar;
    }

相关问题