2017-08-13 72 views
2

我有很多項目的列表。當用戶選擇項目時會將用戶引導到具有多個圖像和文本的文章頁面。要查看的圖像的名稱和要顯示的文本取決於傳遞的值。Joomla - 如何傳遞和檢索URL中的參數文章

我已經用HTML頁面和java使用查詢字符串實現了這個功能。 來自查詢字符串的值用於使用'id'屬性爲圖像提供'src'屬性值以找到該圖像。我想實現與joomla相同的功能。
我曾經在java中下面的代碼 之前在URL /class.html?id=2gb

</script> 
     <script type="text/javascript"> 
      window.onload = func 
      function func() { 
       var className = getParameterByName('id'); 
       document.getElementById("classimage").src = "../images/banner/" + className + ".jpg"; 
       document.getElementById("className").innerHTML = className; 
       document.getElementById("className").href = "class.html?id=" + className 
         } 
      function getParameterByName(name) { 
       name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
       var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
        results = regex.exec(location.search); 
       return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
      } 
    </script> 

在HTML

<img id="classimage" > 
<a id="className" href=""></a> 

回答

0

您可以先創建你的文章模板的override

TEMPLATE_NAME/html/EXTENSION_NAME/VIEW_NAME/FILE_NAME.php

在你的情況下它會是:

TEMPLATE_NAME/html/com_content/article/default.php

一旦你做到了這一點,那麼它的時間使用jinput

包括在你的被覆蓋的模板如default.php文件的頂部,這Jfactory方法(TEMPLATE_NAME/html/com_content/article/default.php):

$jinput = JFactory::getApplication()->input; 
$variable = $jinput->get('varname', 'default_value', 'filter'); 

你的情況應該是:$variable = $jinput->get('id', 'default_value', 'STRING');

現在你可以使用$variable你想展示的任何地方。

PS:javascipt手杖被緩存並且不會被暗示。

我希望這有助於快樂編碼。