Ich habe jetzt das komplette Template neu aufgespielt und jetzt geht es.
War wohl einfach irgendwo der Wurm drin.
Ich danke euch für eure grandiose Hilfe
Ich habe jetzt das komplette Template neu aufgespielt und jetzt geht es.
War wohl einfach irgendwo der Wurm drin.
Ich danke euch für eure grandiose Hilfe
Inhalt der logic.php
<?php defined( '_JEXEC' ) or die;
//defaults
$app = JFactory::getApplication();
$doc = JFactory::getDocument();
$doc->setHtml5( true );
$menu = $app->getMenu();
$active = $app->getMenu()->getActive();
$params = $app->getParams();
$pageclass = $params->get( 'pageclass_sfx' );
$tpath = $this->baseurl . '/templates/' . $this->template;
$templateCSS = $tpath . '/css/template.min.css';
if ( isset( $devmode ) ) {
$templateCSS = $tpath . '/css/template.css.php';
}
// remove generator tag
$this->setGenerator( null );
//add critical css support (aka "above the fold" css)
$critical = JPATH_THEMES . '/' . $this->template . '/css/critical.css';
$criticalcss = @file_get_contents( $critical ); //dont throw error if no file
if ( ! empty( $criticalcss ) ) {
$doc->addStyleDeclaration( $criticalcss );
}
switch ( $framework ){
case 'bootstrap':
$direction = 'ltr';
JHtmlBootstrap::framework();
JHtmlBootstrap::loadCSS( true, $direction );
break;
case 'bootstrap-current':
JHtml::_( 'jquery.framework' );
$doc->addStyleSheet( $tpath . '/css/bootstrap.min.css' );
$doc->addScript( $tpath.'/js/bootstrap.min.js' );
break;
case 'skeleton':
case 'skeleton-framework':
$doc->addStyleSheet( $tpath . '/css/skeleton.min.css' );
break;
case 'materialize':
JHtml::_( 'jquery.framework' );
$doc->addStyleSheet( '//fonts.googleapis.com/icon?family=Material+Icons' );
$doc->addStyleSheet( $tpath . '/css/materialize.min.css' );
$doc->addScript( $tpath . '/js/materialize.min.js' );
break;
default:
break;
}
if ( isset ( $fontAwesome ) ){
$doc->addStyleSheet( $tpath . '/css/fontawesome.min.css' );
}
// template js
$doc->addScript( $tpath . '/js/logic.js' );
$doc->addStyleSheet( $templateCSS );
//move scripts and css to the end of body to keep it from blocking
$scripts = '';
//foreach( $doc->_styleSheets as $sheet => $settings ) {
// $media = ( false == $settings['media'] ) ? '' : ' media="' . $settings['media'] . '"';
// $scripts .= '<link ' . $media . 'rel="stylesheet" href="' . $sheet . '">';
// unset( $doc->_styleSheets[$sheet] );
//}
//
//foreach( $doc->_scripts as $script => $settings) {
// $async = ( false == $settings['async'] ) ? '' : ' async';
// $defer = ( false == $settings['defer'] ) ? '' : ' defer';
// $scripts .= '<script' . $async . $defer . ' type="text/javascript" src="' . $script . '"></script>' . "\n";
// unset( $doc->_scripts[$script] );
//}
$scripts .= '<script type="text/javascript">' . implode( ' ' , $doc->_script ) . '</script>';
$doc->_script = array();
//output buffering
ob_start();
function minimize( $body = '') {
$replace = array(
//remove tabs before and after HTML tags
'/\>[^\S ]+/s' => '>',
'/[^\S ]+\</s' => '<',
//shorten multiple whitespace sequences; keep new-line characters because they matter in JS!!!
'/([\t ])+/s' => ' ',
//remove leading and trailing spaces
'/^([\t ])+/m' => '',
'/([\t ])+$/m' => '',
// remove JS line comments (simple only); do NOT remove lines containing URL (e.g. 'src="http://server.com/"')!!!
'~//[a-zA-Z0-9 ]+$~m' => '',
//remove empty lines (sequence of line-end and white-space characters)
'/[\r\n]+([\t ]?[\r\n]+)+/s' => "\n",
//remove empty lines (between HTML tags); cannot remove just any line-end characters because in inline JS they can matter!
'/\>[\r\n\t ]+\</s' => '><',
//remove "empty" lines containing only JS's block end character; join with next line (e.g. "}\n}\n</script>" --> "}}</script>"
'/}[\r\n\t ]+/s' => '}',
'/}[\r\n\t ]+,[\r\n\t ]+/s' => '},',
//remove new-line after JS's function or condition start; join with next line
'/\)[\r\n\t ]?{[\r\n\t ]+/s' => '){',
'/,[\r\n\t ]?{[\r\n\t ]+/s' => ',{',
//remove new-line after JS's line end (only most obvious and safe cases)
'/\),[\r\n\t ]+/s' => '),',
//remove quotes from HTML attributes that does not contain spaces; keep quotes around URLs!
//'~([\r\n\t ])?([a-zA-Z0-9]+)="([a-zA-Z0-9_/\\-]+)"([\r\n\t ])?~s' => '$1$2=$3$4', //$1 and $4 insert first white-space character found before/after attribute
);
return preg_replace( array_keys( $replace ) , array_values( $replace ) , $body );
}
Alles anzeigen
Von hier -> https://pixelstun.de/blog/joomla/joomla-blank-template/
bzw. aus dem Repository auf GitHub
Es ist mir eigentlich egal welche JQuery Version geladen ist. Auf meinem Lokalem Apache Server ist JQuery auch geladen wenn ich kein weiteres Skript einbinde. also einfach nur JHtml::_('jquery.framework');
Auf dem Webserver wird ohne eine Anbindung allerdings der else Teil ausgeführt und somit ist JQuery ja nicht geladen
<script>
if (typeof jQuery != 'undefined') {
// jQuery is loaded => print the version
console.log("JQUERY: "+jQuery.fn.jquery);
}
else
{
console.log("JQUERY nicht geladen");
}
</script>
Das bedeutet ja ich habe irgendwo einen Fehler
War so schon in meinem Blanko Template
Ich hatte absolut keine Ahnung von Joomla und probiere mich jetzt immer mehr reinzufuchsen und
scheitere dann weil es auf lokal und extern nicht gleich funktioniert
Alles anzeigenHast du denn das hier schon gemacht, geprüft?
Die Sache ist, dass niemand wissen kann, wer oder was oder warum dir deine JQueries falsch lädt. An falscher Stelle und doppelt und zu spät.
Du schreibst dort ja auch, dass du das Template selbst erstellt hast. Es ist einfach so, dass man bestimmte Dinge in Joomla einfach streng beachten muss. Dazu gehört eben auch JQuery so laden, wie dort beschrieben und nicht von einem CDN.
Meiner Meinung nach habe ich es so eingebunden, aber ich vlt. habe ich die Tipps auch nicht verstanden.
<?php defined( '_JEXEC' ) or die;
// settings
JHtml::_('jquery.framework');
$framework = 'none' ; //you may chose between bootstrap, bootstrap-current, skeleton and materialize
$devmode = false; //set devmod = null to load static css instead of less
$fontAwesome = null;
include_once JPATH_THEMES . '/' . $this->template . '/logic.php';
JHtml::_('script', 'menu.js', array('relative' => true));
?><!DOCTYPE html>
<html lang="<?php echo $this->language; ?>">
<head>
<jdoc:include type="head" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="apple-touch-icon-precomposed" href="<?php echo $tpath; ?>/images/apple-touch-icon-57x57-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="<?php echo $tpath; ?>/images/apple-touch-icon-72x72-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="<?php echo $tpath; ?>/images/apple-touch-icon-114x114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="<?php echo $tpath; ?>/images/apple-touch-icon-144x144-precomposed.png">
<script>
if (typeof jQuery != 'undefined') {
// jQuery is loaded => print the version
console.log("JQUERY: "+jQuery.fn.jquery);
}
else
{
console.log("JQUERY nicht geladen");
}
</script>
</head>
<body class="<?php echo ( $menu->getActive() == $menu->getDefault() ? 'front' : 'site' ) . ' ' . $active->alias . ' ' . $pageclass; ?>">
<header>
<!-- Logo -->
<div id="ud_logo"><a href="<?php echo JUri::base()?>"><img src="templates/familienzentrum/images/logo.jpg" alt="Familienzentrum-Kaufungen" /></a></div>
<!-- Navigation -->
<nav>
<jdoc:include type="modules" name="nav" style="none" />
</nav>
<div id="burger" style="display: none;">
<button class="ud_menu_icon ud_menu_icon-X">
<span></span>
</button>
<nav id="mobile">
<jdoc:include type="modules" name="nav" style="none" />
</nav>
</div>
</header>
<div id="main">
<?php
$url = $this->base;
$pos = strpos($url, "kurse/");
$pos = 0; //<--temp
if(!$pos)
{
?>
<div id="banner">
<div id="ud_logo"><a href="<?php echo JUri::base()?>"><img src="templates/familienzentrum/images/banner.jpg" alt="Familienzentrum-Kaufungen"/></a></div>
</div>
<?php }?>
<jdoc:include type="component" />
<jdoc:include type="modules" name="sidebar"/>
<footer>
<nav>
<jdoc:include type="modules" name="footer" style="none"/>
</nav>
<div id="ud_copyright">Designed by <a href="mailto:info@werner-julian.de">Julian Werner</a></div>
</footer>
</div>
<?php echo $scripts; ?>
</body>
</html>
<?php
echo minimize( ob_get_clean() );
Alles anzeigen
Das ist meine index.php. Wenn dort etwas falsch ist wäre es schön wenn dazu konkrete Änderungen gibt
Gruß
Julian
Hallo Leute,
ich kriege in meiner Console immer die Fehlermeldung "Uncaught ReferenceError: jQuery is not defined".
Mein JQuery möchte so auch nicht funktionieren. auf meiner lokalen Testumgebung läuft es ohne Probleme.
Habt Ihr Ideen, was ich ändern könnte???
Webseite: familienzentrum-kaufungen.de
Einstellung | Wert |
---|---|
PHP erstellt für | Linux info 3.0 #1337 SMP Tue Jan 01 00:00:00 CEST 2000 all GNU/Linux |
Database Type | mysql |
Datenbankversion | 5.5.60-0+deb7u1-log |
Datenbankzeichensatz | utf8_general_ci |
Database Connection Collation | utf8mb4_general_ci |
PHP-Version | 7.2.10 |
Webserver | Apache |
PHP-Interface für den Webserver | cgi-fcgi |
Joomla!-Version | Joomla! 3.8.13 Stable [ Amani ] 9-October-2018 14:00 GMT |
Joomla!-Plattform-Version | Joomla Platform 13.1.0 Stable [ Curiosity ] 24-Apr-2013 00:00 GMT |
Browsererkennung | Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.67 Safari/537.36 |
Viele Grüße
Julian
Die Console zeigt:
JQMIGRATE: Migrate is installed, version 1.4.1
swipe.js:66 {a270: "disabled"}
swipe.js:37 config loaded
Ich habe jetzt auch nochmal zu meinem oben Geschriebenen Script ein else hinzugefügt. Das wird ausgeführt.
Spricht das nicht dafür dass Joomla keine JQuery Version geladen hat?
Webseite ist https://familienzentrum-kaufungen.de/
PHP erstellt für | Linux info 3.0 #1337 SMP Tue Jan 01 00:00:00 CEST 2000 all GNU/Linux |
Database Type | mysql |
Datenbankversion | 5.5.60-0+deb7u1-log |
Datenbankzeichensatz | utf8_general_ci |
Database Connection Collation | utf8mb4_general_ci |
PHP-Version | 7.2.10 |
Webserver | Apache |
PHP-Interface für den Webserver | cgi-fcgi |
Joomla!-Version | Joomla! 3.8.13 Stable [ Amani ] 9-October-2018 14:00 GMT |
Joomla!-Plattform-Version | Joomla Platform 13.1.0 Stable [ Curiosity ] 24-Apr-2013 00:00 GMT |
Browsererkennung | Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36 |
Gruß Julian
Hallo Leute,
ich habe ein Template mit JQuery Elementen entwickelt. Auf meinem Lokalen Xampp-Server läuft es ohne Probleme.
Jetzt habe ich es auf meinen 1&1 Server geladen und alle JQuery Elemente gehen nicht mehr. Mein JS-Script wird korrekt eingebunden, aber selbst
<script>
if (typeof jQuery != 'undefined')
{
// jQuery is loaded => print the version
alert(jQuery.fn.jquery);
}
</script>
in meiner Index.php gibt keine Version aus. Es scheint mir also, als ob Joomla dies irgendwo blockiert.
Weder das nutzen der "mitgelieferten" Version noch das einbinden einer Eigenen führte zum Erfolg.
Ich hoffe ihr habt eine Idee.
Gruß
Julian
Hast denn die Zeile innerhalb eines document ready? Entweder, so wie ich zeige, damit du $ verwenden kannst oder so wie Elfangor93 sagt eben alles mit JQuery statt $ . Aber jedenfalls innerhalb eines document ready.
Der komplette momentane Code ist:
;(function($)
{
//document ready läuft VOR load
$(document).ready(function()
{
;
});
//load ist NACH document ready
$(window).load(function()
{
function UDResponsiv()
{
if(($(window).width()) < 715)
{
alert("Zu Klein");
$('nav ul').css('display','none');
}
else
{
$('nav ul').css('display','inline');
}
}
UDResponsiv();
$(window).resize(function()
{
UDResponsiv()
});
});
})(jQuery);
Alles anzeigen
Danke das mit dem Load funktioniert!
Jetzt habe ich das nächste Problem
Ich möchte meine Navigation über JS ausblenden, momentan verwende ich dafür:
Allerdings beeinflusst mein JS File wohl meine Style nicht
funktioniert allerdings sofort
Wie kann ich das in Joomla umsetzten?
Viele Grüße
Julian
Hallo Leute,
ich habe das Problem, dass mein JS Code einfach nicht funktionieren will.
Ich habe JQuery und mein JS- File wie Folgt in meine template index.php eingebunden
$pfad = $this->baseurl .'/templates/' . $this->template . '/js/menu.js';
$document = JFactory::getDocument();
$document->addScript("https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js");
$doc->addScriptDeclaration('jQuery.noConflict();');
$document->addScript($pfad);
Direkt im Anfangs php Teil
Jetzt habe ich ein einfaches JQuery Script geschrieben
$(document).ready(function(e)
{
//Alles Ready
alert('Geladen');
$(window).resize(function(e)
{
//Fenster wurde verändert
alert("Resize");
});
});
Alles anzeigen
Die Geladen Message wird beim Reload angezeigt. Allerdings die resize Message wird beim verändern des Fensters nicht angezeigt.
Es funktionierte vor einiger Zeit aber schon mal so. Meiner Meinung nach habe ich am Code nichts verändert und es wirkt fast schon zufällig.
Ich hatte es sogar schon soweit, dass er mir jedes Mal die aktuelle Fenster breite angezeigt hat. Und dann ging es auf einmal nicht mehr.
Joomla 3.8.12
Lokaler Server zum testen
Ich bin verzweifelt und ich hoffe ihr habt eine Idee. Eventuell verwende ich JS oder Jquery für Joomla ja einfach falsch
Gruß
Julian
Ich werde nochmal ein wenig Experimentieren und schauen, ob ich eine Lösung finde. Danke aber schon mal für die Hilfe, ich denke das hilft mit weiter!
In der Datenbank steht leider nur der Content und nicht die Bilddatei, somit lässt sie sich nicht abfragen.
Aus dem PHP Code werde ich noch nicht ganz schlau, zumindest funktioniert er ohne Änderungen nicht.
Ich weiß aber schon, dass dem Bild die Klassen pull-left & item-image zugeordnet sind
Hallo Leute,
ich bin auf der Suche nach einer Erweiterung und weiß nicht genau nach was ich suchen soll.
Ich benötige eine Erweiterung um angebotene Kurse zu verwalten.
Es sollen alle Kurse im Dropdownmenü angezeigt werden und es soll eine Kurzübersicht geben.
In der Kursübersicht soll man dann nach Art filtern können, also nur Kurse für Kinder oder nur Kurse die Kostenlos sind o.ä..
Wenn das ganze dann auch noch in einem Kalender angezeigt werden könnte wäre es super aber keine muss.
Hier geht es zur Momentanen Kursübersicht die geändert werden soll: https://familienzentrum-kaufungen.de/kurse
Das heißt auf der Seite soll die Übersicht hin und unter Kurse das Dropdown.
Wenn sich beide Funktionen nicht verbinden lassen sind natürlich auch 2 oder 3 Lösungen möglich.
Allerdings sollte es noch halbwegs Benutzerfreundlich sein, da ich später NICHT die Person bin die die Inhalte pflegt.
Joomla! 3.8.12
Viele Grüße
Julian Werner
Ich habe ein Banner über mein Template in der index.php eingebunden. Der soll aber nur angezeigt werden, wenn KEIN Einleitungsbild im Artikel ausgewählt ist.
Ich muss also in php herausfinden, ob ein Einleitungsbild ausgewählt ist. Modell sollte Module heißen.
Hallo Leute,
ich möchte gerne auf meiner Webseite auf jeder Seite ein Banner anzeigen lassen, das funktioniert auch.
Ich habe mein Template selbst erstellt und bearbeitet. Jetzt möchte ich aber dass das Banner nur angezeigt wird wenn KEIN Einleitungsbild gewählt ist.
Ich habe schon eine IF (PHP) die mein Banner bei Bedarf ausblendet, allerdings weiß ich nicht was ich als Bedingung nutzen soll, da es ja kein Modell ist.
Kann ich irgendwie abfragen ob eine Klasse in HTML verwendet wurde?
Oder habt ihr andere Ideen?
Hier die Webseite bzw. eine Seite der Webseite wo momentan noch beides angezeigt wird: https://familienzentrum-kaufun…-und-kleinkinderschwimmen
Joomla! 3.8.12
Viele Grüße
Julian Werner
Also ich habe es jetzt gelösst. Scheinbar gab es wirklich einen Fehler bei der Installation. Ich habe alles deinstallaliert und neu eingespielt und jetzt funktioniert auch das Chronoforms Modul.
Danke trotzdem für Eure Hilfe!
Alles anzeigenMich irritiert die Gross-/Kleinschreibung
Im Quelltext der Seite steht {chronoforms6}Kontaktformular{/chronoforms6} (Name des Formulars, gross).
Auf dem Screenshot seht {chronoforms6}kontaktformular{/chronoforms6} (Alias des Formulars, klein).
Korrekt wäre der Alias des Formulars, also {chronoforms6}kontaktformular{/chronoforms6} (klein)
Auf die Idee bin ich auch schon gekommen, und habe beides probiert. Ohne Effekt.
Du musst bei den Modulen im Tab "Optionen" - "Inhalte vorbereiten" auf "Ja" setzen. Erst dann können Plugins verarbeitet werden. Und alles was in geschweiften Klammern steht, wir von Plugins verarbeitet.
Axel
Hi,
danke schon mal für die Antwort. Leider hat das nicht geholfen. Ist der Befehl bei Chrnoforms6 eventuell anders?
Außerdem setzt mir der Editor meinen Text immer wieder in einen Pharagraphentag und lässt ihn nicht frei stehen.
LG
Julian
Hallo Leute,
ich nutze ChronoForms6 und habe mir damit ein Kontaktformular erstellt.
Nun möchte ich dies als Module in meiner Sidebar darstellen.
Ich habe mir also ein leeres Modul erstellt und angeblich soll man mit HTML,
{chronoforms}kontaktformularname{/chronoforms}, das Formular anzeigen können.
Bei mir klappt das ganze aber nicht --> https://familienzentrum-kaufungen.de/kontakt
Es wird nur der Text ausgegeben, in Artikel geht es auch nicht. Im Backend aber wunderbar.
Hat jemand eine Idee? (Joomla 3.8.12)
Arbeite mich leider erst langsam ein und hoffe, dass es ein einfacher Fehler ist.
Viele Grüße und Dank im Voraus
Julian Werner