XOOPS模块开发快速入门中文翻译(二)由于这两天一直研究XOOPS的模块,所以找到了这篇很好的模块开发快速入门。看了以后,就兴致勃勃的来开发模块了,可是开发的过程中遇到一些问题。应该是我看的太快了,要学而时习之啊。因此翻译在这里。=
大家好,又见面了,我是你们的朋友全栈君。 由于这两天一直研究XOOPS的模块,所以找到了这篇很好的模块开发快速入门。
看了以后,就兴致勃勃的来开发模块了,可是开发的过程中遇到一些问题。
应该是我看的太快了,要学而时习之啊。因此翻译在这里。
==============
作者:Surance Yin
邮箱:Suranceyin@yahoo.com.cn
主页:http://www.fltek.com.cn
=================
使用 index.php
明白了 xoops_version 吧,现在就可以安装模块了!
当模块安装好后,单击主菜单的“tutorial”,可以看到一个空白的页面。下载打开index.php.
<?php // Tutorial // Created by KaotiK require(‘http://www.cnblogs.com/mainfile.php’); require(XOOPS_ROOT_PATH.’/header.php’);
require(XOOPS_ROOT_PATH.’/footer.php’); ?>
|
这里有3行新的语句。我们的代码就要写在“…header” 和 “….footer”之间。我们来测试一下,输入以下代码:
<?php // Tutorial // Created by KaotiK require(‘http://www.cnblogs.com/mainfile.php’); require(XOOPS_ROOT_PATH.’/header.php’);
echo “Hello world!”;
require(XOOPS_ROOT_PATH.’/footer.php’); ?>
|
好,现在如果单击主菜单的 “tutorial” 就会看到 “Hello world!”了!
创建一个列表
这一步开始,我们替代掉刚才一个测试,来做一个真正的列表!
将以下代码:
替换为
$member_handler =& xoops_gethandler(‘member’); $foundusers =& $member_handler->getUsers(); foreach (array_keys($foundusers) as $j) { echo $foundusers[$j]->getVar(“uname”).'<br>’; }
|
在主菜单上单击tutorial,可以看到目前在线用户的列表。好,现在我们来逐行看代码。第一行得到了一个关于用户的句柄(可以理解为关于用户的一个操作函数集合),并且这个句柄赋给 $member_handler. 第二行抓取到所有的用户,并存放到$foundusers这个数组变量里面.然后用 foreach来循环所有的用户.
警告: 这个例子只适合于用户比较少的系统。
$member_handler =& xoops_gethandler(‘member’); $foundusers =& $member_handler->getUsers(); foreach (array_keys($foundusers) as $j) { //echo $foundusers[$j]->getVar(“uname”).'<br>’; print_r($foundusers[$j]); echo ‘<br><br><br>’; }
|
这个函数显示了用户的所有变量,看起来是一个很长的列表。
继续,我们要格式化这个列表,显示更多的信息。
首先,创建一个表头。这里用的方法只是适合“快速入门”的,但是并不一定是最正确的方法。之后,我们会讲述怎么用一个更科学的办法。.
为了避免你混淆,我展示一下index.php:
<?php // Tutorial // Created by KaotiK require(‘http://www.cnblogs.com/mainfile.php’); require(XOOPS_ROOT_PATH.’/header.php’); ?> <table width=”100″ border=”0″> <tr> <td bgcolor=”#99CC99″>Name</td> <td bgcolor=”#66CC99″>Email</td> </tr> </table> <?php require(XOOPS_ROOT_PATH.’/footer.php’); ?>
|
现在在主菜单上点击tutorial 你会看到一个含有Name 和Email的表头. 现在,我们给这个表一些数据。
<?php // Tutorial // Created by KaotiK require(‘http://www.cnblogs.com/mainfile.php’); require(XOOPS_ROOT_PATH.’/header.php’); ?> <table width=”100″ border=”0″> <tr> <td bgcolor=”#99CC99″>Name</td> <td bgcolor=”#66CC99″>Email</td> </tr> <?php $member_handler =& xoops_gethandler(‘member’); $foundusers =& $member_handler->getUsers(); foreach (array_keys($foundusers) as $j) { echo ‘<tr><td>’.$foundusers[$j]->getVar(“uname”).'</td><td>’.$foundusers[$j]->getVar(“email”).'</td></tr>’; } ?> </table> <?php require(XOOPS_ROOT_PATH.’/footer.php’); ?>
|
在主菜单上点击tutorial ,可以看到含有“用户名”、“邮箱”两列的表.。不过这个代码看起来很傻,我们改变一下:
<?php // Tutorial // Created by KaotiK require(‘http://www.cnblogs.com/mainfile.php’); require(XOOPS_ROOT_PATH.’/header.php’);
echo ‘<table width=”100″ border=”0″> <tr> <td bgcolor=”#99CC99″>Name</td> <td bgcolor=”#66CC99″>Email</td> </tr>’; $member_handler =& xoops_gethandler(‘member’); $foundusers =& $member_handler->getUsers(); foreach (array_keys($foundusers) as $j) { echo ‘<tr><td>’.$foundusers[$j]->getVar(“uname”).'</td><td>’.$foundusers[$j]->getVar(“email”).'</td></tr>’; } echo ‘</table>’; require(XOOPS_ROOT_PATH.’/footer.php’); ?>
|
好多了吧!一样的结果,但是代码看起来干净很多。现在我们要应用更多的xoops标准。首先,采用语言文件来替换name和email。创建一个文件夹,命名为language (注意: 文件夹名称必须为小写.)。在这个文件夹中再创建子文件夹english. 在 english 文件夹中创建文件main.php. 在main.php里面输入:
<?php define(‘TT_NAME’,’Name’); define(‘TT_EMAIL’,’Email’); ?>
|
在这个文件夹中创建文件 modinfo.php ,输入:
为什么要创建2个常量来代替文本呢?这样是为了支持多语言。打开index.php ,将代码改为:
<?php // Tutorial // Created by KaotiK require(‘http://www.cnblogs.com/mainfile.php’); require(XOOPS_ROOT_PATH.’/header.php’);
echo ‘<table width=”100″ border=”0″> <tr> <td bgcolor=”#99CC99″>‘.TT_NAME.’</td> <td bgcolor=”#66CC99″>‘.TT_EMAIL.’</td> </tr>’; $member_handler =& xoops_gethandler(‘member’); $foundusers =& $member_handler->getUsers(); foreach (array_keys($foundusers) as $j) { echo ‘<tr><td>’.$foundusers[$j]->getVar(“uname”).'</td><td>’.$foundusers[$j]->getVar(“email”).'</td></tr>’; } echo ‘</table>’; require(XOOPS_ROOT_PATH.’/footer.php’); ?>
|
很好,现在,我们在模块中使用了语言文件.
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/155288.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】:
Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】:
官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...