【问题标题】:Get Joomla Banner Description in the module获取模块中的 Joomla 横幅描述
【发布时间】:2013-08-13 03:48:52
【问题描述】:

您好,我想修改默认的 joomla 横幅模块,以便不仅显示横幅图像,还显示已在后端输入的描述文本。 你能帮助我吗?谢谢

【问题讨论】:

  • 你在使用Joomla默认mod_banner吗?
  • @Tomado 是的,我尝试回显 $item->description 但它不起作用

标签: joomla


【解决方案1】:

如果您使用默认的mod_bannerJoomla,则需要在其中添加一些更改,以便在要显示的模块中显示您的描述。

  1. 你需要去前端组件,com_bannersmodelsbanners.php。导航为它是components\com_banners\models\banners.php在这个文件上的getListQuery你需要添加以下'a.description as description,'. 中的代码行 $query->select 和其他人一样。就是这个文件。

  2. 现在转到您的modules\mod_banners\tmpl\default.php 并在您尝试echo $item->description 时访问该变量描述。

或者

如果您不想更改核心文件,那么您需要使用 模板覆盖 Joomla! 的输出来进行更改!核心。

欲了解更多详情,请访问该链接How to override the output from the Joomla! core

【讨论】:

  • 啊..你有其他解决方案只需要修改default.php吗?我希望不要编辑模型之类的核心内容:(
  • 好的,谢谢龙卷风。我确实想从模板端覆盖它,但你不能覆盖模型文件。只有视图的文件可以被覆盖。但没关系,我已经设法找到其他解决方案。感谢您的帮助:)
  • @dreamexploded Yapp你只能用模板覆盖覆盖html文件。建议:你可以直接将数据提取到html文件中。
  • 如果他们不提供描述选项,为什么他们会有描述选项。我发誓 joomla 有时是垃圾。
【解决方案2】:

这篇文章很旧,但这里是答案:

<?php 
     /** Description from the Banner  **/
     $db = &JFactory::getDBO();
         $bid = $item->id;
         $sql = "SELECT `description` FROM `rlz1b_banners` WHERE '$bid'"; 
                 /*rlz1b_banners is your database name*/
         $db->setQuery($sql);
         $db->query();
         $res = $db->loadAssocList(); 
?>
<p><?php  echo $res[0][description]; ?></p>

这对于 Joomla 2.5 中的 SEO 友好横幅非常有用。

【讨论】:

  • 在 Joomla 3.6 中也很好用。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-28
  • 1970-01-01
  • 1970-01-01
  • 2012-02-24
  • 1970-01-01
相关资源
最近更新 更多