PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-如何获取Magento中可配置项的URL?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用magento并创建一个产品查找器.有没有一种方法可以链接到可配置的项目示例:R_817_11845@ystore.com/bedding-sheets

可以说,我想向一个朋友发送指向250 * 250cm的工作表的链接,我认为该链接可能是:mystore.com/bedding-sheets?attribute496=1(除非不是这种情况)

<dl class="last">
    <dt><label>Size<span class="required"> *</span></label></dt>
     <dd class="last">
     <SELEct class="required-entry super-attribute-SELEct" id="attribute496" name="super_attribute[496]">
      <option value="">Choose option...</option>
      <option value="4">200*200cm</option>
      <option value="3">200*230cm</option>
      <option value="2">200*250cm</option>
      <option value="1">250*250cm</option></SELEct>
    </dd>
</dl>

有人知道是否可以创建这样的链接吗?

编辑:所以我能够找出如何使用/ checkout / cart / add?product = 47& qty = 1& super_attribute [496] = 4将商品添加到购物车中

但是,我希望用户预览他们将收到的商品,而不只是将其转储到购物车中.

解决方法:

如果不更改Magento,则无法执行此操作.

现在,假设您要预定义URL中选择框的选定选项:

首先,您需要覆盖块Mage_Catalog_Block_Product_View_Options_Type_SELEct. (我假设您已经创建了自己的模块-我还没有,并且需要帮助,请告诉我)

为此,您需要将此条目添加到config.xml中:

<config>
    <global>
        <blocks>
            <catalog>
                <rewrite>
                    <product_view_options_type_SELEct>YourCompany_YourModulename_Product_View_Options_Type_SELEct</product_view_options_type_SELEct>
                </rewrite>
            </catalog>
        </blocks>
    </global>
</config>

接下来添加需要扩展Mage_Catalog_Block_Product_View_Options_Type_SELEct的类YourCompany_YourModulename_Product_View_Options_Type_SELEct.

在此类中,您现在必须覆盖函数getValuesHtml().首先,您应该从要扩展的类中复制它.

在此函数中,您应该找到以下foreach:

    foreach ($_option->getValues() as $_value) {
        $priceStr = $this->_formatPrice(array(
            'is_percent' => ($_value->getPriCEType() == 'percent') ? true : false,
            'pricing_value' => $_value->getPrice(true)
        ), falsE);
        $SELEct->addoption(
            $_value->getOptionTypEID(),
            $_value->gettitle() . ' ' . $priceStr . ''
        );
    }

在此之后,您添加

$standardValue = $this->getrequest()->getParam($_option->getid());
//Mage::log("Option Name: "$_option->getid());
$SELEct->SETVALue($standardvalue);

这应该做.不幸的是我现在无法测试.因此,如果您遇到麻烦,请告诉我.

我不确定$_option-> getid()是否是您参数的正确名称.但是,如果您在上面的代码清单中为我注释掉的一行中注释,则可以尝试找出答案.
在您的Magento安装中,打开文件var / log / system.log,现在应在其中显示url参数的名称.

现在,您知道了如何命名url参数,您可以按照自己的意愿进行操作:url / to / product?option_id = value_id

PS:如果您问自己为什么我们创一个新类而不是直接在Magento核心中更改它:我们这样做是为了防止在更新到新版本的Magento时出现问题.

希望我能帮上忙.

大佬总结

以上是大佬教程为你收集整理的php-如何获取Magento中可配置项的URL?全部内容,希望文章能够帮你解决php-如何获取Magento中可配置项的URL?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: