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

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(使用前将#替换为@)

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

  • 使用 Laravel Socialite 登录 facebook

    然而 我是 Laravel 的新手 我正在遵循以下教程http www codeanchor net blog complete laravel socialite tutorial http www codeanchor net blog
  • snappy wkhtmltopdf 包装器将生成的 html 文件发送到浏览器

    我像鼹鼠一样用谷歌搜索 但找不到正确的方法 我正在使用 WKHTMLTOPDF Wrapper Snappy 创建 PDF 如何将使用generateFromHtml方法生成的pdf直接发送到浏览器 这就是我想做的 header Conte
  • 在 JAX-WS 中使用安全性的最佳实践是什么

    这是场景 我有一些需要保护的 Web 服务 JAX WS 目前 为了身份验证需求 我提供了额外的 SecurityWService 它为授权用户提供了一些需要在请求其他服务时描述的 userid 和 sessionid 使用一些java安全
  • CodeIgniter加入选择为

    我的数据库中有 2 个表需要加入 一张表是 artikelen 表 另一张表是 Collections 表 我目前有 this gt db gt select this gt db gt from collecties this gt db
  • WAMP PHP 启动错误:无法加载动态库

    我的 WAMP 服务器昨天工作得非常好 今天我不得不重新启动计算机 但有些事情搞砸了 服务器从未完全启动 任务栏图标保持橙色 我的项目将打开 但仅加载 HTML 而不加载 PHP 这是我的 PHP 错误日志 04 Oct 2014 01 3
  • 从 ios 应用程序到 symfony2 Web 应用程序的登录和管理会话

    我使用 Symfony2 开发了一个 Web 应用程序 我用过FOS用户包用于用户管理和安全 现在 我正在考虑为我的网络开发一个本机 iOS 应用程序 但并不真正知道如何解决从应用程序创建会话的问题 并在整个交互用户应用程序中维护它 换句话
  • 如何在 Yii2 应用程序中显示多个选择下拉列表中的选定值?

    我正在研究 Yii2 我正在使用这样的自定义数组创建多个选择下拉菜单 在控制器文件中 all groups Groups find gt where group created by id gt orwhere new Expression
  • 如何处理PDO异常[重复]

    这个问题在这里已经有答案了 我正在尝试与PDOphp 上的类 但我在找到处理错误的正确方法时遇到了一些麻烦 我编写了以下代码
  • Symfony/Form:函数 DoctrineType::__construct() 的参数太少

    我有一个奇怪的错误 我在自己的系统中实现了 Form 组件 我在那里创建了一个 FormType 其中使用 EntityType 作为字段 每次我想用 formBuilder 创建表单时 它都会抛出以下错误 Fatal error Unca
  • 计算帖子中使用 WordPress 短代码的次数

    我有以下 WordPress 短代码功能 function wp shortcode static i 1 return i i return return add shortcode shortcode wp shortcode 这很好用
  • 在运行之前可以检查 imagecreatefromjpeg 是否会导致内存耗尽致命错误吗?

    我已经对此进行了一些搜索 并且我知道不可能从内存耗尽的致命错误中恢复 我有一个运行 imagecreatefromjpeg 的脚本 我尝试捕获异常 我尝试使用 运行该函数 然后检查返回值是否为 null 或 false 我尝试使用 die
  • 软删除最佳实践(PHP/MySQL)

    Problem 在处理产品和订单的 Web 应用程序中 我想维护前员工 用户 与他们处理的订单之间的信息和关系 我想维护过时产品和包含这些产品的订单之间的信息和关系 然而 我希望员工能够整理管理界面 例如删除前员工 过时的产品 过时的产品组
  • 如何通过开始索引和结束索引提取子字符串?

    str HelloWorld sub substr str 3 5 echo sub prints loWor 我知道 substr 采用第一个参数 第二个参数是开始索引 而第三个参数是要提取的子字符串长度 我需要的是通过提取子字符串起始索
  • websockets 如何处理同一浏览器的两个选项卡

    I have 1 个 PHP 服务器 提供 http 请求 和 1 node js 发布更新的数据消息 每个连接都带有 websocket php 服务器设置其 cookie 在一个浏览器中 此 cookie 可在所有选项卡中使用 当浏览器
  • POSTed 数组保留其值

    今天 我注意到我的一个 WordPress 安装的行为方式非常奇怪 每当我从仪表板更新帖子时 它的一些额外输入都会保留它们已有的值 所有这些都是多维数组 例如 post php post 123 action 编辑
  • 如何下载临时文件

    我正在尝试创建一个简短的 PHP 脚本 该脚本采用 JSON 字符串 将其转换为 CSV 格式 使用fputcsv 并使该 CSV 可作为下载的 csv 文件使用 我的想法是使用tmpfile 不用担心 cronjobs 或磁盘空间不足 但
  • 验证 LDAPS 连接的自签名证书

    我想从 Linux Linux 3 2 0 4 amd64 1 SMP Debian 3 2 51 1 x86 64 GNU Linux 客户端到 Windows 2012 服务器建立安全的 ldap 连接 ldaps 以更改活动中的用户密
  • Laravel 5 命名约定

    我对 Laravel 约定有点困惑 因为我是这个框架的新手 我正在关注 Jeffrey Way 他使用的 Laracasts 视频Plural对于控制器名称 E g 页面控制器 卡片控制器 帖子控制器 但如果我参考官方文档Laravel g
  • 检查字符串是否编码为 UTF-8

    function seems utf8 str length strlen str for i 0 i lt length i c ord str i if c lt 0x80 n 0 0bbbbbbb elseif c 0xE0 0xC0
  • Nginx 在子文件夹中重写 (404)

    我有一个网站主机NGINX曾经工作正常的服务器删除index php在 nginx 站点配置中使用try files 但现在我要在上面添加一个博客 其中 URL 将是www foo com blog 我可以访问博客并使用index php

随机推荐

  • 如何以编程方式更新 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 但遇到了一些困难 我需要的是 当选择产品变体时 一些附加选项以单选按钮的形式出现 客户必须选择 我已经设法让一切正常工作 但我现在需要的是在单击提交按钮时将选定的单选按钮发