Seite 1 von 1

[CON-2805] Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Di 19. Mär 2019, 14:38
von Freddy
Hallo,
nach dem Update von 4.9.12 auf 4.10.0 wird im Kopfbereich auf einmal der Kopfbereich mit </head> geschlossen und einige Metatags werden nicht mehr berücksichtigt. Es ist also ein </head> zuviel im Quellcode.
Bisher habe ich immer <head> und </head> im Layout selber reingeschrieben. Ist das ein Bug oder hat sich was im System geändert.
head.jpg
(163.3 KiB) Noch nie heruntergeladen

Re: Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Di 19. Mär 2019, 22:41
von xmurrix
Hallo Freddy,

vermutlich passiert das beim Erstellen des Codes der Seite, genauer in der contenido/classes/code_generator/class.code.generator.standard.php. Darin werden Ersetzungen im head-Bereich des Layouts gemacht, irgend etwas läuft nicht so, wie es soll. Würde mich freuen, wenn ich das Layout dazu bekommen kann, um zu testen, was da genau Probleme macht.

Gruß
xmurrix

Re: Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Mi 20. Mär 2019, 14:03
von Freddy
Hier ist das Layout

Code: Alles auswählen

<!DOCTYPE html>
<!--[if lt IE 7 ]><html class="ie ie6" lang="de"> <![endif]-->
<!--[if IE 7 ]><html class="ie ie7" lang="de"> <![endif]-->
<!--[if IE 8 ]><html class="ie ie8" lang="de"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--><html lang="de"> <!--<![endif]-->
<head>
<title><container id="10100" name="head_001" type="head" mode="fixed" default="head_title">head_001</container></title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="siwecostoken" content="...">
<link rel="stylesheet" href="css/zerogrid.css" />
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="css/responsive.css" />
<link rel="stylesheet" href="css/responsiveslides.css" />
<container id="10200" name="head_002" type="head" mode="optional" default="">head_002</container>
<container id="10300" name="head_003" type="head" mode="optional" type="script" default="head_js_general">head_003</container>
	<!--[if lt IE 8]>
       <div style=' clear: both; text-align:center; position: relative;'>
         <a href="http://windows.microsoft.com/en-US/internet-explorer/products/ie/home?ocid=ie6_countdown_bannercode">
           <img src="http://storage.ie6countdown.com/assets/100/images/banners/warning_bar_0000_us.jpg" border="0" height="42" width="820" alt="You are using an outdated browser. For a faster, safer browsing experience, upgrade for free today." />
        </a>
      </div>
    <![endif]-->
    <!--[if lt IE 9]>
		<script src="js/html5.js"></script>
		<script src="js/css3-mediaqueries.js"></script>
	<![endif]-->

    <script src="js/jquery.min.js"></script>
	<script src="js/responsiveslides.js"></script>
	<script>
		$(function () {
		  $("#slider").responsiveSlides({
			auto: true,
			pager: false,
			nav: true,
			speed: 500,
			maxwidth: 962,
			namespace: "centered-btns"
		  });
		});
	</script>
<container id="930" name="script_cookieconsent" types="script" mode="fixed" default="script_cookieconsent">script_cookieconsent</container>
</head>
<body>
	
<header>
	<div class="wrap-header zerogrid">
<container id="20000" name="layout_logo" types="layout" mode="fixed" default="layout_logo">Logo</container>
<container id="20100" name="navigation_main" types="navigation" mode="fixed" default="navigation_main">Navigation Main</container>
	</div>
</header>

<container id="20200" name="header_002" type="header" mode="optional" default="header_slider">header_002</container>

<section id="content">
	<div class="wrap-content zerogrid">
<container id="30100" name="content_001" type="content" mode="optional">content_001</container>
<container id="30200" name="content_002" type="content" mode="optional">content_002</container>
<container id="30300" name="content_003" type="content" mode="optional">content_003</container>
<container id="30400" name="content_004" type="content" mode="optional">content_004</container>
<container id="30500" name="content_005" type="content" mode="optional">content_005</container>
<container id="30600" name="content_006" type="content" mode="optional">content_006</container>
<container id="30700" name="content_007" type="content" mode="optional">content_007</container>
<container id="30800" name="content_008" type="content" mode="optional">content_008</container>
<container id="30900" name="content_009" type="content" mode="optional">content_009</container>
<container id="31000" name="content_010" type="content" mode="optional">content_010</container>
	</div>
</section>

<footer>
	<div class="wrap-footer zerogrid">
		<div class="row">
<container id="40100" name="footer_001" type="footer" mode="optional">footer_001</container><container id="40200" name="footer_002" type="footer" mode="optional">footer_002</container><container id="40300" name="footer_003" type="footer" mode="optional">footer_003</container>
		</div>
	</div>
<container id="40400" name="navigation_bottom" type="navigation" mode="fixed" default="navigation_bottom">navigation_bottom</container>
</footer>
<container id="920" name="tracker script" types="script" mode="optional" default="script_tracker_matomo">tracker script</container>
</body>
</html>

Re: Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Mi 20. Mär 2019, 15:14
von xmurrix
Danke!

Auf den ersten Blick fällt mir da nichts auf aber ich schaue mir das später etwas genauer an.

Re: Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Do 21. Mär 2019, 08:40
von xmurrix
Hallo nochmal,

versuche folgendes.

Öffne die Datei contenido/classes/code_generator/class.code.generator.standard.php und ändere die Zeile 224 von

Code: Alles auswählen

$this->_layoutCode = cString::iReplaceOnce($matches[1][0], $matches[1][0] . $cssFile . $matches[2][0], $this->_layoutCode);
in

Code: Alles auswählen

$this->_layoutCode = cString::iReplaceOnce($matches[1][0], $matches[1][0] . $cssFile . $matches[1][1], $this->_layoutCode);
Ich vermute, dass die Änderung, die hier zuvor gemacht wurde, den Fehler bei dir verursacht.

Re: Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Do 21. Mär 2019, 09:18
von Freddy
Hallo,
habe jetzt nochmal den gesamten Kopfbereich vom Quellcode der Webseite ausgegeben und hier verkürzt eingefügt. Mir ist aufgefallen das ein kompletter Teil doppelt ausgegeben wird. Habe die Bereiche mit ## Komentar ## markiert. Vielleicht hilft es den Fehler zu finden.

Code: Alles auswählen

<!DOCTYPE html>
<html lang="de">
<head>
<base href="https://www.xxx.de/cms/">
<title>Startseite</title><link rel="stylesheet" type="text/css" href="https://xxx.de/cms/cache/standard-1spaltig.css" id="m17">
## Ab hier wird der Bereich doppelt ##
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
...
<script>
...
</script>
## Bis hier wird der Bereich doppelt ##
<meta name="robots" content="index, follow">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="keywords" content="tueraliquet, lorem, lreaoreet, curabitur, pellente, convallis, suscipit, accumsan, ipsum, dolor, onsec, morbi, commodo, lacinia, viverra, aliquam, libero, auctor, nisl, slo, nec, template, quis, enim, professional, sed, and, information">
<meta name="description" content="">
<meta name="author">
</head>
## Ab hier ist der doppelte Bereich ##
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
...
<script>
...
</script>
## Bis hier ist der doppelte Bereich ##
</head>

Re: Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Do 21. Mär 2019, 09:36
von Freddy
Hallo xmurrix,
vielen Dank für deine Hilfe. Jetzt funktioniert es wieder richtig.
Da ich bei meinen letzten Betrag mit einer Besprechung unterbrochen wurde habe ich dein vorhergehenden Betrag garnicht gesehen.

Re: [CON-2805] Contenido 4.10.0 wird </head> automatisch ausgegeben.

Verfasst: Mi 27. Mär 2019, 15:44
von xmurrix
Das Ticket zum Fehler lautet:
https://issues.contenido.org/browse/CON-2805

Danke für das Melden des Fehlers.