Zum Inhalt springen

Actualización de TYPO3 8 LTS a 9 LTS

Utilizando nuestro proyecto de muestra como ejemplo, mostramos cómo se puede llevar a cabo una actualización a TYPO3 9 LTS.

Como TYPO3 9 LTS viene con muchas características nuevas, la actualización no es tan trivial como se podría pensar al principio. Algunas cosas, desde TypoScript hasta las URL legibles y "parlantes", deben adaptarse a las nuevas funciones de TYPO3 9.

Utilizando nuestro proyecto de muestra para TYPO3 8 LTS como ejemplo, mostramos cómo se podría llevar a cabo una actualización a TYPO3 9 LTS.

Pero una nota: esto no puede ser una guía universal para una actualización. Dependiendo de las extensiones instaladas y TypoScript individual o TSConfig, pueden ser necesarios pasos completamente diferentes para realizar con éxito una actualización.

Las instrucciones no son necesariamente adecuadas para principiantes y están dirigidas más bien a usuarios que ya tienen experiencia con TYPO3.

Preparar la actualización

El vídeo explica cómo actualizar el índice de referencia TYPO3 para sitios web grandes a través del shell.



En nuestro alojamiento en la nube, se requiere una información de directorio diferente para esto: /opt/alt/php74/usr/bin/php httpdocs/typo3cms/.....

Si es necesario, la versión de PHP debe adaptarse en consecuencia.

Antes de proceder a la actualización, deberá realizar las siguientes tareas:

  • Cree una copia de la instalación. Nunca realice una actualización en el sitio web activo.
  • Compruebe si todas las extensiones utilizadas están disponibles para TYPO3 9
  • Desactive las extensiones incompatibles si es necesario
  • Actualice todas las extensiones activas a la última versión compatible con TYPO3 8
  • Realice una "Comparación de base de datos" en la herramienta de instalación
  • Actualizar el índice de referencia

Llevar a cabo la actualización

  • Para instalaciones sin compositor, ajuste el enlace simbólico al nuevo núcleo TYPO3
  • En la configuración del dominio en el menú del cliente, cambiar a PHP 7.2 EXTENDED si es necesario
  • Llame a la herramienta de instalación
  • Ir a través de todos los puntos en el asistente de actualización
  • Inicie el analizador de base de datos y realice los ajustes necesarios en la base de datos.
  • Borre todas las cachés

Aunque esto no es necesario para nuestro proyecto de ejemplo, puede ser necesario reemplazar el index.php en la raíz del documento para otras instalaciones.

El siguiente código podría utilizarse en index.php:

<?php

require __DIR__ . '/typo3_src/index.php';

Actualizar extensiones

Todas las extensiones activas deben actualizarse a la última versión compatible con TYPO3 9.

¡Asegúrese de leer la documentación de las extensiones!

A menudo contienen información importante sobre la actualización. Las plantillas o las instrucciones de TypoScript pueden cambiar. Algunas extensiones también tienen un script de actualización en el gestor de extensiones o un asistente de actualización en la herramienta de instalación para realizar los cambios necesarios después de la actualización.

Configuración del sitio

TYPO3 9 LTS viene con un nuevo módulo backend para la configuración del sitio. Los idiomas utilizados deben ser definidos aquí. El manejo de errores 404, por ejemplo, también se puede configurar aquí.

Personalizar el direccionamiento de URL

Por defecto, TYPO3 9 LTS genera URLs sin la extensión .html.

Sin embargo, si antes de la actualización se utilizaban URLs con .html, puede tener sentido adaptar esto también en TYPO3 9. Después de todo, las URL "antiguas" ya aparecen en el índice de varios motores de búsqueda.

Con la siguiente configuración de ejemplo, las URL se generan todas con .html. También se incluye un ajuste para la extensión "news", de modo que también se generen URL legibles para los artículos de noticias.

Además, se garantiza que la llamada de "sitemap.xml" muestre el nuevo mapa del sitio XML de la extensión del sistema "SEO". Para ello debe integrarse la plantilla TypoScript estática correspondiente.

routeEnhancers:
  NewsPlugin:
    tipo: Extbase
    extensión: News
    plugin: Pi1
    rutas:
      -
        routePath: '/{news_title}'
        _controller: 'Noticias::detalle'
        _argumentos:
          título_noticias: noticias
    defaultController: 'Noticias::detalle'
    aspectos:
      news_title:
        type: PersistedAliasMapper
        tableName: tx_news_domain_model_news
        routeFieldName: ruta_segmento
  PageTypeSuffix:
    type: PageType
    por defecto: .html
    mapa:
      'sitemap.xml': 1533906435

Correcciones en las plantillas de la extensión de noticias

Como en el proyecto de ejemplo utilizamos una plantilla personalizada para mostrar las noticias en la página de inicio, hay que hacer un pequeño ajuste en esta plantilla.

Como la ortografía del "caso por defecto" ha cambiado en el ayudante de la vista switch-case, este debe adaptarse en consecuencia.

Nueva sintaxis para las condiciones de TypoScript

Las condiciones TypoScript se basan ahora en el Lenguaje de Expresión Symfony.

Aunque las antiguas condiciones todavía se pueden utilizar en TYPO3 9, ya no funcionarán con TYPO3 10 y la nueva sintaxis se debe utilizar desde el principio.

Nota sobre indexed_search

En el proyecto de ejemplo utilizamos la extensión del sistema indexed_search. En la página de resultados de búsqueda, el campo de búsqueda, que se encuentra en el área de cabecera de la página, está oculto allí porque el plugin lo muestra en el área de contenido normal.

Para que esto funcione en TYPO3 9, es necesario realizar un pequeño cambio en el TypoScript. Estos pasos se pueden ver en el vídeo a partir del minuto 9:20 aproximadamente:

  1. Abrir el archivo typo3conf/ext/jwmusterprojekt8/Configuration/TypoScript/Setup/lib.search.ts

  2. Busque la línea lib.search >



  3. Cambie/añada la línea como sigue: lib.search > lib.search = TEXT lib.search.value >

Este ajuste es necesario debido a un cambio en el núcleo TYPO3, el problema ya ha sido reportado: https: //forge.typo3.org/issues/87513

Nuevas extensiones de archivo para TypoScript y TSconfig

Las extensiones de archivo para TypoScript y TSconfig se han estandarizado y deben adaptarse.


TypoScript -> .typoscript TSconfig -> .tsconfig

Esto también es relevante si incluye manualmente archivos de extensiones del sistema.

Además, la sintaxis para incluir archivos TypoScript se ha simplificado enormemente.

cs_seo vs. seo

TYPO3 9 viene con su propia extensión SEO. Muchas funciones que antes tenían que ser adaptadas con extensiones de terceros ahora se incluyen de serie.

En el proyecto de ejemplo 8, suministramos la extensión cs_seo. Ahora, la mayoría de las funciones están cubiertas por la nueva extensión del sistema. En este vídeo mostramos las diferencias entre ambas extensiones. La necesidad de una extensión adicional como cs_seo o yoast_seo depende del caso de uso y debe decidirse proyecto por proyecto.

Personalizar los derechos de los grupos de usuarios del backend

Si los usuarios del backend con derechos restringidos (editores) también trabajan en el sistema, puede ser necesario ajustar los derechos de estos grupos de usuarios.

Por ejemplo, son necesarios algunos ajustes para la nueva extensión SEO si las nuevas funciones deben ser utilizadas también por los editores.

Los editores también deben tener acceso al campo "slug". De lo contrario, este campo permanece vacío cuando el editor crea una nueva página. Por supuesto, no se encontrará.

Actualizar paquetes de idiomas

Los paquetes de idioma para el sistema y las extensiones deben actualizarse después de una actualización.

Este módulo se ha trasladado a TYPO3 9 y ahora se puede encontrar en el nuevo "Admin Tools" en la sección "Maintenance".

Limpieza

Si todo funciona después de la actualización, deberías ordenar un poco el sistema. Esto incluye, por ejemplo

  • Eliminar las extensiones no utilizadas
  • Realizar otra comparación de la base de datos
  • Cambiar al modo activo en las "Preconfiguraciones".

Por último, si la nueva versión va a entrar en funcionamiento en un dominio diferente, deberá ajustar el "Punto de entrada" en la Configuración del sitio.

El contenido de esta página se ha traducido automáticamente.

Aktualisiert: 17.07.2024