尝试将隐藏的输入值发送到下一页

2024-02-21

我正在尝试根据客户的需求调整 Wordpress Jigoshop,但遇到了一些困难。我需要的是:当选择产品变体时,一些附加选项以单选按钮的形式出现,客户必须选择。我已经设法让一切正常工作,但我现在需要的是在单击提交按钮时将选定的单选按钮发送到购物车、结账等。

我正在尝试使用他们的产品定制功能来做到这一点,他们的功能是:

    if (!function_exists('jigoshop_product_customize_panel')) {
    function jigoshop_product_customize_panel() {
        global $_product;

    if ( isset( $_POST['Submit'] ) && $_POST['Submit'] == 'Save Personalization' ) {
        $custom_products = (array) jigoshop_session::instance()->customized_products;
        $custom_products[$_POST['customized_id']] = trim( wptexturize( $_POST['jigoshop_customized_product'] ));
        jigoshop_session::instance()->customized_products = $custom_products;
    }

    if ( get_post_meta( $_product->ID , 'customizable', true ) == 'yes' ) :
        $custom_products = (array) jigoshop_session::instance()->customized_products;
        $custom = isset( $custom_products[$_product->ID] ) ? $custom_products[$_product->ID] : '';
        $custom_length = get_post_meta( $_product->ID , 'customized_length', true );
        $length_str = $custom_length == '' ? '' : sprintf( __( 'You may enter a maximum of %s characters.', 'jigoshop' ), $custom_length );

        echo '<div class="panel" id="tab-customize">';
        echo '<p>' . apply_filters('jigoshop_product_customize_heading', __('Enter your personal information as you want it to appear on the product.<br />'.$length_str, 'jigoshop')) . '</p>';

        ?>

            <form action="" method="post">

                <input type="hidden" name="customized_id" value="<?php echo esc_attr( $_product->ID ); ?>" />

                <?php
                if ( $custom_length == '' ) :
                ?>
                    <textarea
                        id="jigoshop_customized_product"
                        name="jigoshop_customized_product"
                        cols="60"
                        rows="4"><?php echo esc_textarea( $custom ); ?>
                    </textarea>
                <?php else : ?>
                    <input 
                        type="text"
                        id="jigoshop_customized_product"
                        name="jigoshop_customized_product"
                        size="<?php echo $custom_length; ?>"
                        maxlength="<?php echo $custom_length; ?>"
                        value="<?php echo esc_attr( $custom ); ?>" />
                <?php endif; ?>

                <p class="submit"><input name="Submit" type="submit" class="button-alt add_personalization" value="<?php _e( "Save Personalization", 'jigoshop' ); ?>" /></p>

            </form>

        <?php
        echo '</div>';
    endif;
}
}

我尝试修改它们的函数以满足我的需要,这就是我的想法(其中 get_cod 是隐藏输入的 id 和名称,“Adauga in cos”是我的提交按钮的值):

if (!function_exists('salveaza_cod_material')) {
function salveaza_cod_material() {
    global $_product;

    if ( isset( $_POST['submit']) && $_POST('submit') == 'Adauga in cos') {
        $custom_products = (array) jigoshop_session::instance()->customized_products;
        $custom_products[$_POST['customized_id']] = trim( wptexturize( $_POST['get_cod'] ));
        jigoshop_session::instance()->customized_products = $custom_products;
    }

        $custom_products = (array) jigoshop_session::instance()->customized_products;
        $custom = isset( $custom_products[$_product->ID] ) ? $custom_products[$_product->ID] : '';
}}

但是该值不会发送到下一页。有人可以帮忙吗?干杯!

这是包含更多代码的更新:

<form action="<?php echo esc_url( $_product->add_to_cart_url() ); ?>"     class="variations_form cart" method="post">
        <fieldset class="variations">
            <?php foreach ( $attributes as $name => $options ): ?>
                <?php $sanitized_name = sanitize_title( $name ); ?>
                <div>
                    <span class="select_label"><?php echo jigoshop_product::attribute_label('pa_'.$name); ?></span>

                    <select id="<?php echo esc_attr( $sanitized_name ); ?>" name="tax_<?php echo $sanitized_name; ?>">

                        <option value=""><?php echo __('Choose an option ', 'jigoshop') ?>&hellip;</option>
                        <?php foreach ( $options as $value ) : ?>
                            <?php if ( taxonomy_exists( 'pa_'.$sanitized_name )) : ?>
                                <?php $term = get_term_by( 'slug', $value, 'pa_'.$sanitized_name ); ?>
                                <option value="<?php echo esc_attr( $term->slug ); ?>"><?php echo $term->name; ?> </option>
                            <?php else : ?>
                                <option value="<?php echo esc_attr( sanitize_title( $value ) ); ?>"><?php echo $value; ?></option>
                            <?php endif;?>
                        <?php endforeach; ?>
                    </select>


                </div>
            <?php endforeach;?>
        </fieldset>
<div id="piele-neagra" class="colors" style="display:none"> 
    <ul class="materiale">
    <li><input type="radio" name="piele-neagra" value="L73">
    <p><img class="alignnone size-full wp-image-155" title="L73" src="http://www.scaune-directoriale.ro/wp-content/uploads/materiale/piele-neagra/L73.gif" alt="L73" width="72" height="72" /></p>
    </li>
    </ul> 
</div>

<div id="stofa-mf" class="colors" style="display:none"> 
    <ul class="materiale">

    <li><input type="radio" name="tapiterie" value="MF01" />


...


 <div id="stofa-rg" class="colors" style="display:none"> Stofa RG</div>
        <div class="clear"></div>

        <span id="cod_material"><?php echo esc_attr( $custom ); ?></span>
        <span><?php echo trim( wptexturize( $_POST['get_cod'] )); ?></span>
        <div class="single_variation"></div>





        <?php do_action('jigoshop_before_add_to_cart_form_button'); ?>
        <div class="variations_button" style="display:none;">
            <input type="hidden" name="variation_id" value="" />
             <input type="hidden" name="customized_id" value="<?php echo esc_attr( $_product->ID ); ?>" />
        <input type="hidden" id="get_cod" name="get_cod" value="" />
            <input type="hidden" name="product_id" value="<?php echo esc_attr( $post->ID ); ?>" />
            <div class="quantity"><input name="quantity" value="1" size="4" title="Qty" class="input-text qty text" maxlength="12" /></div>
            <input type="submit" id="submit_cart" class="button-alt" value="<?php esc_html_e('Add to cart', 'jigoshop'); ?>" />
        </div>
        <?php do_action('salveaza_cod_material'); ?>
        <?php do_action('jigoshop_add_to_cart_form'); ?>
    </form>

这是购物车中接收价值的部分:

if ( !empty( $values['variation_id'] )) {
                                             $product_id = $values['variation_id'];
                                    } else {
                                        $product_id = $values['product_id'];
                                    }
                                        $custom_products = (array) jigoshop_session::instance()->customized_products;
                                    $custom =     isset( $custom_products[$product_id] ) ? $custom_products[$product_id] : '';
                                    if ( !     empty( $custom_products[$product_id] ) ) :
                                        ?>
                                        <dl      class="customization">
                                                <dt class="customized_product_label"><?php echo     apply_filters('jigoshop_customized_product_label', __('Personal: ','jigoshop') ); ?></dt>
                                                <dd class="customized_product"><?php echo esc_textarea( $custom ); ?></dd>
                                             </dl>
                                        <?    php
                                    endif;
                                    ?>

这只是一个错字:在if ( isset( $_POST['submit']) && $_POST('submit') == 'Adauga in cos'), 代替$_POST('submit')by $_POST['submit']

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试将隐藏的输入值发送到下一页 的相关文章

  • 重定向而不改变url

    我总是不喜欢 htaccess 我正在尝试建立一个所有请求都通过index php 的网站 但我希望URL 类似于www sample com home 该网址实际上会加载 www sample com index php page hom
  • 优雅地处理没有数据的 amcharts

    我想知道我的 dataProvider 是否为空 amCharts绘制时默认为null 我怎样才能动态地处理它 var chart AmCharts makeChart chartdiv theme none type serial dat
  • 如何使用 phpunit 运行单个测试方法?

    我正在努力运行一个名为testSaveAndDrop在文件中escalation EscalationGroupTest php with phpunit 我尝试了以下组合 phpunit EscalationGroupTest escal
  • Redis 会话序列化器 3.2 和 4.2 之间不匹配

    我有一个基于 Spring Cloud 的应用程序在多个 spring boot 服务器上运行 所有服务器使用 EnableRedisHttpSession共享相同的Spring Session 我现在想将第三方小部件集成到我的应用程序中
  • Apache 访问 Linux 中的 NTFS 链接文件夹

    在 Debian jessie 中使用 Apache2 PHP 当我想在 Apache 的文档文件夹 var www 中创建一个新的小节时 我只需创建一个指向我的 php 文件所在的外部文件夹的链接 然后只需更改该文件夹的所有者和权限文件夹
  • Symfony2 Assetic 和 Less Sourcemaps

    我不确定如何破解 assetic less 过滤器以输出源映射文件 我这里指的是LessFilterhttps github com kriswallsmith assetic blob master src Assetic Filter
  • 使用 preg_replace 仅替换第一个匹配项

    我有一个结构类似于以下的字符串 aba aaa cba sbd dga gad aaa cbz 该字符串每次都可能有点不同 因为它来自外部源 我只想替换第一次出现的 aaa 但其他人则不然 是否可以 可选的第四个参数预替换 http php
  • “使用未定义常量”注意,但该常量应该被定义

    共有三个文件 common php controller php 和 user php 文件 common php 如下所示 文件controller php看起来像 文件 user php 如下所示 执行脚本时 会给出通知 注意 使用未定
  • 在 PHP 中撤销 Google 访问令牌

    正如标题所示 我想以编程方式撤销授予的访问令牌 即在 PHP 中 我发现这个他们的网站 https developers google com identity protocols OAuth2WebServer tokenrevoke 但
  • 在 Wordpress 站点中进行 AJAX 调用时出现问题

    我在使用 Wordpress 站点功能的 AJAX 部分时遇到了一些问题 该功能接受在表单上输入的邮政编码 使用 PHP 函数来查找邮政编码是否引用特定位置并返回到该位置的永久链接 我的第一个问题是关于我构建的表单 现在我的表单操作是空白的
  • 覆盖控制器 Symfony 3.4/4.0

    我目前正在尝试覆盖 FOSUserBundle 中的控制器 在新的文档中 https symfony com doc 3 4 bundles override html https symfony com doc 3 4 bundles o
  • 在 apache docker 容器中运行虚拟主机

    我在同一个 apache 容器中有两个 php 应用程序 我试图在端口上运行其中一个应用程序 因为它需要通过根域而不是子文件夹进行访问 我想在端口 8060 上运行应用程序 我尝试使用 apache 虚拟主机执行此操作 但它不会加载页面 h
  • 如果循环中内存超出,我可以在 for 循环中抛出异常吗?

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何处理 foreach 循环中发生
  • PHP HEREDoc (EOF) 语法在 Sublime Text 3 上突出显示与正斜杠的差异

    我不熟悉 Sublime Text 3 如何使用语法突出显示 例如 如果它纯粹依赖于主题 或者它内置于主题运行的标准中 但就我而言 使用 PHP 的 HERE 文档和转发存在一些语法突出显示差异斜线 一旦出现正斜杠 ST3 就会认为以下所有
  • 表单提交后如何保留选择字段中的选定值?

    我有一个用于将票证上传到数据库的主页 我有一个选择字段 我想保留用户在提交表单之前选择的值 但它没有发生 这是我选择字段的代码
  • CURL 中的 data-urlencode 是什么意思?

    我搜索了很多个小时试图弄清楚 php curl 中的 data urlencode 是什么 我尝试过这个 但我认为这是不对的 xmlpost object1 file https www lob com goblue pdf 在文档中是 d
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • 一次播种多行 laravel 5

    我目前正在尝试为我的用户表播种 如果我像这样尝试 2 行 就会失败 如果我只使用单个数组而不是 users 数组内的 2 个数组来创建一些假数据 那么效果很好 我做错了什么 正确的方法是什么 class UserTableSeeder ex
  • 对具有混合类型值的数组进行数字排序

    我有一个像这样的混合数组 fruits array lemon Lemon 20 banana apple 121 40 50 然后申请sort 其功能如下 sort fruits SORT NUMERIC foreach fruits a
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser

随机推荐

  • 如何以编程方式更新 ui-grid 中的排序指示器?

    我正在使用 ui grid v3 0 0 rc 22 2015 06 15 它被配置为使用外部排序 效果很好 现在我需要使用选择框从外部更改排序列 每次更改选择框时 它都会触发外部排序 并且网格中的数据会正确更新 它还更新 gridOpti
  • Spring Data JPA JSONB 参数化

    将此查询转换为 Spring Data Repository 的正确语法 JPA Spring Data 或 SpEL 是什么nativeQuery SELECT FROM mytable WHERE f jsonb arr lower m
  • 在 vscode 中添加特定于语言的图标

    我已经创建了一个语言扩展 语法突出显示等 现在想要将特定图标与该语言 或具有我的扩展中指定的扩展名的文件 相关联 我注意到一个 icon 财产可在package json文件 并尝试将此属性绑定到我的 svg文件 但是 虽然语法突出显示在测
  • 为什么我无法停止 RDS 实例?

    I spun up two RDS instances in the same VPC Both are postgresql While the m4 xlarge one has multi AZ enabled and is encr
  • 在配置单元中支持外部表的数组列类型的最佳方法是什么?

    所以我有制表符分隔数据的外部表 一个简单的表格如下所示 create external table if not exists categories id string tag string legid string image strin
  • 具有多个条件的聚合以及基于计数键的求和匹配

    我试图获取另一个集合中的对象数组中存在的元素的计数 例子 集合A id 1 name Sample1 id 2 name Sample 2 id 3 name Sample 3 id 4 name Sample 4 集合B id 11 it
  • C# 将类的复杂对象序列化为json

    我想将以下类的新对象转换为 json 字符串 为此 我使用 JavaScriptSerializer 和 Newtonsoft 库 但它们的输出都是空括号 using System using System Collections usin
  • 对外部生成的静态内容进行指纹识别(ASP.NET + browserify)

    Nodejs browserify https github com substack browserify handbook introduction在构建模块化 js 应用程序时非常棒 如果gulp也是设置 工作流程的一部分进一步增强
  • JBOSS WEB-INF/lib 内容排序

    我有一个ear 文件 其中包含一个war 文件 war 的 WEB INF lib 目录中包含许多 jar 文件 其中一些 jar 包含相同类的冲突 或至少不同 版本 有没有办法可以影响 JBOSS 将这些 jar 文件添加到类路径的顺序
  • firebase-admin 是否会覆盖 firestore 安全规则?

    如果读 写访问的安全规则设置为需要身份验证 firebase admin 是否能够在没有身份验证的情况下读 写 Firebase Admin SDK 使用服务帐户访问您的数据库 服务帐号会忽略 Cloud Firestore 安全规则 类似
  • Git:添加、推送、提交

    git 和 git 有什么区别add push and commit 只是来自 SVN 的有点困惑 其中 更新 将 添加 内容 而提交则执行 推送 并且也会 添加 git 中有各种不同的功能 希望根据您的经验给出一些解释 git add将修
  • 使用 AutoMapper 动态映射包括数组在内的对象

    我正在尝试构建一种从一种类型映射到另一种类型的方法 因为我知道它们将 应该 具有相同的结构 相关问题 https stackoverflow com questions 2622003 call webservice without add
  • 调用 window.print() 时会触发什么事件?

    我正在努力解决这个问题 但今晚收效甚微 我想如果我只知道当window print 函数被调用 var browser name navigator appName if browser name Microsoft Internet Ex
  • Symfony 表单值缺失

    我正在编写一个简单的登录表单 一切正常 验证等 但我无法获取值 这是我的代码 public function executeIndex sfWebRequest request this gt getUser gt clearCredent
  • 计算时间序列中的运行和/衰减值

    我正在寻找计算时间序列内特定类型的 递减 总和或衰减值 例如 假设我有一些简单的数据 thedata lt data frame magicseeds c 30 20 10 40 20 week seq from 1 to 5 by 1 我
  • Android Kotlin:从目录中获取图像

    我正在使用 Kotlin 前端 Python 后端构建一个应用程序 我的 python 脚本在 getFilesDir 目录 data user 0 com example myproject files mygraph png 下创建一个
  • 如何在 Talend 中动态猜测 Mysqlinput 中的架构

    我已经构建了一个将数据从 mysql db 表复制到 b mysql 表的作业 表列是相同的 只是有时可以在表数据库中添加新列 我想检索从 a 到 b 的所有列 但只检索表 b 中存在的那些列 我能够放入表 b 中存在的查询特定选择列语句
  • 如果我将 extern "C++" 与 C 工具链一起使用会发生什么?

    我的问题主要是关于 C 工具链 理解 C 和 C 的事实 所以如果我用extern C 对于 C 工具链 我认为它可以理解如何处理它 但是如果我用以下代码提供代码怎么办extern C 到 C 工具链 预期的行为是什么 如果编译器也理解 C
  • 使用 Daper.Net 和 NPGSQL 将数据插入 PostgreSQL jsonb 列

    我正在尝试使用 Dapper Net 将 JSON 数据插入到 JSONB PostgreSQL 列中 The JSONB 的 NPGSQL 文档 http www npgsql org doc faq html给出了具体的使用说明Npgs
  • 尝试将隐藏的输入值发送到下一页

    我正在尝试根据客户的需求调整 Wordpress Jigoshop 但遇到了一些困难 我需要的是 当选择产品变体时 一些附加选项以单选按钮的形式出现 客户必须选择 我已经设法让一切正常工作 但我现在需要的是在单击提交按钮时将选定的单选按钮发