看过高手们的添加"更多(more)"的办法!以下简称more,有看过针对文章显示模块等办法,但是没找到关于任意模块的添加“more”办法,只是觉得不太好用~自己研究出来了一个简单解决方案
在细细研究模块中发现可以通过类似模块的Module Class Suffix来实现自定义模块链接(module link),方法如下:

1、我们要在需要用到的在后台模块里面添加类似Module Class Suffix的输入选项

 

拿joomla自带的mod_custom作为实例,找到文件\modules\mod_custom\mod_custom.xml

找到代码:

 <param name="moduleclass_sfx" type="text" default="" label="Module Class Suffix" description="PARAMMODULECLASSSUFFIX" />

在其后添加

<param name="module_customlink" type="text" default="#" label="module custom link" description="about custom link of module" />

2、找到模板的module.php文件,然后添加more

一般位置都在模板位置下面的html文件夹内,例如templates\ja_teline_iii\html\module.php

查找function modChrome_的函数,有的模板用到的模板函数比较多,例如ja_teline_iii有2个,function modChrome_JArounded和function modChrome_JAxhtml,这里我们以ja_teline_iii模板的module.php里面的function modChrome_JAxhtml为例

找到

<h3><?php echo $module->title; ?></h3>

修改为:

<span class="spanleft"><h3>title; ?></h3></span>
<span class="spanright"><a  href="/get('module_customlink'); ?>">more</a></span><!--请一定注意href="/..."多了个"/"在复制代码的时候切记删除-->

更深入一层,如果不想显示自定义链接的话,不防在xml再加上一条,

<param name="show_customlink" type="radio" default="1" label="Show Customlink" description="PARAMFRONTPAGEITEMS">
<option value="1">show</option>
<option value="0">hide</option>
</param>

设定是否显示自定义链接more,然后,修改module.php文件

<h3>
   <span class="spanleft">title; ?> </span>
   get('show_customlink')==1) : ?>
    <span class="spanright"><a class="more" href="/get('module_customlink'); ?>" target="_blank">>'); ?></a></span><!--请一定注意href="/..."多了个"/"在复制代码的时候切记删除-->
   <?php endif; ?>
</h3>

*注:<span class="spanleft">这种写法是因为我的样式表中定义了spanleft、spanright,当然这里也可以写成<span sytle="float:left"></span>、<span style="float:right"></span> 功能只是让标题和more一个居左、一个居右罢了!

另外,可在设计模板,或是现有模板基础上调用自定的module  比如有的模板模块调用的时候,可以加一句style="JAxhtml"  这样这一块的模块就会用JAxhtml的模块内容。这样即可避免有的模块不需要自定义的“更多”

原创文章,转载请标明出处

除特殊标明文章转自第三方网站,文章均由JOOMLASK.COM原创提供
欢迎友情转载,请务必保留本文出处并引用本文链接: 让joomla模块有自定义链接的更多(more) [可后台输入]