{"id":1207,"date":"2017-05-11T15:47:46","date_gmt":"2017-05-11T15:47:46","guid":{"rendered":"https:\/\/www.taywa.ch\/blog\/?p=1207"},"modified":"2019-06-04T17:19:20","modified_gmt":"2019-06-04T17:19:20","slug":"typo3-upgrade-von-version-7-lts-auf-version-8-lts","status":"publish","type":"post","link":"https:\/\/www.taywa.ch\/blog\/typo3\/typo3-upgrade-von-version-7-lts-auf-version-8-lts\/","title":{"rendered":"TYPO3 Upgrade von Version 7 LTS auf Version 8 LTS"},"content":{"rendered":"<h2>CSS Styled Content<\/h2>\n<p>Es gibt f\u00fcr TYPO3 8 eine deprecicated Version CSS Styled Content. Diese brauchen wir f\u00fcr alten Seiten um das CSS nicht anfassen zu m\u00fcssen. Wichtig ist das man im Template bei &#8222;Include static (from extensions)&#8220;, beide css_styled_content inkludiert, auch (optional)<\/p>\n<h2>Probleme mit explicitADmode<\/h2>\n<p>Im LocalConfiguration.php immer\u00a0explicitAllow setzen, da dies \u00fcber Gruppen kummlierte Content-Typen rechte erlaubt. Auch ist allow besser, da wenn durch Updates neue Content-Typen hinzukommen, diese nicht automtisch den Usern erlaubt sind. Alte Instanzen von uns sind aber auf Deny, darum immer Usergruppe testen.<\/p>\n<p><code class=\"php\">$GLOBALS['TYPO3_CONF_VARS']['BE']['explicitADmode'] =\u00a0explicitAllow<\/code><\/p>\n<p>Auf der Datenbank abfragen, welche Content-Typen benutzt werden:<\/p>\n<p><code class=\"sql\">SELECT cType, count(*) FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY cType<\/code><\/p>\n<table>\n<tbody>\n<tr>\n<td>cType<\/td>\n<td>count(*)<\/td>\n<\/tr>\n<tr>\n<td>html<\/td>\n<td>41<\/td>\n<\/tr>\n<tr>\n<td>image<\/td>\n<td>341<\/td>\n<\/tr>\n<tr>\n<td>list (plug-in)<\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td>mailform<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>shortcut (insert record)<\/td>\n<td>9<\/td>\n<\/tr>\n<tr>\n<td>text<\/td>\n<td>279<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Mit pids:<\/p>\n<p><code class=\"sql\">SELECT cType, count(*), GROUP_CONCAT(pid SEPARATOR ', ') FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY cType<\/code><br \/>\nMit colPos:<\/p>\n<p><code class=\"sql\">SELECT cType, colPos, count(*), GROUP_CONCAT(pid SEPARATOR ', ')  FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY cType, colPos<\/code><\/p>\n<p>&nbsp;<\/p>\n<h2>Fluid Styled Content<\/h2>\n<p>Es gibt eine sehr m\u00fchsammen Bug im 8.7.1 LTS, heisst ein Fluid Layout &#8222;<strong>Default<\/strong>&#8222;, so bleibt die Seite ohne Error einfach leer. Wir haben es zu Standard.html umbennent.<\/p>\n<h2>page.includeJSlibs -&gt; page.includeJSLibs<\/h2>\n<p>schon im TYPO3 7 nicht mehr g\u00fcltig, aber noch valid, geht includeJSlibs mit Kleinbuschtaben nicht mehr, es muss includeJSLibs heissen<\/p>\n<p><a href=\"https:\/\/forge.typo3.org\/issues\/79760#change-330903\"> https:\/\/forge.typo3.org\/issues\/79760#change-330903<\/a><\/p>\n<h2>Bekannte Probleme<\/h2>\n<p>Die Extension DCE geht in TYPO3 8 nur mit dem alten RTE:<\/p>\n<p><a href=\"https:\/\/forge.typo3.org\/issues\/81167\">https:\/\/forge.typo3.org\/issues\/81167\u00a0<\/a><\/p>\n<h2><\/h2>\n<h2>Upgrade Wizard<\/h2>\n<p>Einfach durchklicken<\/p>\n<p>Dannach bei\u00a0<strong>\u00a0Important actions &gt; Database analyzer &gt; Compare current database with specification<\/strong><\/p>\n<h2>Configuration presets<\/h2>\n<p>Hier w\u00fcrde ich, wenn immer M\u00f6glich, die Voreinstellungen nutzen. Nach dem Upgrade, werden diese nicht mehr erkannt, auch wenn man sie im TYPO3 7 gesetzt hat. Unter &#8222;Debug settings&#8220; w\u00fcrde ich &#8222;Debug&#8220; setzen.<\/p>\n<h2>RTE config<\/h2>\n<p>Ich habe f\u00fcr die User einen eingeschr\u00e4nkten RTE. In LocalConfiguration.php ist der Pfad angegeben:<\/p>\n<pre class=\"lang:default decode:true \">    'RTE' =&gt; [\r\n        'Presets' =&gt; [\r\n            'custom' =&gt; 'fileadmin\/Resources\/Private\/RTE\/Custom.yaml',\r\n        ],\r\n    ],<\/pre>\n<p>um diese Konfiguration zu aktivieren, nutze ich in der Page TSconfig:<\/p>\n<pre class=\"lang:default decode:true \">  \r\n#######################################################################\r\n\/\/  +------------------------------------------------------------------\r\n\/\/  |  RTE und PERMISSIONS\r\n\/\/  +------------------------------------------------------------------\r\n\r\n# RTE.default.preset = full\r\n\r\nRTE.default.preset = custom\r\n\r\n# RTE.config.tt_content.bodytext.preset = custom\r\n\r\n<\/pre>\n<h2>andWhere in select nicht mehr g\u00fcltig<\/h2>\n<p>andWhere in Typoscript funktoniert nicht mehr, muss auf where ge\u00e4ndert werden:<\/p>\n<p><code>grep andWhere *<\/code><\/p>\n<h2>Umbennente Felder im tt_content<\/h2>\n<h3>section_frame -&gt;\u00a0frame_class<\/h3>\n<p>Bei der Migration wird das alte Feld &#8217;section_frame&#8216; nach &#8218;frame_class&#8216; migriert. Waren es bei section_frame noch Integer (Standardwert war 0), ist es bei frame_class nun ein String. (Standardwert ist &#8222;default&#8220;.) Dabei werden Daten also umgeschrieben.\u00a0Beim Updaten werden 0 -&gt; default gemappt<\/p>\n<p>Mehr Information dazu:\u00a0<a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.6\/Breaking-79622-SectionFrameForCSSStyledContentReplacedWithFrameClass.rst\">#79622 &#8211; Section Frame for CSS Styled Content replaced with Frame Class<\/a><\/p>\n<p>Alt:<\/p>\n<pre class=\"lang:default decode:true\"># ## umbenennen der eintraege \"frame\" von innaltselement\r\nTCEFORM.tt_content.section_frame.label = Textdarstellung:\r\nTCEFORM.tt_content.section_frame {\r\n\taltLabels {\r\n\t\t0 = mit Akkordion\r\n\t\t1 = kein Akkordion\r\n\t}\r\n\tremoveItems = 5,6,10, 11,12,20,21,66\r\n}\r\n<\/pre>\n<p>Neu:<\/p>\n<pre class=\"lang:default decode:true \"># ## umbenennen der eintraege \"frame\" von innaltselement\r\nTCEFORM.tt_content.frame_class.label = Textdarstellung:\r\nTCEFORM.tt_content.frame_class {\r\n\taddItems{\r\n\t\tcustom-1 = kein Akkordion\r\n\t\t }\r\n\taltLabels {\r\n\t\tdefault = mit Akkordion\r\n\t}\r\n\t\/\/removeItems = default,ruler-before,ruler-after,indent,indent-left,indent-right,none\r\n\tremoveItems = ruler-before,ruler-after,indent,indent-left,indent-right,none\r\n}<\/pre>\n<p>vorhandene frame_class Werte abfragen:<\/p>\n<p><code class=\"sql\">SELECT frame_class, count(*) FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY frame_class<\/code><\/p>\n<p>&nbsp;<\/p>\n<p>Anpassungen im Setup:<\/p>\n<p>Alt:<\/p>\n<pre class=\"lang:default decode:true \"> tt_content.stdWrap.innerWrap.cObject {\r\n       1.20.10.value = csc-default {field:CType}-cont narrow column\r\n       5.20.10.value = csc-default {field:CType}-cont nocolumn\r\n       6.20.10.value = csc-default {field:CType}-cont narrow column clearleft\r\n       10.20.10.value =  csc-default {field:CType}-cont column blend \r\n       11.20.10.value = csc-default {field:CType}-cont broad column\r\n        \r\n       default.20.10.value = csc-default {field:CType}-cont column\r\n       default.20.10.insertData = 1\r\n }\r\n<\/pre>\n<p>Neu<\/p>\n<pre class=\"lang:default decode:true\">tt_content.stdWrap.innerWrap.cObject {\r\n\tcustom-1.20.10.value = csc-frame {field:CType}-cont narrow column\r\n\truler-before.20.10.value = csc-frame {field:CType}-cont nocolumn\r\n\truler-after.20.10.value = csc-frame {field:CType}-cont narrow column clearleft\r\n\tindent.20.10.value = csc-frame {field:CType}-cont column blend\r\n\r\n\tindent-left.20.10.value = csc-frame {field:CType}-cont broad column\r\n\t\r\n\tdefault.20.10.value = csc-frame {field:CType}-cont column\r\n\tdefault.20.10.insertData = 1\r\n}\r\n\r\n<\/pre>\n<p>&nbsp;<\/p>\n<h2>spaceBefore -&gt; space_before_class<\/h2>\n<p>Anschauen welche welche Werte mit welcher H\u00e4ufigkeit es wirklich in der Datenbank gibt:<\/p>\n<pre class=\"lang:default decode:true\">SELECT spaceBefore, count(*) FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY spaceBefore<\/pre>\n<p>Anpassungen auf der Datenbank:<\/p>\n<pre class=\"lang:default decode:true\">UPDATE tt_content set space_before_class = 'top' WHERE spaceBefore = 0;\r\nUPDATE tt_content set space_before_class = 'topmid' WHERE spaceBefore = 1;\r\nUPDATE tt_content set space_before_class = 'mid' WHERE spaceBefore = 2;\r\nUPDATE tt_content set space_before_class = 'midbot' WHERE spaceBefore = 3;\r\nUPDATE tt_content set space_before_class = 'bot' WHERE spaceBefore = 4;<\/pre>\n<p>Kontrolle nach dem Updaten:<\/p>\n<pre class=\"lang:default decode:true\">SELECT space_before_class, count(*) FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY space_before_class<\/pre>\n<p>Anpassungen f\u00fcrs Typoscript:<\/p>\n<pre class=\"lang:default decode:true \">sed -i 's\/spaceBefore\/space_before_class\/g' *.ts\r\n<\/pre>\n<pre class=\"lang:default decode:true\">sed -i 's\/spaceBefore\/space_before_class\/g' *.ts\r\nsed -i 's\/spaceAfter\/space_after_class\/g' *.ts\r\nsed -i 's\/section_frame\/frame_class\/g' *.ts\r\n<\/pre>\n<pre class=\"lang:default decode:true\">UPDATE tt_content set space_after_class = 'left' WHERE spaceAfter = 0;\r\nUPDATE tt_content set space_after_class = 'leftmid' WHERE spaceAfter = 1;\r\nUPDATE tt_content set space_after_class = 'mid' WHERE spaceAfter = 2;\r\nUPDATE tt_content set space_after_class = 'midright' WHERE spaceAfter = 3;\r\nUPDATE tt_content set space_after_class = 'right' WHERE spaceAfter = 4;\r\n<\/pre>\n<p>siehe <a href=\"https:\/\/docs.typo3.org\/typo3cms\/extensions\/core\/Changelog\/8.6\/Breaking-79622-SpaceBeforeAndSpaceAfterAdjustmentsForCSSStyledContent.html\">entsprechenes Changelog<\/a> auf docs.typo3.org.<\/p>\n<h2>css Anpassungen f\u00fcr css_styled_content if used<\/h2>\n<pre class=\"lang:default decode:true \">sed -i 's\/.csc-default\/.csc-frame-default\/' screen.css\r\nsed -i 's\/.csc-uploads\/.ce-uploads\/' screen.css\r\n<\/pre>\n<p>Beim Inhalttype &#8222;File Links&#8220; waren fr\u00fcher die Beschreibung automatsich eingeblendet, neu ist das nicht mehr so. Darum muss man das setzen bei bestehenden Eintr\u00e4gen.<\/p>\n<pre class=\"lang:default decode:true\">UPDATE `tt_content` SET `uploads_description` = '1' WHERE `tt_content`.`pid` = 40 and CType = 'uploads';\r\n<\/pre>\n<h2><\/h2>\n<h2>section_frame -&gt;\u00a0frame_class migration<\/h2>\n<p>Was f\u00fcr Werte gibt es:<\/p>\n<pre class=\"lang:default decode:true\">SELECT DISTINCT(frame_class ) FROM `tt_content`;<\/pre>\n<p>Zuerst ein Backup Feld machen:<\/p>\n<pre class=\"lang:default decode:true\">ALTER TABLE `tt_content` ADD `frame_class_migration` VARCHAR(60) NOT NULL AFTER `frame_class`;\r\nUPDATE tt_content set frame_class_migration = frame_class;<\/pre>\n<p>Meine keys von dem Projekt umschreiben auf der Datenbank:<\/p>\n<pre class=\"lang:default decode:true\">UPDATE tt_content set frame_class = 'imgtitle' WHERE frame_class_migration = 'custom-1';\r\nUPDATE tt_content set frame_class = 'titleimg' WHERE frame_class_migration = 'ruler-before';\r\nUPDATE tt_content set frame_class = 'img' WHERE frame_class_migration = 'ruler-after';\r\nUPDATE tt_content set frame_class = 'text' WHERE frame_class_migration = 'indent';<\/pre>\n<p>TCA overwrite in eigener Extension:<\/p>\n<p>Configuration\/TCA\/Overrides\/tt_content.php:<\/p>\n<pre class=\"lang:default decode:true\">$GLOBALS['TCA']['tt_content']['columns']['frame_class'] = Array(\r\n            'exclude' =&gt; true,\r\n            'label' =&gt; 'Verhalten',\r\n            'config' =&gt; [\r\n                'type' =&gt; 'select',\r\n                'renderType' =&gt; 'selectSingle',\r\n                'items' =&gt; [\r\n                    ['Bild\/Titel optional Bildunterschrift', 'imgtitle'], \/\/ custom-1 -&gt; imgtitle csc-img -&gt; csc-default csc-frame-imgtitle csc-img\r\n                    ['Titel\/Bild', 'titleimg'], \/\/ ruler-before -&gt; titleimg -&gt; csc-default csc-frame-titleimg csc-img\r\n                    ['nur Bild', 'img'], \/\/ ruler-after -&gt;  img -&gt; csc-default csc-frame-img csc-img\r\n                    ['nur Text', 'text'], \/\/ 10 -&gt; indent -&gt; text -&gt;  csc-default csc-frame-text\r\n                ],\r\n                'default' =&gt; 'imgtitle'\r\n            ]\r\n         );<\/pre>\n<p>Typoscript dazu:<\/p>\n<pre class=\"lang:default decode:true \">tt_content.stdWrap.innerWrap.cObject.key.field = frame_class\r\ntt_content.stdWrap.innerWrap.cObject.imgtitle =&lt; tt_content.stdWrap.innerWrap.cObject.default\r\ntt_content.stdWrap.innerWrap.cObject.imgtitle.20.10.value = csc-default csc-frame-imgtitle csc-img\r\ntt_content.stdWrap.innerWrap.cObject.titleimg =&lt; tt_content.stdWrap.innerWrap.cObject.default\r\ntt_content.stdWrap.innerWrap.cObject.titleimg.20.10.value = csc-default csc-frame-titleimg csc-img\r\ntt_content.stdWrap.innerWrap.cObject.img =&lt; tt_content.stdWrap.innerWrap.cObject.default\r\ntt_content.stdWrap.innerWrap.cObject.img.20.10.value = csc-default csc-frame-img csc-img\r\ntt_content.stdWrap.innerWrap.cObject.text =&lt; tt_content.stdWrap.innerWrap.cObject.default\r\ntt_content.stdWrap.innerWrap.cObject.text.20.10.value = csc-default csc-frame-text<\/pre>\n<h2><\/h2>\n<h2>tt_news zu news<\/h2>\n<p>Wenn man auf TYPO3 V8 ist, dann<\/p>\n<ol>\n<li>Installiere Extension\u00a0<strong>tt_news importer<\/strong> (news_ttnewsimport)<\/li>\n<li>installiere Extension\u00a0<strong>news<\/strong><\/li>\n<li>Bei der Extension Konfiguration im Extensionmanager muss man unter dem Reiter\u00a0 &#8222;Import Modul&#8220; &#8222;Show importer&#8220; aktivieren.<\/li>\n<li>Im Backend unter &#8222;News Importer&#8220; zuerst die Kategorien\u00a0 und dann die Inhalte migrieren<\/li>\n<li>Updaten wie folgt, \u00fcber command line interface (cli):\n<pre class=\"\">.\/typo3\/cli_dispatch.phpsh extbase ttnewspluginmigrate:run<\/pre>\n<\/li>\n<\/ol>\n<p>Quellen:<br \/>\n<a href=\"https:\/\/github.com\/ext-news\/news_ttnewsimport\">https:\/\/github.com\/ext-news\/news_ttnewsimport<br \/>\n<\/a><a href=\"https:\/\/docs.typo3.org\/typo3cms\/extensions\/news\/AdministratorManual\/Migration\/MigrationFromTtNews\/Index.html\">https:\/\/docs.typo3.org\/typo3cms\/extensions\/news\/AdministratorManual\/Migration\/MigrationFromTtNews\/Index.html<\/a><\/p>\n<h3><\/h3>\n<p>RTE config f\u00fcr news in Page TS, der Key ist der Name der Datenbank-Tabelle:<\/p>\n<pre class=\"lang:default decode:true\">RTE.config.tx_news_domain_model_news.bodytext.preset = minimal<\/pre>\n<h2>Abfrage f\u00fcr die eingesetzen Bildorientierung (imageorient)<\/h2>\n<pre class=\"lang:default decode:true\">SELECT imageorient, count(*) FROM tt_content WHERE deleted = 0 AND hidden = 0 GROUP BY imageorient<\/pre>\n<p>Ein Beispielresultat:<\/p>\n<table>\n<tbody>\n<tr>\n<td>imageorient<\/td>\n<td>count(*)<\/td>\n<\/tr>\n<tr>\n<td>0<\/td>\n<td>574<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>2<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td>17<\/td>\n<td>197<\/td>\n<\/tr>\n<tr>\n<td>18<\/td>\n<td>15<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Sitememap.xml mit Typoscript:<\/h2>\n<p>https:\/\/gist.github.com\/fabtho\/837c4424da9d5ce28ae609173426d46f<\/p>\n<p>&nbsp;<\/p>\n<h2>Oops, an error occurred<\/h2>\n<p>Frontende error sehen, wenn Oops, an error occurred! Code: 20190401111949c2a3859 auftaucht<\/p>\n<p>Im Typoscript Setup hinzuf\u00fcgen:<\/p>\n<p>&nbsp;<\/p>\n<pre class=\"\">config.contentObjectExceptionHandler = 0<\/pre>\n<p>&nbsp;<\/p>\n<h2>Text setzen im \/typo3 Login<\/h2>\n<p>Vorhandener Eintrag \u00e4ndern:<\/p>\n<pre class=\"lang:default decode:true \">UPDATE `sys_news` SET `crdate` = '1546300800' WHERE `sys_news`.`uid` = 1;\r\nUPDATE `sys_news` SET `content` = '&lt;p&gt;Diese TYPO3-Installation wird betreut durch die Taywa GmbH  https:\/\/www.taywa.ch&lt;\/p&gt;\\n&lt;p&gt;Kontakt: info@taywa.ch,&amp;nbsp;043 205 29 40,&amp;nbsp; https:\/\/www.taywa.ch\/taywa\/kontakt\/&lt;\/p&gt;' WHERE `sys_news`.`uid` = 1;<\/pre>\n<p>Neuer Eintrag machen:<\/p>\n<pre class=\"lang:default decode:true \">INSERT INTO `sys_news` (`uid`, `pid`, `tstamp`, `crdate`, `cruser_id`, `deleted`, `hidden`, `starttime`, `endtime`, `title`, `content`) VALUES\r\n(1, 0, 1558437445, 1546300800, 1, 0, 0, 0, 0, 'Support', '&lt;p&gt;Diese TYPO3-Installation wird betreut durch die Taywa GmbH https:\/\/www.taywa.ch&lt;\/p&gt;\\n&lt;p&gt;Kontakt: info@taywa.ch,&amp;nbsp;043 205 29 40,&amp;nbsp; https:\/\/www.taywa.ch\/taywa\/kontakt\/&lt;\/p&gt;');<\/pre>\n<p>&nbsp;<\/p>\n<h2>Upgrade Analysis<\/h2>\n<h3>8.6 LTS<\/h3>\n<h4>\u00c4nderungen im Rendgering von CSS Styled content<\/h4>\n<p>image_compression betroffen vielleicht beim Projekt teatimeforaunivierse.com<\/p>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.6\/Breaking-79622-CSSStyledContentAndTypoScript.rst\">#79622 &#8211; CSS Styled Content and TypoScript<\/a><\/p>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.6\/Breaking-79622-CSSStyledContentTableContentElementAdjustments.rst\">79622 &#8211; CSS Styled Content table content element adjustments<\/a><\/p>\n<p>Feld \u00a0section_frame in tt_content wurde nach frame_class unbenannt:<\/p>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.6\/Breaking-79622-SectionFrameForCSSStyledContentReplacedWithFrameClass.rst\">#79622 &#8211; Section Frame for CSS Styled Content replaced with Frame Class<\/a><\/p>\n<h3>8.5 LTS<\/h3>\n<h4>Neuer Befehl um verweiste Inhalt zu l\u00f6schen:<\/h4>\n<p>.\/typo3\/sysext\/core\/bin\/typo3 cleanup:orphanrecords<\/p>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.5\/Breaking-78520-LowlevelOrphanRecordsCleaningParametersChanged.rst\">#78520 &#8211; Lowlevel Orphan Records Cleaning parameters changed<\/a><\/p>\n<h3>8.4 LTS<\/h3>\n<h4>Indexed Search mit Volltext braucht vielleicht anpassung<\/h4>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.4\/Breaking-77700-ExtensionIndexed_search_mysqlMergedIntoIndexed_search.rst\">#77700 &#8211; Extension indexed_search_mysql merged into indexed_search<\/a><\/p>\n<h3>8.3 LTS<\/h3>\n<h4>Neuer Befehl f\u00fcr das Auflisten des Syslog DB-Inhalt \u00fcber CLI<\/h4>\n<p>\/typo3\/sysext\/core\/bin\/typo3 syslog:list<\/p>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.3\/Breaking-76891-SyslogLowlevelCommand.rst\">Breaking: #76891 &#8211; syslog lowlevel command<\/a><\/p>\n<h3>8.1 LTS<\/h3>\n<h4>Installation mit Proxys muss die Configuration angepasste werden:<\/h4>\n<p>#70056 &#8211; Http-related options and HttpRequest class remove<\/p>\n<h4>Installationen die im\u00a0CSS ce-bodytext nutzen:<\/h4>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.1\/Breaking-75237-RemovalOfDivCe-bodytextMightCauseLayoutIssues.rst\">#75237 &#8211; Removal of div ce-bodytext might cause layout issues<\/a><\/p>\n<p>outIssues.rst<\/p>\n<h4>Neu heisst es typo3\/sysext\/core\/bin\/typo3 referenceindex:update<\/h4>\n<p><a href=\"https:\/\/github.com\/TYPO3\/TYPO3.CMS\/blob\/master\/typo3\/sysext\/core\/Documentation\/Changelog\/8.1\/Breaking-75324-ReferenceIndexCLICommandChanged.rst\">#75324 &#8211; ReferenceIndex CLI command changed<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>CSS Styled Content Es gibt f\u00fcr TYPO3 8 eine deprecicated Version CSS Styled Content. Diese brauchen wir f\u00fcr alten Seiten um das CSS nicht anfassen zu m\u00fcssen. Wichtig ist das man im Template bei &#8222;Include static (from extensions)&#8220;, beide css_styled_content inkludiert, auch (optional) Probleme mit explicitADmode Im LocalConfiguration.php immer\u00a0explicitAllow setzen, da dies \u00fcber Gruppen kummlierte<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,171,197,195,196,166],"tags":[],"class_list":["post-1207","post","type-post","status-publish","format-standard","hentry","category-typo3","category-typo3-7-lts","category-typo3-8-lts","category-typo3-extension","category-typo3-migration","category-typo3-upgrade"],"_links":{"self":[{"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/posts\/1207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/comments?post=1207"}],"version-history":[{"count":62,"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/posts\/1207\/revisions"}],"predecessor-version":[{"id":1420,"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/posts\/1207\/revisions\/1420"}],"wp:attachment":[{"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/media?parent=1207"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/categories?post=1207"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.taywa.ch\/blog\/wp-json\/wp\/v2\/tags?post=1207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}