把这个学会,zencart的数据库操作,以及各种函数的调用基本会了
这个东西非常有用,你需要认真看一下,不要闲代码多。
如何在数据库中调出自己想要的产品,让它显示在首页。
据我本人不科学的理解,在includes/modules/里面见一个 模块文件,该文件是功能文件,也就是含有sql语句,以及执行sql语句的常用函数,这个是“功能文件”
我在这取名叫做 show_products.php
<?php
$show_product = 'SELECT p.products_id,p.products_model,p.products_price, p.products_image, ps.specials_new_products_price,pd.products_name,pd.products_description,cd.categories_description,cd.categories_id FROM products p LEFT JOIN specials ps ON ps.products_id = p.products_id LEFT JOIN products_description pd ON pd.products_id = p.products_id LEFT JOIN products_to_categories pc ON pc.products_id = p.products_id LEFT JOIN categories_description cd ON cd.categories_id = pc.categories_id order by rand()';$show_product_handle = $db->Execute($show_product,18);
while (!$show_product_handle->EOF){ $show_product_content[] = array( 'id'=>$show_product_handle->fields['products_id'], 'product_name'=>$show_product_handle->fields['products_name'], 'products_description'=>$show_product_handle->fields['products_description'], 'product_module'=>$show_product_handle->fields['products_model'], 'product_price'=>$currencies->display_price(zen_get_products_base_price($show_product_handle->fields['products_id'])), 'special_price'=>$currencies->display_price(zen_get_products_special_price($show_product_handle->fields['products_id'])), 'description'=>$show_product_handle->fields['categories_description'], 'product_image'=>zen_image(DIR_WS_IMAGES . $show_product_handle->fields['products_image'], $show_product_handle->fields['products_name'], IMAGE_PRODUCT_NEW_WIDTH, IMAGE_PRODUCT_NEW_HEIGHT), 'product_url'=>zen_href_link(FILENAME_PRODUCT_INFO,'cPath='. $show_product_handle->fields['categories_id'] . '&products_id='.$show_product_handle->fields['products_id']) ); $show_product_handle->MoveNext(); //print_r($show_product_handle);}//print_r($show_product_content);
?>
东西取出来了,得要按照我们需要的格式排列啊,就需要模板文件,在includes/templates/template_default/templates/建一个tpl_show_products.php的模板文件
<?phpinclude(DIR_WS_MODULES . zen_get_module_directory('show_product.php'));
if(is_array($show_product_content) && !empty($show_product_content)){ $outPutHtml .= '<div id="product">'; $i=0; $j=0; foreach ($show_product_content as $key => $value) { $str=$value['products_description']; $val=substr($str,0,170)."..."; $outPutHtml .= '<div id="Box'. $value['id'] .'">'; $outPutHtml .= '<div id="BoxT'. $value['id'] .'">'; $outPutHtml .= '<h2><a href="' . $value['product_url'] . '">' . $value['product_name'] . '</a></h2>'; $outPutHtml .= '</div>'; $outPutHtml .= '<div class="desc"><a href="' . $value['product_url'] . '" class="kuang" alt=" '. $value['product_name'] .' "></a></div>'; $outPutHtml .= '<div id="BoxD' . $value['id'] . '">'; $outPutHtml .= '<h3><span>RRP: ' . $value['product_price'] . '</span> - OUR PRICE: ' . $value['special_price'] . '</h3>'; $outPutHtml .= $val; $outPutHtml .= '</div>'; $outPutHtml .= '<div id="BoxB' . $value['id'] . '">'; $outPutHtml .= '<a href="' . $value['product_url'] . '"><img src="includes/templates/2/images2/'. $value['id'] .'.gif"></a>'; $outPutHtml .= '</div>'; $outPutHtml .= '</div>'; // print_r($value); } $outPutHtml .= '</div>';}
echo $outPutHtml;//print_r($show_product_content);?><!--<div id="p_1"> <div id="p_li"> <h2><a href="ghd-red-lust-styler-p-252.html">GHD Pink Limited Edition</a></h2> </div> <a href="ghd-pink-limited-edition-p-255.html" class="kuang" alt="GHD Red Lust Styler"></a><div id="text"><h3><span>RRP: $299.00 AUD</span> - OUR PRICE: $145.99 AUD</h3>2010 ghd pink limited edition-Rediscover your passion for pink with the new ghd Pink limited edition.Each pink patterned ghd IV styler comes with a gorgeous raffia bag & mirror. </div></div><div id="an"><a href="ghd-pink-limited-edition-p-255.html"><img src="includes/templates/2/images2/p_an_4.jpg"></a></div>
-->
最后是引用这一块,比如我想在首页的一个DIV里显示这些内容
<div class="products">
<?php//display product modulerequire($template->get_template_dir('tpl_module_show_product.php', DIR_WS_TEMPLATE, $current_page_base, 'templates').'/tpl_module_show_product.php');
?>
</div>
转载于:https://www.cnblogs.com/alex-13/p/3476184.html