ecshop怎么全局调用指定文章二级分类

2025-01-04 09:22:20
推荐回答(3个)
回答1:

调用指定文章二级分类的文章吗?后台设置模板里,修改文章分类模块,选择即可

回答2:

assign('article_categories', article_categories_tree(0)); //文章分类树?> {if $cat.id eq 16}

  • {$child.name|escape:html}
  • {/if}

    其中 {if $cat.id eq 16}的意思是调用文章分类ID为16下的二级文章分类

    1、先打开ecshop根目录下的includes/init.php文件加入以下代码:
    $smarty->assign('class_articles_1', index_get_class_articles(1,6)); // 分类调用文章
    //调用多个就修改传进去的参数,以及模板接收的变量,其中上面的1就是文章分类ID,其中6是调用数量
    $smarty->assign('class_articles_2', index_get_class_articles(2,6)); // 分类调用文章
    复制代码
    index_get_class_articles( )函数中的第一个参数就是我的文章分类ID,这个ID怎么查找呢?
    我的做法是进入ecshop的数据库,打开ecs_article_cat这张表,可以发现你要显示的文章分类对应的cat_id,这个就是文章分类ID,直接在index_get_class_articles( )函数中调用就可以了。
    2、在init.php文件末尾加入下列函数:
    function index_get_class_articles($cat_aid, $cat_num)
    {
    $sql = "SELECT article_id, title,open_type,cat_id,file_url FROM " .$GLOBALS['ecs']->table('article'). " WHERE cat_id = ".$cat_aid." and is_open = 1 LIMIT " . $cat_num;
    $res = $GLOBALS['db']->getAll($sql);
    $arr = array();
    foreach ($res AS $idx => $row)
    {
    $arr[$idx]['id'] = $row['article_id'];
    $arr[$idx]['title'] = $row['title'];
    $arr[$idx]['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ?
    sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']) : $row['title'];
    $arr[$idx]['cat_name'] = $row['cat_name'];
    $arr[$idx]['add_time'] = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']);
    $arr[$idx]['url'] = $row['open_type'] != 1 ?
    build_uri('article', array('aid' => $row['article_id']), $row['title']) : trim($row['file_url']);
    $arr[$idx]['cat_url'] = build_uri('article_cat', array('acid' => $row['cat_id']));
    }
    return $arr;
    }
    3、以下是前台的调用代码:


  • 回答3:

    $GLOBALS['smarty']->assign('article_categories',   article_categories_tree(0)); //文章分类树
    ?>

                {if $cat.id eq 16}          
                  
                                 
                                 {$child.name|escape:html}
                                 
                  {/if}



         其中 {if $cat.id eq 16}的意思是调用文章分类ID为16下的二级文章分类