1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

关于views模块的一个问题

本帖由 天蝎网子2008-01-02 发布。版面名称:源码讨论

  1. 天蝎网子

    天蝎网子 New Member

    注册:
    2005-09-06
    帖子:
    19
    赞:
    0
    用views生成了某个分类的 "最新文章"的块. 名称为news.

    然后在右栏插入那个块.

    对生成的代码不是很满意,想自定义views的输出.

    于是就用Theme wizard生成输出代码.里边有三个部分.
    This code goes in your template.php file
    This code goes in a file named views-list-news1.tpl.php
    This code goes in a file named views-list-news1.css

    我的问题是: 难道每个块都要插入一段代码到templates.php文件里吗. 如果我的首页上做了几十个块,分别调用几十个分类的最新文章.
    那templates.php岂不是很臃肿了...

    有没有比较好的解决方案.
     
  2. geniusy

    geniusy New Member

    注册:
    2007-11-21
    帖子:
    322
    赞:
    1
    你可以在templates.php和tpl.php文件里生成比较通用的代码,比如<li id="XX"></li>这种,然后自己通过css分别控制每个区块的外观。
    其实默认的都已经很好的,只是嵌套层数比较多,但是利于控制。
     
  3. 天蝎网子

    天蝎网子 New Member

    注册:
    2005-09-06
    帖子:
    19
    赞:
    0
    外观本来就是用css控制的. 你没有回答到我的问题哦...
     
  4. geniusy

    geniusy New Member

    注册:
    2007-11-21
    帖子:
    322
    赞:
    1
    你如果要每个view的代码都不一样当然得做几十次了。我的意思是你把少弄几种样式就行了,然后相同代码的view又用css控制外观
     
  5. 天蝎网子

    天蝎网子 New Member

    注册:
    2005-09-06
    帖子:
    19
    赞:
    0
    你还是没看懂我的问题....

    也许是我表达能力太差吧..唉.
     
  6. geniusy

    geniusy New Member

    注册:
    2007-11-21
    帖子:
    322
    赞:
    1
    templates.php里面只是自定义函数的,生成block的代码主要还是通过block.tpl.php控制。
     
  7. 天蝎网子

    天蝎网子 New Member

    注册:
    2005-09-06
    帖子:
    19
    赞:
    0
    我的问题不是怎么自定义views输出的代码. 明白吗?

    我的问题是, 增加一个views, 就要增加一段function到 templates.php, 还要增加一个对应的views-list-***.tpl.php文件.
    如果10个分类,就要增加10个vies, 还要增加10段function 以及10个 views-list-****.tpl.php文件.
    比如
    代码:
    function phptemplate_views_view_list_news1{...}
    function phptemplate_views_view_list_news2{...}
    function phptemplate_views_view_list_news3{...}
    function phptemplate_views_view_list_news4{...}
    ......
    
    当一个首页调用的分类块比较多了, templates.php文件就会变得很臃肿.
    不知道有没有更好的解决办法.

    不知道这样说够不够清楚. :sweat: