En mis temas hook_preprocess_page()
y hook_preprocess_html()
funciones personalizados, a menudo necesito identificar la misma información. En lugar de ejecutar esencialmente lo mismo si la instrucción verifica tanto la identificación de la misma información, tendría mucho más sentido hacerlo una vez en ambos y luego pasar esa información a la otra función de preproceso. ¿Cómo puedo hacer esto? Intenté lo siguiente pero no funcionó:
function myTheme_preprocess_page(&$vars){
$vars['myValue'] = 7;
}
function myTheme_preprocess_html(&$vars){
//$vars['myValue'] should equal 7...
}
También lo intenté al revés (estableciendo el valor en la función html de preproceso y luego recuperándolo en la función de preproceso de página) pero tampoco funcionó. Lo que plantea una pregunta relacionada: ¿en qué orden se procesan estas funciones de preproceso? Me parece que la función de preproceso de la página viene antes que la html, ¿es correcto?
static
procesamiento como la primera respuesta. y la configuración de peso ligero en realidad podría ser más rápida ya que no tiene la sobrecarga de llamadas de función para cada conjunto de variables, solo la primera vez que llama desde la función principal. Y, obviamente, las partes principales (nodo y página) solo se configuran una vez.