Seite 1 von 2

Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Di 31. Mär 2015, 16:22
von MVision
Hallo,

ich habe in zwei unabhängigen Installationen ein Update von 4.9.6 auf 4.9.7 probiert. In beiden Fällen taucht danach im Frontend folgendes auf:

Als erste Zeile steht dort: {__TITLE__6b57...} ­ (da folgen noch einige Zahlen und Buchstaben).

Kann mir jemand weiterhelfen?

Vielen Dank und viele Grüße
Miriam

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 08:15
von frederic.schneider_4fb
Liebe Miriam,

rufe im Backend unter Administration -> System die Systembereinigung (Code-Cache leeren) mal bitte auf.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 09:02
von MVision
Hallo Frederic,

habe ich gemacht - leider ändert sich dadurch nichts.

Ich habe auch vorsichtshalber mal Cache und Cookies im Browser gelöscht, aber auch das bringt nichts.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 10:24
von Lesslauer
Hallo Miriam,

hatte nach dem Update das selbe Problem.
Lösung:
In meinen Layouts habe ich den Title-Tag via Modul automatisch generiert.
Aber die 4.9.7 scheint explizit das setzen des Title-tags via Artikel->SEO->Seitentitel zu fordern.
Ist nun noch ein Modul zur automatisierten Title-Erzeugung ins Layout eingebunden, wird der Title-Tag doppelt ausgegeben, was Smarty verwirrt und zu dieser kryptischen Meldung bewegt...
Nimm aus Deinen Layouts mal komplett die Title-Tags raus- dann sollte das klappen (...und die Title-tags im Frontend trotz dem angezeigt werden, sofern in den Artikeleinstellungen gesetzt!).

Gruß,
David

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 10:55
von MVision
Hallo David,

ah, klasse, vielen, vielen Dank, das war es tatsächlich. Schade, ich fand das automatisierte Erzeugen des titles ganz praktisch. Aber ok, im Artikel geht es ja auch.

Viele Grüße
Miriam

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 11:19
von Lesslauer
Super!
Freut mich das ich helfen konnte.
Ich fande die automatische Erzeugung auch ganz angenehm- aber natürlich ist es aus SEO-Sicht nur konsequent, eine explizite Title-Vergabe zu fordern.
Schön wäre natürlich ein Zwischending- das der Title-Tag bei der Artikelerstellung aus dem Artikelname erst einmal generiert wird, als Default-Wert in die Spalte "Seitentitel".
Ich schreibs mal eben unter "Wünsche und Anregungen" rein. :-)

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 15:03
von McHubi
Meiner Meinung nach ist das ein Bug oder einfach falsch geplant. Zumindest dann, wenn das Modul noch bei "Frischinstallationen" mitgeliefert wird. Aber egal wie, wenn der Title nicht mehr automatisch generiert wird und in Einzelfällen manuell überschrieben werden kann, ist dann der Reiter SEO nicht mehr in Ordnung. Selbst wenn hier ein wie bisher automatisch generierter Title im Input-Feld beim Anlegen des Artikels eingetragen wird, wie von Dir (Lesslauer) als Feature gewünscht. Denn spätestens, wenn ich die Grundstruktur des Seitentitels mal generell ändern will (z. B. von "Firmenname | Blablabla" auf "Blablabla | Firmenname" oder wenn sich der Firmenname mal ändert, kommt man doch in Teufels "manuelle-Änderungsküche"... :twisted:

Ich habe bisher noch nicht auf eine 4.9.7er geupdatet. Aber mir schwant, dass nach einem Update die Seitentitel ALLER Artikel manuell nachversorgt werden müssen?! Wenn ja: :motz:

Obendrein stellt dieses neue Verfahren nichtmal ansatzweise eine Verbesserung dar. Denn die manuelle Vergabe war ja vorher auch schon möglich... Seufz...
Ich fande die automatische Erzeugung auch ganz angenehm- aber natürlich ist es aus SEO-Sicht nur konsequent, eine explizite Title-Vergabe zu fordern.
Bin ich anderer Meinung. Der automatische Title per Navigationspunkt und Headline ist durchaus okay. Schließlich sind in diesen Bestandteilen essentielle Keywords enthalten (sollten es jedenfalls - und wenn nicht, wird der- oder diejenige mit der manuellen Vergabe eines SEO-optimierten Seitentitels erst recht scheitern). Nicht jeder Seitenbetreiber oder Redakteur sollte sich mit einer individuellen Vergabe auseinander setzen müssen.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 15:59
von thomas.stauer_4fb
Der Code-Generator wurde für 4.9.7 so angepasst, dass das title-tag nur innerhalb des head-Tags vom Code-Generator aktualisiert werden sollte.

Ich kann den Fehler so nicht nachvollziehen - ein Beispiellayout wäre hier eventuell sehr hilfreich.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 2. Apr 2015, 18:48
von MVision
Ich hab das Layout mal auf das allernötigste reduziert und der Fehler taucht trotzdem auf.

Hier das Beispiellayout:

Code: Alles auswählen

<!doctype html>  

<head>
<meta charset="utf-8">
<title><container id="10" name="title element" types="head" mode="fixed" default="head_title">title element</container></title>
<link rel="shortcut icon" href="/favicon.ico">
<link rel="stylesheet" href="css/styles.css">

</head>

<body>
        <div class="contentbereich-text">
			<container id="200" name="content" mode="optional" default="">content</container>
		</div>

</body>
</html>
Im Modul head_title steht:

Code: Alles auswählen

<?php
/**
 * This module handles the content of the title element.
 *
 * @package Module
 * @subpackage HeadTitle
 * @version SVN Revision $Rev:$
 *
 * @author dominik.ziegler@4fb.de
 * @copyright four for business AG <www.4fb.de>
 * @license http://www.contenido.org/license/LIZENZ.txt
 * @link http://www.4fb.de
 * @link http://www.contenido.org
 */

$breadcrumb = array();

// get category path
$helper = cCategoryHelper::getInstance();
foreach ($helper->getCategoryPath(cRegistry::getCategoryId(), 1) as $categoryLang) {
    $breadcrumb[] = $categoryLang->get('name');
}

// load current article information
$article = new cApiArticleLanguage();
$article->loadByArticleAndLanguageId(cRegistry::getArticleId(), cRegistry::getLanguageId());
$headline = strip_tags($article->getContent('CMS_HTMLHEAD', 1));

// append headline of article if existing
if ($headline != '') {
    $breadcrumb[] = $headline;
}

if ($headline === '') {
    $breadcrumb[] = mi18n("STARTPAGE");
}

array_shift($breadcrumb);

if (count($breadcrumb) > 0) {
    echo implode(' - ', $breadcrumb);
}

?>
Und die Ausgabe auf der Website:

Code: Alles auswählen

{__TITLE__c483500d0fd9a1263e629d7e4218f0f4}
Testtext
Bzw. der Quellcode:

Code: Alles auswählen

<!doctype html>  

<head>
<meta charset="utf-8">
{__TITLE__c483500d0fd9a1263e629d7e4218f0f4}
<link rel="shortcut icon" href="/favicon.ico">
<link rel="stylesheet" href="css/styles.css">

<title>Testseite Titel</title>
<meta name="robots" content="index, follow" />
<meta name="generator" content="CMS CONTENIDO 4.9" />
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />


</head>

<body>
        <div class="contentbereich-text">
			<!-- content_text -->


<p>Testtext</p>

<!-- /content_text -->
		</div>

</body>
</html>
Vielleicht hilft das weiter?

Ansonsten kann ich gerne einen Testaccount bereit stellen.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 9. Apr 2015, 08:52
von frederic.schneider_4fb
Wir konnten das Problem nun unter zwei Varianten nachstellen:
  • Standardlayout (Beispielmandant)
  • Beispiellayout von MVision
Jedesmal nur dann, wenn unter SEO ausdrücklich ein Seitentitel vergeben wurde. Wird er nicht vergeben, dann schreibt CONTENIDO bei Benutzung des head_title-Moduls automatisch einen Seitentitel bestehend aus den Kategorienamen.

Ticket ist angelegt!

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: Do 9. Apr 2015, 09:53
von frederic.schneider_4fb
Bitte ersetzt die Zeile 325 in der Datei class.code.generator.standard.php (contenido/classes/code_generator) mit:

Code: Alles auswählen

if (false !== strpos($headCode, $replaceTag)) {
Das Problem ist in Version 4.9.8 behoben.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: So 12. Apr 2015, 16:34
von matthiasschnueriger
Hallo Frederic

Ich wollten den Bug in der 4.9.7 mit deinem Vorschlag beheben. Allerdings habe ich ich keine Datei mit dem Namen class.code.generator.php in diesem Verzeichnis. Meinst du die class.code.generator.standard.php?
Kannst du mir sagen, welche Zeile genau ersetzt werden muss? Zeile 325 ist

Code: Alles auswählen

$valueKeys = array_keys($value);
und das macht irgendwie keinen Sinn.

Danke für die Klärung und Gruss
Matthias

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: So 12. Apr 2015, 18:08
von berkel
Also ich habe bei meiner Installation die Datei 'class.code.generator.standard.php' geändert, da ist bei Zeile 325 wie von Frederic beschrieben die falsche Zeile. Such bei dir mal nach 'headCode'.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: So 12. Apr 2015, 18:10
von berkel
Also ich habe bei mir die Datei 'class.code.generator.standard.php' bearbeitet, da war der genannte Fehler in Zeile 325. SUch bei dir mal nach 'headCode'.

Re: Nach Update auf 4.9.7: Fehler im Frontend

Verfasst: So 12. Apr 2015, 21:58
von benja
@matthiasschnueriger:
Es geht um die Datei „class.code.generator.standard.php“ und bei mir steht da in Zeile 325:

Code: Alles auswählen

if (false !== strpos($this->_layoutCode, $replaceTag)) {
Nachdem ich die Zeile ersetzt habe ist alles gut.