Liste der Anhänge anzeigen (Anzahl: 1)
Anpassung Wartungsmodus 4.9
Weil es die Tage immer wieder mal Rückfragen in den threads dazu gegeben hat, möchte ich hier eine Kurzanleitung bereitstellen.
Contao 4.9
wir benötigen als Vorlage:
https://github.com/contao/core-bundl...yout.html.twig
und eine Datei exception.php
In der exception.php werden die vorhandenen Textpassagen auf die eigenen Bedürfnisse angepasst.
Die exception.php wird unter contao/languages/de/ abgelegt » /contao/languages/de/exception.php
Sollte der Ordner 'contao' noch nicht vorhanden sein, dann kann dieser und die darin liegenden Ordner manuell angelegt werden.
Der Ordner 'contao' liegt auf gleicher Ebene wie 'system' oder 'web' oder 'files'
Die core-Texte für die Anpassungen findet ihr hier:
https://github.com/contao/core-bundl.../exception.xlf
Für meine Anpassungen hatte ich mir diese ID's angepasst:
'unavailable'
'maintenance'
'matter'
'hint'
Die Anpassungen werden wie folgt in der exception.php angelegt:
PHP-Code:
<?php
// contao/languages/de/exception.php
$GLOBALS['TL_LANG']['XPT']['unavailable']='WARTUNGSMODUS';
$GLOBALS['TL_LANG']['XPT']['maintenance']='Die Webseite ist momentan im Wartemodus. Wir bemühen uns die Wartungsarbeiten raschest möglich abzuschliessen. Bitte versuchen Sie es zu einem späteren Zeitpunkt nochmals.';
$GLOBALS['TL_LANG']['XPT']['matter']='Weshalb erhalten Sie diese Information?';
$GLOBALS['TL_LANG']['XPT']['hint']='Besuchen Sie uns zwischendurch auf <a href="https://www.facebook.com/myCompany/" target="_blank">Facebook</a> oder <a href="https://www.linkedin.com/company/myCompany" target="_blank">LinkedIn</a>';
An dieser Stelle kann auch HTML im Text verwendet werden.
Damit die Änderung wirksam wird, muss Prod.cache erneuert werden » Contao Manager » Systemwartung » Prod.-Cache erneuern
Wenn wir nun auch noch das Logo angepasst haben wollen, dann legen wir uns folgende neue Ordner-Struktur an:
/templates/bundles/ContaoCoreBundle/Error/ und hier hinein kommt eine Datei layout.html.twig » /templates/bundles/ContaoCoreBundle/Error/layout.html.twig
Der Ordern 'templates' ist bereits vorhanden und liegt auf gleicher Ebene wie 'system' oder 'web' oder 'files'
Den Inhalt aus der zu Beginn verlinkten Datei fügen wir in unsere angelegte Datei layout.html.twig ein und passen nun das Layout bzw. das Logo unseren Bedürfnissen an.
Für das Logo selbst kann die Änderung wie folgt aussehen:
PHP-Code:
...
...
<body>
<div id="header">
<div class="wrap">
<div class="header-logo">
<img src="files/layout/images/css/logo.png" alt="myCompany">
</div>
</div>
</div>
<div id="content">
...
...
Damit die Änderung wirksam wird, muss Prod.cache erneuert werden » Contao Manager » Systemwartung » Prod.-Cache erneuern
Und so könnte dann die eigene Wartungsseite aussehen bzw. hier mit den Infos zu den IDs:
https://community.contao.org/de/atta...3&d=1582806387
Liste der Anhänge anzeigen (Anzahl: 1)
Irgendwie scheine ich in letzter Zeit ein Magnet für merkwürdige Probleme zu sein...
Ich habe hier ein nicht ganz so lustiges Bilderrätsel:
Anhang 23205
ToM
Liste der Anhänge anzeigen (Anzahl: 1)
Also ich weiss ja nicht... seh ich den Schlauch nicht, auf dem ich steh?
Hier meine layout.html.twig:
HTML-Code:
{% trans_default_domain 'contao_exception' %}
<!DOCTYPE html>
<html lang="{{ language }}">
<head>
{% block head %}
<meta charset="utf-8">
<title>{% block title %}{{ statusCode }} Error{% endblock %}</title>
<meta name="generator" content="Contao Open Source CMS">
<meta name="viewport" content="width=device-width,initial-scale=1.0,shrink-to-fit=no">
<link rel="stylesheet" href="{{ asset('system/themes/flexible/fonts.min.css') }}">
{% block style %}
<style>
html {
background: #666;
}
body {
margin: 0;
padding: 0;
font: 1rem/1.25 Lato,sans-serif;
font-weight: 800;
color: #666;
}
@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi) {
body {
font-family: "Lato Retina", Lato, sans-serif;
}
}
a, a:visited {
text-decoration: none;
color: #e4790f;
}
a:hover {
text-decoration: none;
}
h1, h2, h3 {
font-weight: 300;
}
h1 {
margin: 0;
padding-bottom: 2%;
font-size: 5em;
}
h2, h3 {
font-size: 1.5em;
}
pre, code {
font: 300 .75rem/1.25 "Roboto Mono", monospace;
}
#header {
padding: 12px 0 10px;
}
#content {
padding: 3% 0;
background-color: #eee;
}
#footer {
font-size: 0.75em;
text-align: center;
padding: .5em 0;
color: #808080;
}
.wrap {
width: 60%;
margin: 0 auto;
padding: 1em;
overflow: hidden;
}
.header-logo {
display: inline-block;
}
.block-error {
margin-bottom: 20px;
background-color: #fff;
border: 1px solid #dfdfdf;
border-radius: 16px;
padding: 15px 30px 24px;
word-wrap: break-word;
overflow: hidden;
}
.block-error:before {
float: left;
content: "</";
font-size: 5em;
color: #ccc;
}
.block-error .inner {
padding-left: 13%;
}
</style>
{% endblock %}
{% endblock %}
</head>
<body>
<div id="header">
<div class="wrap">
<div class="header-logo">
<img src="files/layout/background_page.png" alt="">
</div>
</div>
</div>
<div id="content">
<div class="wrap">
<div class="error">
{% block message %}<h1>{{ block('title') }}</h1>{% endblock %}
<div class="block-error">
<div class="inner">
<div class="text-error">
{% block main %}
{% if block('matter') is defined %}
{% set _block = block('matter') %}
{% if _block|trim is not empty %}
<h2>{{ 'XPT.matter'|trans }}</h2>
{{ _block|raw }}
{% endif %}
{% endif %}
{% if block('howToFix') is defined %}
{% set _block = block('howToFix') %}
{% if _block|trim is not empty %}
<h2>{{ 'XPT.howToFix'|trans }}</h2>
{{ _block|raw }}
{% endif %}
{% endif %}
{% if block('explain') is defined %}
{% set _block = block('explain') %}
{% if _block|trim is not empty %}
<h3>{{ 'XPT.more'|trans }}</h3>
{{ _block|raw }}
{% endif %}
{% endif %}
{% endblock %}
</div>
</div>
</div>
</div>
</div>
</div>
<div id="footer">
<div class="wrap">
{% block hint %}{{ 'XPT.hint'|trans|format(template)|raw }}{% endblock %}
</div>
</div>
</body>
</html>
An den Pfaden, wie weiter oben im Bildrätsel, hat sich nix geändert. Am Output aber auch net... Input, Output, Putt kaputt :D
Anhang 23209
ToM
Liste der Anhänge anzeigen (Anzahl: 1)
Sooo, fertig: auf 2 Webspaces jeweils die Spiegelinstallation genommen, erstmal alles gecheckt: wo zeigt die Domain hin, Datenbank, etc.
Dann den Code neu in ein neues File, Ordner händisch angelegt, im CM alle Caches geleert, Systemwartung...
TROMMELWIRBEL :rolleyes:
Zeigt mir natürlich keine Änderung, d.h. kein headerpic und keine andere Farbe im body...
Anhang 23210
ToM
PS: Danke für Deine Geduld!
Liste der Anhänge anzeigen (Anzahl: 1)
@ Bennie: klar doch, trotzdem danke!
@ hjo: Danke, aber das stammte aus verschiedenen Installationen und hat so auch gepasst, zudem hatte ich dem body Tag eine andere Farbe verpasst.
@ all: Durch Zufall hab ich die Lösung des Problems, macht nun auch Sinn (bitte Anleitung auch ergänzen ;-) )
ich hab komplett neu installiert, da hat es funktioniert, danach peu a peu meine Dateien rein, und siehe da: config.y(a)ml:
Code:
contao:
pretty_error_screens: false
Der sollte auf true stehen, dann klappts auch :cool::D
Steht auch so in der Doku drin:
Code:
# Default configuration for extension with alias: "contao"
contao:
# Enables pretty error screens, for which custom templates can be created.
pretty_error_screens: true
Anfangsverdacht war zuerst die PHP Version, aber 7.3 / 7.4 juggt nicht.
Danke an Euch alle, die mir mit Rat und Tat zur Seite gestanden sind!!!
ToM
Auch 2021 noch dasselbe Problem
Ich arbeite mit einer 4.9.3 Version von Contao und dem 80/20 Theme von Rocksolid.
Ich hab um die Wartungsseite anzupassen das Tutorial vom Anfang des Threads abgearbeitet und soweit Erfolg gehabt, bis ich auch das Contao Logo ersetzen wollte.
Es passierte einfach nix. Da half keine Cache Löschung (Prod. Cache im CM) und auch sonst nicts was ich noch so probiert hab.
Hab dann beim Weiterlesen der Beiträge irgendwann von dem Verzeichnis /app gelesen und dass dies nicht benötigt wird.
Ein Blick rein ergab, daß auf dem Server 3 Dateien in app/Resources/ContaoCoreBundle/views/Error waren nämlich logo.pnp, layout.html.twig und service_unavailable.html.twig. (Die ich da nicht hingeladen habe)
Ich hab dann die layout.html.twig so abgeändert, wie das Tutorial es vorsieht und siehe da - zumindest war das Contao Logo weg, wenn auch mein Logo nicht gefunden wurde.
Da das /app Verzeichnis ja wie beschrieben nicht gebraucht wird, hab ich den Verzeichnisbaum gelöscht. Folge Servererror 500.
Verzeichnisbaum zurückgespeichert läuft wieder ...
Zur exception.php - hier haben die Änderungen funktioniert - ich finde jedoch in der layout.htnl.twig manche varialbe nicht (z.B.: XPT.maintainance) die ich verändert habe und die auch angezeigt wird. ist dann doch die service_unavailable.html.twig in gebrauch ? Die aus dem Verzeichnis das man nicht braucht ?
Gibts nun jemanden, der mir sagen kann wie ich die Wartungsmodusseite anpassen kann ?
Meine Erfahrungen unter 4.9.13
Hallo zusammen,
anbei eine kurze Beschreibung wie es bei mir unter 4.9.13 geklappt hat (war allerdings eine Neuinstallation und da gab es bei mir kein Verzeichnis /app).
Folgende Dateien aus vendor/contao/core-bundle/src/Resources/views/Error/ kopiert und entsprechend bearbeitet:
- service_unavailable.html.twig
- layout.html.twig (für die Anpassung des Logos hab ich den vorhandenen SVG-Teil durch
Code:
<img src="/files/layout/images/logo.png" alt="Mein Logo">
ersetzt)
Unter /templates die Struktur /bundles/ContaoCoreBundle/Error/ angelegt und die beiden bearbeiteten Dateien dort abgelegt.
Aus dem Verzeichnis vendor/contao/core-bundle/src/Resources/contao/languages/de/ die Datei
exception.xlf
kopiert und bearbeitet.
Auf der Verzeichnis-Ebene von files, templates vendor, usw. die Struktur /contao/languages/de/ angelegt und die bearbeitete exception.xlf dort abgelegt.
Zuletzt noch über den Contao Manager den Prod-Cache erneuert.
Danach war alles prima... :)
Also eigentlich ganz nach Beschreibung auf https://docs.contao.org/manual/de/an...late-anpassen/
Vielleicht hilft das dem Einen oder Anderen.
Grüße Chris