Remember  Register | Lost Pass?
 
系统导航
IP
您的IP是38.107.179.222
文章管理 :: Personal

研究:article2.0rc xoops2.3克隆区块功能+复制区块方法各区块指定不同


http://xoops.org.cn/modules/newbb/vie ... p?topic_id=17781&forum=25

xoops2.3克隆区块功能很实用,但如果想针对article不同区块设置模板无法办到--因为他与原区块共用同一template,虽然可以用css+js的方式巧妙的解决这个事情,但是很繁琐,不易于复用,所以本人试着将article的区块复制,再配合xoops2.3的克隆功能,更为易用。

基本上就两个文件,一个是/modules/article/blocks/blocks.article.php还一个是/modules/article/blocks/blocks.news.php其余的tag什么的还有分类,如果想复制用相同方法也可得到。


先拿复制“文章区块”来说,举一反三
具体方法如下:
第一步
xoops_version.php中找到如下代码段

$modversion["blocks"][] = array(
"file" => "blocks.article.php",
"name" => art_constant("MI_ARTICLE"),
"description" => art_constant("MI_ARTICLE_DESC"),
"show_func" => $GLOBALS["ART_VAR_PREFIX"]."_article_show",
"options" => "time|10|2|0|c|0",
"edit_func" => $GLOBALS["ART_VAR_PREFIX"]."_article_edit",
"template" => $GLOBALS["artdirname"]."_block_article.html");
复制此段代码在其下并加以修改

$modversion["blocks"][] = array(
"file" => "blocks.article_1.php",
//复制区块主要文件
"name" => art_constant("MI_ARTICLE_1"),
//复制语言包中常量,使之可显示不同标题,如“文章”变成“资讯”
"description" => art_constant("MI_ARTICLE_DESC_1"),
//同上
"show_func" => $GLOBALS["ART_VAR_PREFIX"]."_article_show_1",
//方法复制
"options" => "time|10|2|0|c|0",

"edit_func" => $GLOBALS["ART_VAR_PREFIX"]."_article_edit_1",
//方法复制
"template" => $GLOBALS["artdirname"]."_block_article_1.html");
//模板复制

第二步

找到blocks/block.article.php 将其复制为我们上面定义的名字:block.article_1.php。然后打开此文件修改

function [VAR_PREFIX]_article_show($options)


function [VAR_PREFIX]_article_show_1($options)

修改

function [VAR_PREFIX]_article_edit($options)


function [VAR_PREFIX]_article_edit_1($options)
保存。

第三步
/templates/blocks/articles_block_article.html
复制,名为articles_block_article_1.html

第四步
article的语言文件 language/相关语言中修改添加MI_ARTICLE_1 值可设置为“文章1”;MI_ARTICLE_DESC_1可同原始值留空对程序实用无大碍

完成。

以上工作做过简单测试,需要注意的是

所有的区块显示时间格式必须一致,否则会出错,原因未知。

经过这些修改,article可以更完美的完成诸多内容发布,配合xoops2.3复制区块功能,可应用于大型站点
注:本人非php程序员,所做之hack凭经验积累,可能不准确,请诸位xoopser详细测试之后反馈回xoopschina社区。

-----------------------------

感谢xoops团队,感谢xoops社区,感谢xoops社区的老朋友新朋友
愿xoops社区壮大,xoops功能更强
<< Article 分类无法删除的问题 µTorrent 的簡單介紹 >>
跟踪网址
  • 文章地址: http://y109.jzland.com/modules/article/view.article.php?c3/7
  • 跟踪地址: http://y109.jzland.com/modules/article/trackback.php?7
API: 工具箱 Email PDF 书签 打印 WordPress | RSS | RDF | ATOM
Copyright©Gavin's Zone !
网友个人意见,不代表本站立场。对于发言内容,由发表者自负责任。
Powered by y109 . 姚俊刚的个人主页! 京ICP备05062866号
Since 2005 Jzland.com All rights reserved