模块

XOOPS已经多站点化了!!(Beta测试)

wishcraft  16-Mar-2009 22:57 7258 阅读次数   11 评论 
结构数据库更改

数据库因为多XOOPS所必需的关系材料而有所更改。这包括一个用于防火墙的新表(访问策略)以及一个用于模块间新闻合作的表,还有一个基于配置系统设置的域名表(3)。这些表可在升级时进行修改,但为了支持这些表的存在,也许可以使用SHOW TABLE SQL语句进行传播。

访问策略(XOOPS防火墙)

XOOPS策略系统旨在提供代理重定向、IP范围锁定/解锁(对于内部网络应用很有用)。下表定义在安装中的mysql.structure.sql中

与此接口文件都在内核中,这是为了确保XoopsModel中新的持久化对象系统被使用。以下文件适用于这一原则。

引用

/kernel/policy.php
/class/xoopspolicy.php


如你所见,策略防火墙可以被保护者和类似的产品用于锁定侵略性IP和详细信息,它也可以用来定义代理重定向,例如,例如,对于mobile.examplesite.com扩展,因为它具有例如诺基亚代理类型的重定向条款。

Resized Image

用于定义这一表的表单位于系统管理员中,它可以删除或创建策略。对于任何侵略性主机,客户端向浏览器发送403禁止请求。

XOOPS新闻合作

新闻合作非常重要,在像spaces.live.com、facebook以及许多应用程序中,网站上的RSS源是所有在你的服务上安装的(模块)系统的合作。这种合作包括广泛的可选方案,以允许通过新闻源访问系统数据趋势。

本版本已包含此功能,以便后端.php 和 sitemap.php 模块能使用协作方法搜索 RSS 数据。这将在模块表中添加两个新字段,以及一个名为 newfeeds 的新表。在 /kernel/module.php 中,还增加了2个解析 RSS 和站点地图数据的子程序。

这是通过修改 xoops_version.php 来包含协作需要的函数和文件实现的。

xoops_version.php - 示例扩展

// 后端 RSS 内容
// 请注意 **** 模块开发者 **** 
// 这将是一个新条目在模块安装中。 
$modversion['hasRss'] = 1
$modversion['rss']['rss_func'][0] = "xcenter_backend_rss"
$modversion['rss']['rss_file'][0] = "include/rss.php"

// 后端 站点地图 内容
// 请注意 **** 模块开发者 **** 
// 这将是一个新条目在模块安装中。 
$modversion['hasSitemap'] = 1
$modversion['sitemap']['sitemap_func'][0] = "xcenter_sitemap"
$modversion['sitemap']['sitemap_file'][0] = "include/sitemap.php"
$modversion['sitemap']['sitemap_agent'][0] = "all";


这意味着现在可以调用 XOOPS_ROOT_PATH 中 backend.php 和 sitemap.php 核心文件来协作模块的 RSS 和链接站点地图。安装模块时也会搜索这些设置,这意味着站点地图或后端 RSS 规范中的数据可以自主使用这些新规范。这也意味着站点的后端正确协作数据,应包括所有数据。

对 /kernel/module.php 进行了修改以包含这些更改,增加了两个新函数。

引用

$module_handler -> function rss($items, $userid, $sort)
$module_handler -> function sitemap($items, $userid, $sort, $agent)


多 Xoops - 域名管理

域名管理使用现有的配置表模型在 xoops 中进行。还有一个新字段 "domains",它是 newblocks 中的一个 mediumtext 字段。可能还需要将其添加到配置表中,以实现按域名进行配置。

Resized Image

这是域名控制表单。它影响域名表。允许进行语言选择、启动模块和主题等。但我还使用了配置表结构,加上父 ID 选择,以允许在 Xoops 中使用此概念进行任何方向的开发。

它使用 XOOPS 表单对象,具有简洁且易于调整的代码。这将允许核心和模块开发者主观上添加到域名配置中,而不会深远地影响配置脚本的运行时间。

域也有区块管理,所以您可以根据运行的主题将区块克隆或放在不同的地方,区块管理采用标准表单并可以选择可用的域区块。
这确保您的分布简洁,不会因为不同域名的相同页面连续排名而被降级。

区块

Resized Image

您可以在blockadmin中看到一个新选项,支持根据期望显示的域选择区块。这意味着在/class/xoopsblocks.php中进行了一些微小的SQL更改。
系统其他部分的更改也涉及模板系统,避免冲突,这是对smarty函数以及在管理员缓存文件名的一些更改。

评分 0/5
评分: 0/5 (0票)
投票被禁用!


Login

Who's Online

247 user(s) are online (25 user(s) are browsing Publisher)


Members: 0


Guests: 247


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Aug 31
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Latest GitHub Commits

Categories