• zencart的modules下数据库操作templates排版和common首页引用


    把这个学会,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的模板文件

     

    <?php
    include(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 &amp; 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 module
    require($template->get_template_dir('tpl_module_show_product.php', DIR_WS_TEMPLATE, $current_page_base, 'templates').'/tpl_module_show_product.php');

    ?>

     

     

    </div>

     

  • 相关阅读:
    操作符详解(思维导图)
    数组(C语言、思维导图)
    函数(C语言、思维导图)
    分支语句与循环语句(知识点思维导图)
    单链表及其基本操作
    顺序表
    时间复杂度与空间复杂度
    javascript基础知识show
    Java中的四舍五入
    JavaScript中数组迭代方法(jquery)
  • 原文地址:https://www.cnblogs.com/alex-13/p/3476184.html
Copyright © 2020-2023  润新知