-
Joomla! 1.7: 在各种位置显示指定module
在 Joomla! 实践中, module 是可以输出独立或相关内容的一个”方块”. 目前我用到的 module 定位方法有三种: 1, 在总模板(yourtemplate/index.php)中定位, 这个是最基本的了. 2, 在改写模板(override)中定位. 可以给没 module 指定一个模板中并没有定义的位置编码, 然后在 override 模板(一般是 default.php )中引用: <div class=”features”> <?php /* get all Modules assigned to custom Position */ $myinset_modules = &JModuleHelper::getModules( ‘specialposition‘ ); /* loop through the array and render their output */ foreach ($myinset_modules as $mymodule) { if ($mymodule->showtitle)…
-
Cherokee 完美配置 Joomla! 1.7.x
下面是从头开始配置 Joomla! 1.7.x 的步骤. 环境是 Ubuntu 11.10 64bit + Cherokee 1.2 + PHP 5.3 + MySQL 5.1: 登录到 cherokee-admin vServers > + > Manual. 以下假设建立的 vServer 是 mysite vServers > mysite > Basics : 在 Document Root 填写 Joomla! 的安装路径, 例如 /var/www … Dirctory Indexes: index.php, index.html vServers > mysite > Behavior: 添加 PHP 支持:…
-
Joomla! 1.7.x 缺省模板的 Page Class
真是不理解, Joomla! 1.7的缺省模板Beez2里居然没有把 Page Class 写在 <body> 里面. 在菜单条目里可以给每一个页面设置 Page Class, 但如果 Page Class 不是出现在模板的 <body> 里, 那通过 Page Class 来做特定页面的 CSS 布景就不能实现. 还好, 找到了实现方法: 编辑/templates/beez_20/index.php. 在33行找到: $doc->addScript($this->baseurl.’/templates/beez_20/javascript/md_stylechanger.js’, ‘text/javascript’, true); 在之后添加成: $doc->addScript($this->baseurl.’/templates/beez_20/javascript/md_stylechanger.js’, ‘text/javascript’, true); $pageclass = & $app->getParams(‘com_content’); 然后, 找到 <body> 并改为: <body class=”<?php echo $pageclass ->get(‘pageclass_sfx’); ?>”> 任务完成. 😀 参考链接: http://forum.joomla.org/viewtopic.php?f=619&t=623802&p=2653319#p2653319
-
Joomla! 1.7 与多语种网站
最近要帮朋友建个中英双语网站(感谢Nathan的引荐), 于是稍微担心了一下, 因为自从Joomla! 1.5之后我还没用它做过多语种的网站. 查阅了一下, Joomla!进步还是可以的, 已经内建多语种支持了, 无需其它组件. 1, 首先, 是添加网站前端和后台的中文支持, 这是最简单的一步. 1.7UI翻译已经由国内团队(joomla.cn)完成, 下载地址在此: http://joomlacode.org/gf/project/jtranslation1_6/frs/?action=FrsReleaseBrowse&frs_package_id=5695 下载完成后, 在Extension Manager里面上传安装即可. 安装之后, 前后台的UI就都支持简体中文了: 2, 下一步是添加简体中文作为一种内容语言, 同样是在Language Manager: 完成之后, 网站内容就支持2种语言了. 3, 下面, 在Plug-in Manager里面, 开启System – Language Filter. 4, 然后是菜单, 稍复杂一点. 首先在Menu Manager里面新建一个menu, 此menu只有一个item, 我只是随意的设置一个文章链接, 需要注意的是此item的language一定要设置为All. 最后, 将此item设置为Home, 也就是缺省 首页. 不必为此menu关联任何模块. 5, 关键时候到了. 现在为中英文分别建立一个主菜单. 名称虽然不影响系统, 但为了方便, 我建议命名为zh-Main, en-Main这样两个. 然后, 每个menu里面的所有item都要设置成对应语种,…
-
小试Joomla! 1.6
Joomla! 1.6已经放出有一段时间了. 相比Drupal7, 我觉得Joomla! 更适合于制作企业网站, 而Drupal更适合做社区/SNS这类的网站. 下面杂乱的记一下使用Joomla!制作网站的一些笔记. 去掉缺省模板beez5里面的字体缩放, 这个还真不好找呢. 打开/templates/beez5/index.php, 找到如下一行, 应该在30多行处吧, 删除或者注释掉: $doc->addScript($this->baseurl.’/templates/beez5/javascript/md_stylechanger.js’, ‘text/javascript’, true); 图文并茂的显示banner, 这个要求不高, 不过却要修改一番. 首先要override(这个我怎么找不到对应的中文词) banner的模板. 新建或修改 /templates/beez5/html/mod_banners/default.php, 在图片代码之后添加即可: <div><span><?php echo $item->params->get(‘alt’); ?></span></div> 然后, Alternative Text里面的文字就可以在图片后显示出来了. 为每个页面设定class. 缺省模板beez5里面, 竟然没有任何对于<body>的代码, 想给<body>添加个class对吧? 至少我非常希望这样. 编辑 /templates/beez5/index.php, 在顶部的php块里添加: $active = JFactory::getApplication()->getMenu()->getActive(); 然后把<body>改为如下即可. <body class=”<?php echo $active->alias; ?>”> 这样如果你给菜单首页链接的alias是homepage, 那么首页的body html应该就是 <body class=”homepage”> 这样接下来写CSS就非常轻松了, 例如: body.homepage…
-
解剖Joomla! 1.5的模板架构
Joomla! (注意全名包括这个“!”)1.5总算出来了,目前更是更新到了1.5.2。难拒其诱惑,我打算用Joomla!做网站了。下面说说Joomla! 1.5的模板吧。 如图,beez是随1.5发行包而来的一套功能展示布景,虽然不是很花哨,但是大大小小的模板功能基本都用到了。值得解剖一番。先看看几个必要文件和文件夹: templateDetails.xml 这个是模板的编目文件,类似windows软件中setup.ini这样的角色。 index.html 名字很正经,但没什么用,只是为了避免文件夹索引被显示出来而已。 index.php 模板文件的入口,主要的布局和布局逻辑都在这里。 params.ini 模板参数文件。简单的模板是不需要这个的,但是如果你想设计一个同时适应1280和1440的模板,可能就需要使用参数了。 template_thumbnail.png 这个是模板的预览图,一般都不大,200×150左右,用于在模板管理界面上看到模板的预览。 favicon.ico 网站的图标。如有此文件,Joomla!会自动在模板中显示出来。 html文件夹用来存放override页面,就是用来取代系统模组缺省模板的。例如:/templates/beez/html/mod_search/default.php 将取代 /modules/mod_search/tmpl/default.php。 下面标注一下最重要的templateDetails.xml和index.php文件。首先是templateDetails.xml文件: <?xml version=”1.0″ encoding=”utf-8″?> <!DOCTYPE install PUBLIC “-//Joomla! 1.5//DTD template 1.0//EN” “http://dev.joomla.org/xml/1.5/template-install.dtd”> <install version=”1.5″ type=”template”> <!– 下面这些模板信息,套用过来填写你自己的就可以了 –> <name>beez</name> <creationDate>19 February 2007</creationDate> <author>Angie Radtke/Robert Deutz</author> <authorEmail>[email protected]</authorEmail> <authorUrl>http://www.run-digital.com</authorUrl> <copyright></copyright> <license>GNU/GPL</license> <version>1.0.0</version> <description>Accessible template for Joomla 1.5</description> <!–…