Sie können auch JHtml::stylesheet("mod_EXAMPLE/style.css", array(), true)laden media/mod_EXAMPLE/css/style.css(das zusätzliche css/Teil beachten ) und JHtml::script("mod_EXAMPLE/script.js", false, true)laden media/mod_EXAMPLE/js/script.js(das zusätzliche js/Teil beachten ).
Flimm
2
Ich gehe davon aus, dass Ihre Erweiterung eine Komponente ist. Der beste Weg ist, ein mediaVerzeichnis neben adminund siteVerzeichnisse zu erstellen . Dann legen Sie js, cssund imgDateien in separaten Verzeichnissen wie folgt aus :
index.html
YOUR_COMPONENT_NAME.xml
[+] admin
[+] site
[-] media
[-] js
main.js
index.html
[+] css
[+] img
Beachten Sie, dass jeder Ordner eine leere index.htmlDatei haben sollte.
In Ihrem XML-Manifest (YOUR_COMPONENT_NAME.xml) können Sie eine mediaDatei wie folgt deklarieren :
@Lodder In Bezug auf Ihre Referenz :JHtml offers much more flexibility than JDocument, whilst using the same base functionality - indeed at the end of the day JHtml will call JFactory::getDocument()->addStyleSheet() or JFactory::getDocument()->addScript().
Farahmand
1
@Fari Die Parameter wurden nur von 2.5 geändert, um die Unterstützung für die 1.5-Methode zu entfernen. Wenn Sie die 3.x-Parameter verwenden, funktionieren sie in 2.5 einwandfrei. Nachdem Sie auch die Joomla Docs-Seite geschrieben haben, auf die Sie verwiesen haben, würde ich dringend empfehlen, JHtml zu verwenden, wenn Sie Inhalte in den Medienordner legen, damit die Benutzer Ihre Skripte einfacher überschreiben können (was mit JDocument nicht möglich ist). Obwohl, wie Sie sagen, es nicht obligatorisch ist.
George Wilson
1
@ GeorgeWilson Wie im oben genannten Link erwähnt: If you wish to just include a straight file path, in a template for example, then you are better using JDocument. However if you wish to take into account whether debug is enabled to include a compressed script or take advantage of template overridable scripts and stylesheets then using JHtml is generally better. It is recommended all 3rd Party Developers use JHtml to allow template overrides of their CSS and javascript for template designers.Also J! Website-Entwickler verwenden JDocument und Entwickler von öffentlichen Erweiterungen von Drittanbietern können JHtml verwenden.
JHtml::stylesheet("mod_EXAMPLE/style.css", array(), true)
ladenmedia/mod_EXAMPLE/css/style.css
(das zusätzlichecss/
Teil beachten ) undJHtml::script("mod_EXAMPLE/script.js", false, true)
ladenmedia/mod_EXAMPLE/js/script.js
(das zusätzlichejs/
Teil beachten ).Ich gehe davon aus, dass Ihre Erweiterung eine Komponente ist. Der beste Weg ist, ein
media
Verzeichnis nebenadmin
undsite
Verzeichnisse zu erstellen . Dann legen Siejs
,css
undimg
Dateien in separaten Verzeichnissen wie folgt aus :Beachten Sie, dass jeder Ordner eine leere
index.html
Datei haben sollte.In Ihrem XML-Manifest (YOUR_COMPONENT_NAME.xml) können Sie eine
media
Datei wie folgt deklarieren :Bearbeiten Sie die Standardansicht (default.php) und fügen Sie diese Zeilen hinzu, um die Dateien in Joomla! Kopf:
quelle
JHtml
sollte verwendet werden, um CSS- und JS-Dateien anstelle vonaddStyleSheet
und zu importierenaddScript
: docs.joomla.org/J3.x:Adding_JavaScript_and_CSS_to_the_pageJHtml::script()
undJHtml::stylesheet()
geändert werden: docs.joomla.org/Potential_backward_compatibility_issues_in_Joomla_3_and_Joomla_Platform_12.2JHtml offers much more flexibility than JDocument, whilst using the same base functionality - indeed at the end of the day JHtml will call JFactory::getDocument()->addStyleSheet() or JFactory::getDocument()->addScript().
If you wish to just include a straight file path, in a template for example, then you are better using JDocument. However if you wish to take into account whether debug is enabled to include a compressed script or take advantage of template overridable scripts and stylesheets then using JHtml is generally better. It is recommended all 3rd Party Developers use JHtml to allow template overrides of their CSS and javascript for template designers.
Also J! Website-Entwickler verwenden JDocument und Entwickler von öffentlichen Erweiterungen von Drittanbietern können JHtml verwenden.