assun
За малко е тук
Karma: +104/-0
Offline
Публикации: 7
|
 |
« : Юли 29, 2010, 21:14:16 » |
|
Във PDF-a по-долу е малко по четливо.
Ще разгледам два варианта за добавяне на атрибут. Единият ще е от вида: Размер: 15/15-20/15см – променливата ще се казва $product_ size втория ще е чекбокс - променливата ще се казва $product_sq
\administrator\components\com_virtuemart\languages\common\bulgarian.php 19 $langvars = array ( 20 'PHPSHOP_PRODUCT_SIZE' => 'Размер', //add this 21 'PHPSHOP_PRODUCT_SIZE_TIP' => 'Въведи размер до 40 символа', 22 'PHPSHOP_PRODUCT_SQ' => 'Показва м/кв', 23 'PHPSHOP_PRODUCT_SQ_P' => '*Цената е за квадратен метър', Добаваме няколко реда в bulgarian.php и в english.php за да имаме превод на съответния език.
\administrator\components\com_virtuemart\html\product.product_form.php При нов продукт дали да е чекнат „чекбокса” (ако този ред го няма „чекбокса” няма да е чекнат) 152 $default["product_unit"] = $VM_LANG->_('PHPSHOP_PRODUCT_FORM_UNIT_DEFAULT'); 153 $default["product_sq"] = "Y"; //add this
Мястото кадето ще въвеждате стойностите 782 <table class="adminform"> 783 <tr class="row0"> <!-- add this --> 784 <td width="21%" valign="top" > 785 <div style="text-align:right;font-weight:bold;"><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_SIZE') ?>:</div> 786 </td> 787 <td width="79%" > 788 <input type="text" class="inputbox" name="product_size" value="<? $db->sp("product_size"); ?>" size="40" maxlength="40" /><?php echo vmToolTip( $VM_LANG->_('PHPSHOP_PRODUCT_SIZE_TIP') ) ?> 789 </td> 790 </tr> 791 <tr class="row0"> 792 <td width="29%" ><div style="text-align:right;font-weight:bold;"> 793 <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_SQ') ?>:</div></td> 794 <td width="71%" ><?php 795 if ($db->sf("product_sq")=="Y") { 796 echo "<input type=\"checkbox\" name=\" product_sq\" value=\"Y\" checked=\"checked\" />"; 797 } 798 else { 799 echo "<input type=\"checkbox\" name=\" product_sq\" value=\"Y\" />"; 800 } 801 ?></td> 802 </tr>
\administrator\components\com_virtuemart\html\product.product_display.php Показва атрибутите на продукта след „Запис” 160 <legend><strong><?php echo $dim_weight_label ?></strong></legend> 161 162 <div class="formLabel"> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_SIZE') ?>:</div> 163 <div class="formField" > <?php echo $db->f("product_size"); ?></div> 164 <div class="formLabel"> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_SQ') ?>:</div> 165 <div class="formField" > <?php echo vmCommonHTML::getYesNoIcon( $db->f("product_sq") ); ?></div>
\administrator\components\com_virtuemart\classes\ps_product.php 171 $d["product_special"] = empty($d["product_special"]) ? "N" : "Y"; 172 $d["product_sq"] = empty($d["product_sq"]) ? "N" : "Y"; //add this 173 //parse quantity and child options ... 273 // Insert into DB 274 $fields = array ( 'vendor_id' => $vendor_id, 275 'product_size' => vmGet($d,'product_size'), //add this 276 'product_sq' => vmGet($d,'product_sq'), //add this ... 476 // Insert into DB 477 $fields = array ( 'vendor_id' => $vendor_id, 478 'product_size' => vmGet($d,'product_size'), //add this 479 'product_sq' => vmGet($d,'product_sq'), //add this
\administrator\components\com_virtuemart\sql\sql.virtuemart.php 443 $db->query( "INSERT INTO `#__{vm}_csv` VALUES (1, 'product_sku', '', 1, 'Y'), ... 467 (25, 'attribute_values', '', 25, 'N'), 468 (26, 'product_size', '', 26, 'N'), 469 (27, 'product_sq', '', 27, 'N'); " ); Няколко промени в базата данни( MySQL) Във таблица jos_vm_product в края на таблицата добавяте ново поле: Поле product_size Тип VARCHAR Дължина/Стойност*1 40 Колация Атрибути Празно null
и за втората променлива: Поле product_sq Тип CHAR Дължина/Стойност*1 1 Колация Атрибути Празно null До този момент тези две променливи са видими само в flypage_images.tpl.php 30 <td rowspan="1" colspan="2"> 31 <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_SIZE') .': ' .$product_size .'</br>' ; 32 if ($product_sq == 'Y'){ 33 echo $VM_LANG->_('PHPSHOP_PRODUCT_SQ_P');} 34 ?> 35 </td>
Тези променливи не се виждат във browse_1.php: 28 <td align="left" valign="top"><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_SIZE') .': ' 29 .$product_size .'</br>' ; 30 if ($product_sq == 'Y'){ 31 echo $VM_LANG->_('PHPSHOP_PRODUCT_SQ_P');} ?></td>
За да направим и там видими тези променливи: administrator\components\com_virtuemart\html\shop.browse.php 439 // Unset these for the next product 440 unset($full_image_width); 441 unset($full_image_height); 442 $products[$i]['product_size'] = $db_browse->f("product_size"); //add this 443 $products[$i]['product_sq'] = $db_browse->f("product_sq"); //add this
administrator\components\com_virtuemart\html\ shop_browse_queries.php 36 // These are the names of all fields we fetch data from 37 $fieldnames = "`product_name`,`products_per_row`,`category_browsepage`,`category_flypage`, `#__{vm}_category`.`category_id`, 38 `#__{vm}_product`.`product_id`,`product_full_image`,`product_thumb_image`,`product_s_desc`,`product_parent_id`,`product_publish`,`product_in_stock`,`product_sku`, `product_url`,`product_size`,`product_sq`,
|