Tengo una extensión de trabajo TYPO3. Se adjunta this wiki page. ¿Cómo puedo cambiar el código de esta extensión para que sea del tipo USER_INT? Es decir. No quiero que TYPO3 almacene en caché el resultado de este complemento, y quiero que TYPO3 invoque siempre la extensión de una página que use la extensión, es decir, deshabilite el almacenamiento en caché para esta extensión.TYPO3: Cambie el complemento de USER_INT a USUARIO_INT tipo
Respuesta
Para deshabilitar el almacenamiento en caché para su extensión ir a su archivo FOTO/class.tx_XXX_piX.php y quitar la línea siguiente (por debajo de su declaración de la clase):
var $pi_checkCHash = true;
También es necesario añadir la siguiente línea en el método principal (por debajo de $ this-> pi_loadLL();):
$this->pi_USER_INT_obj=1; // Configuring so caching is not expected. This value means that no cHash params are ever set. We do this, because it's a USER_INT object!
Cuando haya creado su extensión con el pedal de arranque también tiene que ir al archivo [yourextension] /ext_localconf.php y cambiar esta línea
t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',0);
a esto:
t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',1);
grunwalski es todo lo contrario usted tiene que cambiar esta situación:
t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',1);
a esto:
t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',0);
Exactamente. "Si $ en caché está configurado como objeto de contenido USER (cObject), de lo contrario se crea un objeto USER_INT". –
La forma más simple de resolver el problema es para volver a Extension Maganer, seleccione su extensión, elija "Editar en Kickstarter" de los menús desplegables u, y luego seleccione el complemento Frontend correspondiente para editar sus propiedades.
Marque la primera casilla de verificación, lo que significa que desea que sus complementos se representen como USER_INT cObjects. Luego, haga clic en el botón Ver resultado, desmarque todos los archivos PHP personalizados (su propio código, como módulos y complementos) en el lado derecho y haga clic en el botón ESCRIBIR. Por favor tenga cuidado. Si no desmarca las casillas de verificación de sus propios archivos, se sobrescribirán con archivos ficticios.
La forma correcta y comlete de hacer esto es una combinación de las respuestas de @arturh y @Mehdi Guermazi:
- el último cambio de parámetro en la llamada
addPItoST43()
en ext_localconf.php de 1 a 0 - elimina la línea
var $pi_checkCHash = true;
de las definiciones de propiedad en el encabezado de la clase pi1. - agregue la línea
$this->pi_USER_INT_obj=1;
al inicio de la función main() en pi1.
Estos cambios son idénticos a los que obtendrá cuando use el método kickstarter explicado en la solución de @bencuss.
Edite el archivo setup.txt de su extensión "myext". Cambiar "USUARIO" en "USER_INT".
plugin.tx_myext = USER_INT
plugin.tx_myxt {
Esta extensión nunca se almacenará en caché.
- 1. Typo3 eID, cómo acceder a la configuración
- 2. referencias de TYPO3
- 3. Entidad Framework: herencia, cambie el tipo de objeto
- 4. Rieles: cambie el tipo de columna, pero guarde los datos
- 5. Arquitectura tipo complemento en .NET
- 6. Typo3 - Deshabilitar el caché para una extensión
- 7. Typo3 foreign_table & foreign_table_where en TCA
- 8. Plantilla de fluido TYPO3 obtener el código de idioma
- 9. ¿A dónde fue el complemento de elasticfox?
- 10. SubVersion cambie a la profundidad
- 11. TYPO3 - Redirigiendo a la página de inicio de sesión cuando el usuario no ha iniciado sesión
- 12. Typo3 - Obtenga el idioma actual en un archivo php externo
- 13. TYPO3: ¿cómo suprimir las advertencias obsoletas?
- 14. Android audio: cambie el tono
- 15. Typo3 formulario muestra como ### ETIQUETA ### ### CAMPO ###
- 16. ¿Cómo verificar el tipo correcto al llamar a ObjectWrap :: Unwrap en un complemento Nodejs?
- 17. Conversión de complemento a dos
- 18. Cambie el directorio de trabajo en Xcode
- 19. TypeScript cambie el nombre de la variable
- 20. Logaritmo con SSE o cambie a FPU?
- 21. Android - cambie a la actividad sin reiniciarlo
- 22. Cambie el valor de un atributo específico
- 23. Emacs, cambie a la ventana anterior
- 24. Android: cambie el recurso de cadenas programáticamente
- 25. Cambie el título de UITabBarItem dinámicamente
- 26. Cambie el nombre del encabezado de tabla
- 27. Qt - cambie el diseño de QWidget
- 28. Jquery - cambie el texto de la etiqueta
- 29. Cambie el nombre de los nombres de las propiedades y cambie los valores de varios objetos
- 30. TYPO3: 404 para la página de acceso restringido en lugar del formulario de inicio de sesión
Ahora estoy en otro proyecto y no tengo el entorno para probar esto, pero esta será información útil para otras personas que tienen el mismo problema. Gracias por su respuesta. – avernet
Esto no desactiva el almacenamiento en caché, solo desactiva la comprobación del parámetro cHash. – Sebs
Aunque su respuesta es correcta, siempre es mejor no cambiar los archivos de la clase php de una extensión. Intente modificarlo mediante una función XCLASS o utilice el método (anónimo) a continuación, cambiando solo el archivo 'ext_localconf.php'. – Mateng