本文整理汇总了PHP中osC_Product::getDefaultVariant方法的典型用法代码示例。如果您正苦于以下问题:PHP osC_Product::getDefaultVariant方法的具体用法?PHP osC_Product::getDefaultVariant怎么用?PHP osC_Product::getDefaultVariant使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类osC_Product
的用法示例。
在下文中一共展示了osC_Product::getDefaultVariant方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: initialize
function initialize()
{
global $osC_Language, $osC_Template, $toC_Compare_Products;
if ($toC_Compare_Products->hasContents()) {
$osC_Template->addStyleSheet('ext/multibox/multibox.css');
$osC_Template->addJavascriptFilename('ext/multibox/Overlay.js');
$osC_Template->addJavascriptFilename('ext/multibox/MultiBox.js');
$this->_content = '<ul>';
foreach ($toC_Compare_Products->getProducts() as $products_id) {
$osC_Product = new osC_Product($products_id);
$cid = $products_id;
$str_variants = '';
//if the product have any variants, it means that the $products_id should be a product string such as 1#1:1;2:2
if ($osC_Product->hasVariants()) {
$variants = $osC_Product->getVariants();
if (preg_match('/^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)+$/', $products_id)) {
$products_variant = $variants[$products_id];
} else {
$products_variant = $osC_Product->getDefaultVariant();
}
//if the product have any variants, get the group_name:value_name string
if (isset($products_variant) && isset($products_variant['groups_name']) && is_array($products_variant['groups_name']) && !empty($products_variant['groups_name'])) {
$str_variants .= ' -- ';
foreach ($products_variant['groups_name'] as $groups_name => $value_name) {
$str_variants .= '<strong>' . $groups_name . ': ' . $value_name . '</strong>;';
}
//clean the last ';'
if (($pos = strrpos($str_variants, ';')) !== false) {
$str_variants = substr($str_variants, 0, -1);
}
}
//build the product string that could be used
if (strpos($products_id, '#') !== false) {
$cid = str_replace('#', '_', $products_id);
}
}
$this->_content .= '<li>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), 'cid=' . $cid . '&' . osc_get_all_get_params(array('cid', 'action')) . '&action=compare_products_remove'), osc_draw_image_button('button_delete_icon.png', $osC_Language->get('button_delete')), 'style="float: right; margin: 0 3px 1px 3px"') . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Product->getTitle() . $str_variants) . '</li>';
}
$this->_content .= '</ul>';
$this->_content .= '<p>' . '<span style="float: right">' . osc_link_object(osc_href_link(FILENAME_JSON, 'module=products&action=compare_products'), osc_draw_image_button('small_compare_now.png', $osC_Language->get('button_compare_now')), 'class="multibox" rel="ajax:true"') . '</span>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), osc_get_all_get_params(array('action')) . '&action=compare_products_clear'), osc_draw_image_button('small_clear.png', $osC_Language->get('button_clear'))) . ' ' . '</p>';
$js .= '<script type="text/javascript">
window.addEvent("domready",function() {
var box = new MultiBox(\'multibox\', {
movieWidth: 820,
movieHeight: 600
});
});
</script>';
$this->_content .= "\n" . $js;
}
}
示例2: add
function add($products_id, $variants = array())
{
global $osC_Database, $osC_Services, $osC_Customer, $osC_Product;
//if wishlist empty, create a new wishlist
if (!$this->hasWishlistID()) {
$token = $this->generateToken();
$Qnew = $osC_Database->query('insert into :table_wishlists (customers_id, wishlists_token) values (:customers_id, :wishlists_token)');
$Qnew->bindTable(':table_wishlists', TABLE_WISHLISTS);
$Qnew->bindInt(':customers_id', $osC_Customer->getID());
$Qnew->bindValue(':wishlists_token', $token);
$Qnew->execute();
$this->_wishlists_id = $osC_Database->nextID();
$this->_token = $token;
$Qnew->freeResult();
}
if (!isset($osC_Product)) {
$osC_Product = new osC_Product($products_id);
}
if ($osC_Product->getID() > 0) {
if (!$this->exists($products_id)) {
$product_price = $osC_Product->getPrice();
$product_name = $osC_Product->getTitle();
$product_image = $osC_Product->getImage();
if ($osC_Services->isStarted('specials')) {
global $osC_Specials;
if ($new_price = $osC_Specials->getPrice($products_id)) {
$price = $new_price;
}
}
//if the product has variants, set the image, price etc according to the variants
if ($osC_Product->hasVariants()) {
$products_variants = $osC_Product->getVariants();
if (is_array($variants) && !osc_empty($variants)) {
$product_id_string = osc_get_product_id_string($products_id, $variants);
$products_variant = $products_variants[$product_id_string];
} else {
$products_variant = $osC_Product->getDefaultVariant();
}
$variants_groups_id = $products_variant['groups_id'];
$variants_groups_name = $products_variant['groups_name'];
if (!osc_empty($variants_groups_name)) {
$product_name .= '<br />';
foreach ($variants_groups_name as $group_name => $value_name) {
$product_name .= '<em>' . $group_name . ': ' . $value_name . '</em>' . '<br />';
}
}
$product_price = $products_variant['price'];
$product_image = $products_variant['image'];
}
$this->_contents[$products_id] = array('products_id' => $products_id, 'name' => $product_name, 'image' => $product_image, 'price' => $product_price, 'date_added' => osC_DateTime::getShort(osC_DateTime::getNow()), 'variants' => $variants, 'comments' => '');
//insert into wishlist products
$Qnew = $osC_Database->query('insert into :table_wishlist_products (wishlists_id, products_id, date_added, comments) values (:wishlists_id, :products_id, now(), :comments)');
$Qnew->bindTable(':table_wishlist_products', TABLE_WISHLISTS_PRODUCTS);
$Qnew->bindInt(':wishlists_id', $this->_wishlists_id);
$Qnew->bindInt(':products_id', $products_id);
$Qnew->bindValue(':comments', '');
$Qnew->execute();
$wishlists_products_id = $osC_Database->nextID();
$Qnew->freeResult();
//if the wishlists products has variants
$products_variants_groups_id = array();
$products_variants_groups_name = array();
if (isset($variants_groups_id) && isset($variants_groups_name)) {
foreach ($variants_groups_id as $groups_id => $values_id) {
$products_variants_groups_id[] = array('groups_id' => $groups_id, 'values_id' => $values_id);
}
foreach ($variants_groups_name as $groups_name => $values_name) {
$products_variants_groups_name[] = array('groups_name' => $groups_name, 'values_name' => $values_name);
}
}
if (!osc_empty($products_variants_groups_id)) {
foreach ($products_variants_groups_id as $key => $groups_id) {
$Qinsert = $osC_Database->query('insert into :table_wishlists_products_variants (wishlists_id, wishlists_products_id, products_variants_groups_id, products_variants_groups, products_variants_values_id, products_variants_values) values (:wishlists_id, :wishlists_products_id, :products_variants_groups_id, :products_variants_groups, :products_variants_values_id, :products_variants_values)');
$Qinsert->bindTable(':table_wishlists_products_variants', TABLE_WISHLISTS_PRODUCTS_VARIANTS);
$Qinsert->bindInt(':wishlists_id', $this->_wishlists_id);
$Qinsert->bindInt(':wishlists_products_id', $wishlists_products_id);
$Qinsert->bindInt(':products_variants_groups_id', $groups_id['groups_id']);
$Qinsert->bindInt(':products_variants_values_id', $groups_id['values_id']);
$Qinsert->bindValue(':products_variants_groups', $products_variants_groups_name[$key]['groups_name']);
$Qinsert->bindValue(':products_variants_values', $products_variants_groups_name[$key]['values_name']);
$Qinsert->execute();
}
}
}
}
}
示例3:
case 'PRODUCT_LIST_BUY_NOW':
$lc_align = 'center';
$lc_text = '';
if ($Qlisting->value('products_type') == PRODUCT_TYPE_SIMPLE) {
//enable quantity input field
if (defined('PRODUCT_LIST_QUANTITY_INPUT') && PRODUCT_LIST_QUANTITY_INPUT == 1) {
$lc_text .= '<input type="text" id="qty_' . $Qlisting->value('products_id') . '" value="1" size="1" class="qtyField" />';
}
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), $Qlisting->value('products_id') . '&' . osc_get_all_get_params(array('action')) . '&action=cart_add'), osc_draw_image_button('button_buy_now.gif', $osC_Language->get('button_buy_now'), 'class="ajaxAddToCart" id="ac_productlisting_' . $Qlisting->value('products_id') . '"')) . ' <br />';
} else {
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), $Qlisting->value('products_id') . '&' . osc_get_all_get_params(array('action')) . '&action=cart_add'), osc_draw_image_button('button_buy_now.gif', $osC_Language->get('button_buy_now'))) . ' <br />';
}
//used to fix bug [#209] - support variants products for the wishlist
if ($variants_enabled) {
if ($osC_Product->hasVariants()) {
$default_variant = $osC_Product->getDefaultVariant();
$product_id_string = str_replace('#', '_', $default_variant['product_id_string']);
if ($osC_Template->isInstalled('compare_products', 'boxes')) {
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), 'cid=' . $product_id_string . '&' . osc_get_all_get_params(array('action')) . '&action=compare_products_add'), $osC_Language->get('add_to_compare'), 'class="compare"') . ' <br />';
}
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), $Qlisting->value('products_id') . '&' . osc_get_all_get_params(array('action')) . '&wid=' . $product_id_string . '&action=wishlist_add'), $osC_Language->get('add_to_wishlist'), 'class="wishlist"');
} else {
if ($osC_Template->isInstalled('compare_products', 'boxes')) {
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), 'cid=' . $Qlisting->value('products_id') . '&' . osc_get_all_get_params(array('action')) . '&action=compare_products_add'), $osC_Language->get('add_to_compare'), 'class="compare"') . ' <br />';
}
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), $Qlisting->value('products_id') . '&' . osc_get_all_get_params(array('action')) . '&action=wishlist_add'), $osC_Language->get('add_to_wishlist'), 'class="wishlist"');
}
} else {
if ($osC_Template->isInstalled('compare_products', 'boxes')) {
$lc_text .= osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), 'cid=' . $Qlisting->value('products_id') . '&' . osc_get_all_get_params(array('action')) . '&action=compare_products_add'), $osC_Language->get('add_to_compare'), 'class="compare"') . ' <br />';
}
示例4: outputCompareProductsTable
function outputCompareProductsTable()
{
global $osC_Language, $osC_Image, $osC_Weight, $osC_Currencies;
$content = '';
$products_images = array();
$products_titles = array();
$products_price = array();
$products_weight = array();
$products_sku = array();
$products_manufacturers = array();
$products_desciptions = array();
$products_attributes = array();
$products_variants = array();
$cols = array('<col width="20%">');
$col_width = round(80 / count($this->getProducts()));
if ($this->hasContents()) {
foreach ($this->getProducts() as $products_id) {
$cols[] = '<col width="' . $col_width . '%">';
$osC_Product = new osC_Product($products_id);
$image = $osC_Product->getImages();
$product_title = $osC_Product->getTitle();
$product_price = $osC_Product->getPriceFormated(true);
$product_weight = $osC_Product->getWeight();
$product_sku = $osC_Product->getSKU();
//if the product have any variants, it means that the $products_id should be a product string such as 1#1:1;2:2
$variants = array();
if ($osC_Product->hasVariants()) {
$product_variants = $osC_Product->getVariants();
if (preg_match('/^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)+$/', $products_id)) {
$products_variant = $product_variants[$products_id];
$variants = osc_parse_variants_from_id_string($products_id);
} else {
$products_variant = $osC_Product->getDefaultVariant();
$variants = $products_variant['groups_id'];
}
//if the product have any variants, get the group_name:value_name string
if (isset($products_variant) && isset($products_variant['groups_name']) && is_array($products_variant['groups_name']) && !empty($products_variant['groups_name'])) {
$products_variants[$products_id]['variants'] = array();
foreach ($products_variant['groups_name'] as $groups_name => $value_name) {
$products_variants[$products_id]['variants'][] = array('name' => $groups_name, 'value' => $value_name);
}
}
$product_price = $osC_Currencies->displayPrice($osC_Product->getPrice($variants), $osC_Product->getTaxClassID());
$product_weight = $products_variant['weight'];
$product_sku = $products_variant['sku'];
$image = $products_variant['image'];
}
$image = is_array($image) ? $image[0]['image'] : $image;
$products_titles[] = $product_title;
if (!osc_empty($product_price)) {
$products_price[] = $product_price;
}
if (!osc_empty($product_weight)) {
$products_weight[] = $osC_Weight->display($product_weight, $osC_Product->getWeightClass());
}
if (!osc_empty($product_sku)) {
$products_sku[] = $product_sku;
}
if (!osc_empty($osC_Product->getManufacturer())) {
$products_manufacturers[] = $osC_Product->getManufacturer();
}
if (!osc_empty($osC_Product->getDescription())) {
$products_desciptions[] = $osC_Product->getDescription();
}
if ($osC_Product->hasAttributes()) {
foreach ($osC_Product->getAttributes() as $attribute) {
$products_attributes[$products_id]['attributes'][] = array('name' => $attribute['name'], 'value' => $attribute['value']);
}
}
$products_id = str_replace('#', '_', $products_id);
$products_images[] = '<div class="image">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Image->show($image, $osC_Product->getTitle())) . '</div>' . '<div class="button">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id . '&action=cart_add' . (osc_empty(osc_parse_variants_array($variants)) ? '' : '&variants=' . osc_parse_variants_array($variants))), osc_draw_image_button('button_in_cart.gif', $osC_Language->get('button_add_to_cart'))) . '</div>';
}
$content .= '<table id="compareProducts" cellspacing="0" cellpadding="2" border="0">';
//add col groups
$content .= '<colgroup>';
foreach ($cols as $col) {
$content .= $col;
}
$content .= '</colgroup>';
//add product header
$content .= '<tbody>';
$content .= '<tr class="first">';
$content .= '<th> </th>';
if (!osc_empty($products_images)) {
foreach ($products_images as $k => $product_image) {
$content .= '<td' . ($k == count($products_images) - 1 ? ' class="last"' : '') . '>' . $product_image . '</td>';
}
}
$content .= '</tr>';
$content .= '</tbody>';
//add compare details
$content .= '<tbody>';
$row_class = 'even';
//add product name
if (!osc_empty($products_titles)) {
$content .= '<tr class="' . $row_class . '">' . '<th>' . $osC_Language->get('field_products_name') . '</th>';
foreach ($products_titles as $k => $product_title) {
$content .= '<td' . ($k == count($products_titles) - 1 ? ' class="last"' : '') . '>' . $product_title . '</td>';
}
$content .= '</tr>';
//.........这里部分代码省略.........
示例5: add
//.........这里部分代码省略.........
if (isset($this->_contents[$products_id_string]['customizations']) && !empty($this->_contents[$products_id_string]['customizations'])) {
$Qupdate->bindValue(':customizations', serialize($this->_contents[$products_id_string]['customizations']));
} else {
$Qupdate->bindRaw(':customizations', 'null');
}
$Qupdate->bindInt(':customers_id', $osC_Customer->getID());
$Qupdate->bindValue(':products_id', $products_id_string);
$Qupdate->execute();
}
} else {
if (!is_numeric($quantity)) {
$quantity = 1;
}
if ($osC_Product->isGiftCertificate()) {
if ($quantity > 1) {
$quantity = 1;
$error = $osC_Language->get('error_gift_certificate_quantity_must_be_one');
}
}
//check minimum order quantity
$products_moq = $osC_Product->getMOQ();
if ($quantity < $products_moq) {
$quantity = $products_moq;
$error = sprintf($osC_Language->get('error_minimum_order_quantity'), $osC_Product->getTitle(), $products_moq);
}
//check order increment
$increment = $osC_Product->getOrderIncrement();
if (($quantity - $products_moq) % $increment != 0) {
$quantity = $products_moq + (floor(($quantity - $products_moq) / $increment) + 1) * $increment;
$error = sprintf($osC_Language->get('error_order_increment'), $osC_Product->getTitle(), $increment);
}
//if product has variants and variants is not given
if ($osC_Product->hasVariants() && $variants == null) {
$variant = $osC_Product->getDefaultVariant();
$variants = osc_parse_variants_from_id_string($variant['product_id_string']);
}
if ($osC_Product->isGiftCertificate() && $osC_Product->isOpenAmountGiftCertificate()) {
$price = $gift_certificates_data['price'];
} else {
$price = $osC_Product->getPrice($variants, $quantity);
if ($osC_Services->isStarted('specials')) {
global $osC_Specials;
if ($new_price = $osC_Specials->getPrice($products_id, $variants)) {
$price = $new_price;
}
}
}
$this->_contents[$products_id_string] = array('id' => $products_id_string, 'name' => $osC_Product->getTitle(), 'type' => $osC_Product->getProductType(), 'keyword' => $osC_Product->getKeyword(), 'sku' => $osC_Product->getSKU($variants), 'image' => $osC_Product->getImage(), 'price' => $price, 'final_price' => $price, 'quantity' => $quantity, 'weight' => $osC_Product->getWeight($variants), 'tax_class_id' => $osC_Product->getTaxClassID(), 'date_added' => osC_DateTime::getShort(osC_DateTime::getNow()), 'weight_class_id' => $osC_Product->getWeightClass(), 'gc_data' => $gift_certificates_data);
if ($toC_Customization_Fields->exists($products_id)) {
$fields = $toC_Customization_Fields->get($products_id);
$time = time();
$this->_contents[$products_id_string]['customizations'][$time] = array('qty' => $quantity, 'fields' => array_values($fields));
$toC_Customization_Fields->remove($products_id);
}
//set error to session
if (isset($error) && !empty($error)) {
$this->_contents[$products_id_string]['error'] = $error;
}
// insert into database
if ($osC_Customer->isLoggedOn()) {
$Qnew = $osC_Database->query('insert into :table_customers_basket (customers_id, products_id, customers_basket_quantity, gift_certificates_data, customizations, customers_basket_date_added) values (:customers_id, :products_id, :customers_basket_quantity, :gift_certificates_data, :customizations, now())');
$Qnew->bindTable(':table_customers_basket', TABLE_CUSTOMERS_BASKET);
$Qnew->bindInt(':customers_id', $osC_Customer->getID());
$Qnew->bindValue(':products_id', $products_id_string);
$Qnew->bindInt(':customers_basket_quantity', $quantity);
if ($osC_Product->getProductType() == PRODUCT_TYPE_GIFT_CERTIFICATE) {
示例6: output_compare_products_table
function output_compare_products_table()
{
global $osC_Language, $osC_Image, $osC_Weight, $osC_Currencies, $toC_Compare_Products, $osC_Services;
$content = '';
$products_images = array();
$products_titles = array();
$products_price = array();
$products_weight = array();
$products_sku = array();
$products_manufacturers = array();
$products_desciptions = array();
$products_attributes = array();
$products_variants = array();
$cols = array('<col width="20%">');
$col_width = round(80 / count($toC_Compare_Products->getProducts()));
if ($toC_Compare_Products->hasContents()) {
foreach ($toC_Compare_Products->getProducts() as $products_id_string) {
$cols[] = '<col width="' . $col_width . '%">';
$osC_Product = new osC_Product($products_id_string);
$products_id = osc_get_product_id($products_id_string);
$image = $osC_Product->getImages();
$product_title = $osC_Product->getTitle();
$product_price = $osC_Product->getPriceFormated(true);
$product_weight = $osC_Product->getWeight();
$product_sku = $osC_Product->getSKU();
//if the product have any variants, it means that the $products_id should be a product string such as 1#1:1;2:2
$variants = array();
if ($osC_Product->hasVariants()) {
$product_variants = $osC_Product->getVariants();
if (preg_match('/^[0-9]+(?:#?(?:[0-9]+:?[0-9]+)+(?:;?([0-9]+:?[0-9]+)+)*)+$/', $products_id_string)) {
$products_variant = $product_variants[$products_id_string];
$variants = osc_parse_variants_from_id_string($products_id_string);
} else {
$products_variant = $osC_Product->getDefaultVariant();
$variants = $products_variant['groups_id'];
}
//if the product have any variants, get the group_name:value_name string
if (isset($products_variant) && isset($products_variant['groups_name']) && is_array($products_variant['groups_name']) && !empty($products_variant['groups_name'])) {
$products_variants[$products_id_string]['variants'] = array();
foreach ($products_variant['groups_name'] as $groups_name => $value_name) {
$products_variants[$products_id_string]['variants'][] = array('name' => $groups_name, 'value' => $value_name);
}
}
$product_price = $osC_Currencies->displayPrice($osC_Product->getPrice($variants), $osC_Product->getTaxClassID());
$product_weight = $products_variant['weight'];
$product_sku = $products_variant['sku'];
$image = $products_variant['image'];
}
$image = is_array($image) ? $image[0]['image'] : $image;
$products_titles[] = $product_title;
if (!osc_empty($product_price)) {
$products_price[] = $product_price;
}
if (!osc_empty($product_weight)) {
$products_weight[] = $osC_Weight->display($product_weight, $osC_Product->getWeightClass());
}
if (!osc_empty($product_sku)) {
$products_sku[] = $product_sku;
}
if (!osc_empty($osC_Product->getManufacturer())) {
$products_manufacturers[] = $osC_Product->getManufacturer();
}
if (!osc_empty($osC_Product->getDescription())) {
$products_desciptions[] = $osC_Product->getDescription();
}
if ($osC_Product->hasAttributes()) {
foreach ($osC_Product->getAttributes() as $attribute) {
$products_attributes[$products_id]['attributes'][] = array('name' => $attribute['name'], 'value' => $attribute['value']);
}
}
$products_id_string = str_replace('#', '_', $products_id_string);
//used to fix bug [#209 - Compare / wishlist variant problem]
if (isset($osC_Services) && $osC_Services->isStarted('sefu') && count($variants) > 0) {
$products_images[] = '<div class="image">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Image->show($image, $osC_Product->getTitle())) . '</div>' . '<div class="button">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id . '&pid=' . $products_id_string . '&action=cart_add'), '<i class="icon-shopping-cart icon-white"></i> ' . $osC_Language->get('button_add_to_cart'), 'class="btn btn-mini"') . '</div>';
} else {
$products_images[] = '<div class="image">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Image->show($image, $osC_Product->getTitle())) . '</div>' . '<div class="button">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id_string . '&action=cart_add'), '<i class="icon-shopping-cart icon-white"></i> ' . $osC_Language->get('button_add_to_cart'), 'class="btn btn-mini"') . '</div>';
}
}
$content .= '<table class="table table-hover table-striped">';
//add col groups
$content .= '<colgroup>';
foreach ($cols as $col) {
$content .= $col;
}
$content .= '</colgroup>';
//add product header
$content .= '<tbody>';
$content .= '<tr class="first">';
$content .= '<th> </th>';
if (!osc_empty($products_images)) {
foreach ($products_images as $k => $product_image) {
$content .= '<td' . ($k == count($products_images) - 1 ? ' class="last"' : '') . '>' . $product_image . '</td>';
}
}
$content .= '</tr>';
$content .= '</tbody>';
//add compare details
$content .= '<tbody>';
$row_class = 'even';
//add product name
//.........这里部分代码省略.........