Joomla.it Forum
Non solo Joomla... => Sviluppo => : carlo-di-pavia 16 May 2017, 17:49:29
-
Buongiorno, è da ore che cerco come fare per usare le classi delle API di Joomla 3.x https://api.joomla.org/cms-3/index.html (https://api.joomla.org/cms-3/index.html) ma non riesco.
Io voglio usare la classe getHost() presente in Joomla\Uri\AbstractUri.
Come per JUri::root(); che restituisce l'intero URL, ho provato Joomla\Uri\AbstractUri::getHost(); ma non funziona.
Sapete come si usa?
Grazie
-
si vede che dove la vuoi usare non è disponibile.
Se non usi un framework di sviluppo tipo netbeans o eclipse non riesci a sviluppare
comunque è un estensione di JUri\Uri quindi, semmai potrebbe essere JUri::getHost() o JUri::getInstance()->getHost();
-
Ho provato con JUri::getInstance()->getHost(); e in effetti funziona. Mentre con JUri::getHost() non funziona.
Non ho però capito come funziona, perchè JUri::root() funziona mentre JUri::getHost() no?
Ho provato ad inserire nel modulo questo codice:
$class = new ReflectionClass('JUri');
$methods = $class->getMethods(ReflectionMethod::IS_PUBLIC);
var_dump($methods);
e sul frontpage mi fa vedere tutte le classi pubbliche di JUri, compresa Joomla\Uri\AbstractUri.
Non c'è una guida con esempi su come utilizzare le classi di Joomla?
Io uso Aptana per sviluppare siti ma non l'ho mai utilizzato con Joomla.
C'è qualche guida (magari per eclipse) che mi consigli?
Grazie
-
Credo vada bene anche aptana
https://www.google.it/search?q=aptana+joomla
Non devi vedere se esiste la classe ma se dove stai tu puoi usare quella classe e come la devi usare. Potrebbe non essere ancora stata caricata o potresti essere all'interno di una classe che non la estende
..potresti doverla chiamare con JFactory
$pippo=JFactory::getUri();
$pluto=$pippo->getHost();
o col chaining $ciccio=JFactory::getUri()->getHost();
https://api.joomla.org/cms-3/classes/JFactory.html
-
In effetti funzionano sia JFactory::getUri()->getHost(); che JUri::getInstance()->getHost();
A che scopo ci sono tutte queste funzioni che fanno le stesse cose?
Ciao e grazie
-
tra le due privilegia la seconda, lascia perdere JFactory