Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Joomla 在产品中保存自定义字段时VirtueMart如何发送数据_Joomla_Joomla2.5_Virtuemart_Custom Fields - Fatal编程技术网

Joomla 在产品中保存自定义字段时VirtueMart如何发送数据

Joomla 在产品中保存自定义字段时VirtueMart如何发送数据,joomla,joomla2.5,virtuemart,custom-fields,Joomla,Joomla2.5,Virtuemart,Custom Fields,首先,对不起我的英语,但我会尽力解释我自己 我的问题有点棘手,因为我对VirtueMart的核心代码做了一些重要的更改。 出于某些原因,我在自定义字段中添加了一个属性,如Price,称为Availability 提示:管理员网站是西班牙语的。Disponibilidad=可用性 所以,现在,当我试图更改任何创建的自定义字段的任何值时,我无法保存它。我的意思是,我可以更改值,但当我应用它们时,它不会被保存 我唯一可以更改的字段是我创建的字段,即可用性(讽刺的是) 所以,我的主要问题是,Virtu

首先,对不起我的英语,但我会尽力解释我自己

我的问题有点棘手,因为我对VirtueMart的核心代码做了一些重要的更改。 出于某些原因,我在自定义字段中添加了一个属性,如Price,称为Availability

提示:管理员网站是西班牙语的。Disponibilidad=可用性

所以,现在,当我试图更改任何创建的自定义字段的任何值时,我无法保存它。我的意思是,我可以更改值,但当我应用它们时,它不会被保存

我唯一可以更改的字段是我创建的字段,即可用性(讽刺的是)

所以,我的主要问题是,VirtueMart如何从表中提取数据并将其发送到数据库

我和

  • Joomla v.2.5.11
  • VirtueMart 2

谢谢

工作流程如下:

在后端保存产品详细信息时,它调用
product.php
模型上的函数
store()
。在
管理员/components/com\u virtuemart/models/
下。在这个函数中有一个区域,如下所示

if(!class_exists('VirtueMartModelCustom')) require(JPATH_VM_ADMINISTRATOR.DS.'models'.DS.'custom.php');

            VirtueMartModelCustom::saveModelCustomfields('product',$data,$product_data->virtuemart_product_id);
它从同一路径加载自定义模型文件,并在
saveModelCustomfields()中执行任务


希望对您有所帮助。

当您说可用性时,我想您指的是是否有库存。VirtueMart中已经有一个字段了吗?正如lodder所说,VM2.x中有一个字段可用,那么为什么要创建自定义字段呢?是的,存在一种自定义字段,可以使用可用性属性,但对于我开始使用它之前在网站内完成的工作,和客户的要求,这是(我认为)最好的工作方式。谢谢你的回答,我终于明白了它是如何工作的!需要指出的是,自定义模型文件(customfields.php)中的函数不是saveModelCustomFields()。实际名称为storeProductCustomfields()。现在我知道发生了什么。包含所有数据($datas)的var还应该包含一个名为“plugin_param”的属性,但它没有,因此假定保存数据的函数从未触发。有什么想法吗?这里的代码
if(isset($datas['plugin\u param'))和is\u array($datas['plugin\u param')){foreach($key=>datas['plugin\u param']as$key=>plugin\u param){$dispatcher->trigger('plgVmOnStoreProduct',array($datas,$plugin\u param))}我解决了它。问题是另一部分我也改变了。谢谢你的回答。