Hola Drupaleros, tengo un problemilla con un modulo, ojalá puedan echar la mano.
El caso es el siguiente,
Hice dos tipos de contenido:
1.- Equipo (Fields: nombre, logo (.jpg))
2.- Partido (Fields: fecha, logo Equipo A, Logo Equipo B)
En el tipo de contenido "Partido" use un campo con Field Reference para "llamar" el .jpg del Equipo A y del Equipo B.
Cuando genero la View con el Formato de Tabla, todo se despliega correctamente y no manda error, sin embargo, cuando paso al front-end aparece lo siguiente:
Strict warning: Only variables should be passed by reference in field_reference_field_formatter_view() (line 316 of /Users/*****/sites/all/modules/field_reference/field_reference.module).
Esta es parte del codigo donde esta la linea 316
if (!empty($item['revision_id']) && !empty($entity_type_info[$field_entity_type]['entity keys']['revision'])) {
$field_entity_id = !empty($item['entity_id']) ? $item['entity_id'] : $entity->{$entity_type_info[$field_entity_type]['entity keys']['id']};
$field_revision_key = $entity_type_info[$field_entity_type]['entity keys']['revision'];
$field_entity = reset(entity_load($field_entity_type, $field_entity_id, array($field_revision_key => $item['revision_id'])));
}
else {
316>> $field_entity = !empty($item['entity_id']) ? reset(entity_load($field_entity_type, array($item['entity_id']))) : $entity;
}Creo que el error se genera por el hecho de que el Field Reference es un .jpg y que formateador de la imagen en views que aparece como "default" "full" o "teaser", en vez de "image" o algo así, pero no encuentro que hacer?
Alguna idea??
gracias por su ayuda.

Comments
Has tenido suerte?
Hola,
Cómo te ha ido con este problema? Le he estado echando un ojo al módulo que usaste pero parece que tiene muy poco uso, quizá te convenga cambiar de estrategia, por ejemplo usar entity reference.
Saludos,
georch
es PHP, no drupal
Me parece que es un problema con la configuración de PHP más que con drupal...
el problema es que PHP reporta los errores en modo estricto (E_STRICT)
tendrías dos opciones si quisieras seguir usando ese modulo: corregirlo para que sea compatible con modo estricto o reconfigurar PHP para que ignore las advertencias estrictas (strict warnings)
reconfigurar php: cambia el valor de error_reporting a
E_ALL & ~E_NOTICE & ~E_STRICTen el php.ini... más info y fuente http://stackoverflow.com/questions/9983286/disabling-strict-standards-in...tal vez la solucion más "correcta" sea arreglar el origen del warning
así sin probar, se me ocurre que cambiando la line 316 a estas dos lineas puede funcionar:
el problema (a mi entender) es que la funcion reset espera una variable como referencia (según la documentacion de PHP), si le pasas el resultado de una funcion, recibe un valor, no una referencia, por lo tanto al crear la variable temporal $loaded_entity, la funcion reset puede recibir la referencia a esta variable y ya no debe de emitir el warning.
Hola naringas, Muchas gracias
Hola naringas,
Muchas gracias por la explicación y tu ayuda.
Reemplacé la linea 316 por las que facilitaste y el mensaje de error ha desaparecido, aún no he realizado mas pruebas o creado vistas, pero así tal cual todo funcionó bien.
De nuevo muchas gracias!
+Francisco Milland
@pacomilland
@fmilland, has reportado el
@fmilland,
has reportado el fix al desarrollador? sería interesante así lo agregan al modulo ;)