ecshop手機端模板引擎切換到smarty3.1.30-之改造insert_ads

在網上下載的一個小京東的模板4.1的模板,原模板引擎是ecshop的,感覺不是很好用,切換到smarty吧,

選擇了新版的smarty3.1.30使用,遇到的第一個問題就是有一些函數使用起來不對,所以改造一下,遇到的第一個就是insert_ads

這個廣告在手機端只顯示一個,所以就簡化了一個,改成了這個樣子

function insert_ads1($arr)
{
    static $static_res = NULL;

    $time = gmtime();


    $sql = 'SELECT a.ad_id, a.position_id, a.media_type, a.ad_link, a.ad_code, a.ad_name, p.ad_width, ' .
        'p.ad_height, p.position_style, RAND() AS rnd ' .
        'FROM ' . $GLOBALS['ecs']->table('ecsmart_ad') . ' AS a ' .
        'LEFT JOIN ' . $GLOBALS['ecs']->table('ecsmart_ad_position') . ' AS p ON a.position_id = p.position_id ' .
        "WHERE enabled = 1 AND a.position_id = '" . $arr['id'] .
        "' AND start_time <= '" . $time . "' AND end_time >= '" . $time . "' " .
        'ORDER BY rnd LIMIT 1';
    // echo $sql;
    $row = $GLOBALS['db']->getrow($sql);

    $src = (strpos($row['ad_code'], 'http://') === false && strpos($row['ad_code'], 'https://') === false) ?
        DATA_DIR . "/afficheimg/$row[ad_code]" : $row['ad_code'];
    $ads = "<a href='affiche.php?ad_id=$row[ad_id]&uri=" . urlencode($row["ad_link"]) .
        "' target='_blank'><img src='$src' width='" . $row['ad_width'] . "' height='$row[ad_height]' border='0' /></a>";


    return $ads;
}

而對於前臺的調用,使用這樣的語法就可以調用了

 <dt> {insert name="ads1" id="6" num="1"}</dt>


個人發表一點意見,商城這個東西是一個變化的東西,有一些東西是沒有辦法做成產品的,就像街頭小吃一樣。雖然有許多速食食品,依然不能取代小吃。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章