如何避免在联系人类别中显示jos-Error?

时间:2015-07-08 13:56:27

标签: php joomla joomla3.0

欢迎! 单击类别联系人时显示错误页面时出现问题。我将简要介绍一下情况和情况:

  • 我想要一个功能齐全的联系表格,选择你想要写的人(页面描述+下拉列表,选择联系人+联系表格在一个页面上)。这通过以下方式实现:
    • 每个联系人(例如ContactA,ContactB)都被分配到联系人类别(例如ContactC);
    • 使用以下类型创建菜单项(例如ContactUs):单一联系人;
    • 选择“默认”联系人(选择联系人:) ContactA;

网站的外观和功能应该在开发的这个阶段 - 选择一个特定的联系人后 - 发送一个应该发送的信件(仍然需要覆盖布局,但不是要点)。

  • 当您从下拉列表(ContactB)中选择(默认情况下除外)联系人时,将重新加载页面 - 需要更改收件人。
  • 通过添加额外级别 - 联系人和联系人类别(例如“HOME-> ContactUs”到“HOME-> ContactUs-> ContactC-> ContactB”),在重新加载后面包屑发生变化。哪个本身看起来不错,但我会避免这个级别。
  • 当一个好奇的访问者点击面包屑中的ContactC时 - 此页面重新加载并且有一个地址mypage.com/index.php/contactus/10-contactc/3-contactb,其中数字等于元素的ID;
  • 并显示错误消息“jos-Error:Contact not found”,其中错误信息位于标签COM_CONTACT_ERROR_CONTACT_NOT_FOUND下的翻译中。

我的问题是:如何避免显示此错误?我看到了三个解决方案:

  • 编写一个php函数(例如在error.php中),它检测到这个特定错误的发生,并(例如)重定向到起始页面 - 我不知道也没有引用使用或者是否“我可以”。< / LI>
  • 关闭显示联系人类别的面包屑(在全局配置和联系选项中选中,但页面上没有任何更改)。
  • 专门针对这一个链接可见性设置css:隐藏(或者如果“我可以”php通过搜索href的值来给css类?)。

我有Joomla 3.4.x和mysql数据库。

1 个答案:

答案 0 :(得分:0)

我使用jQuery实现了第三个解决方案。 (我知道这不是最好的,通用的解决方案,但它适用于我,所以它最终并不愚蠢。) 它看起来像这样:

jQuery(document).ready(function(){
  //get link by end//
  var contactC = $('a[href$="contactus/10-contactc"]');
  //get parent of link*//
  var contactCParent = contactC.parent(); 
  //add parent of link class//
  contactCParent.attr( "class", "hiddenCat" );
});

在CSS中我有额外的行:

.hiddenCat {
  display: none;
}

有用的链接:

How to get element by href in jquery

jQuery find all elements by part of the id attribute

jQuery attr add id to existing element

jQuery Api - parent()

jQuery Api - attr()

/ * /我必须找到父母,否则Joomla会显示两个跨度分隔符(&#34; HOME-&gt; ContactUs-&gt; - &gt; ContactB&#34;)。