Wie kann ich überprüfen, welche Komponente auf der aktuellen Seite verwendet wird?

14

Ich möchte meine Vorlage so einrichten, dass abhängig von der auf der aktuellen Seite verwendeten Komponente ein anderes Layout angezeigt wird. Wie kann man das überprüfen?

FFrewin
quelle

Antworten:

23

Für Joomla 3.x

Während der Code aus der anderen Antwort funktioniert, JRequestist er veraltet, daher sollten Sie Folgendes verwenden:

$jinput = JFactory::getApplication()->input;
echo $jinput->get('option');

Wenn Sie beispielsweise einen Artikel anzeigen und den obigen Code verwenden, wird dieser ausgegeben com_content

Lodder
quelle
9

Für Joomla 2.5

Wir können dies überprüfen, indem wir die URL-Parameter mit der JRequest::getVar()Methode abrufen und nach dem Optionsparameter suchen.

jimport( 'joomla.environment.request' );
echo JRequest::getVar('option', '')

JRequest API-Dokumentation

FFrewin
quelle
2
JRequest::getVar()ist veraltet. Verwenden Sie JFactory::getApplication()->input->get('option', '');.
Farahmand
1

Ein anderer Ansatz ist über das JRouter-Objekt:

JFactory::getApplication()->getRouter()->getVars()["option"]

Unsicher, ob es jemals einen praktischen Unterschied zwischen dem JRouter-Wert und dem über JInput zurückgegebenen Wert gibt.

Kent Butler
quelle