Publicado el Miércoles 27 de Febrero del 2008 @ 5:00 por Armonth.
Hace unos días un amigo hizo la locura de instalar la última versión de WordPress directamente del SVN en un sitio en producción.
Por suerte no peto nada pero a menudo le saltaban avisos:
*Strict Standards*: Assigning the return value of new by reference is deprecated in */var/www/net/wp-settings.php* on line *267*
Aunque lo solucionamos “como pudimos” no profundice mucho en el error y ayer en la lista de wp-testers alguien se ha encontrado con el mismo problema y Aaron Harun le ha dado la solución “limpia”.
En realidad es una tontería pero como puede ser útil paso a traducirla:
Estás recibiendo el error debido a que PHP 5 está puesto para que por defecto muestre todos los errores incluyendo los “strict notices” y WordPress sigue estando desarrollado para PHP4.
Puedes quitar estos avisos actualizando tu php.ini y poniendo la variable
"error_reporting"a:error_reporting = E_ALL & ~E_STRICTSi no tienes acceso a tu php.ini deberías poder añadir algo similar en tu fichero .htaccess.
Los “strict notices” son avisos de que cierta parte del código no se ha escrito de forma estricta a como debería ser o se ha usado una función deprecated y es posible que en futuras versiones de PHP deje de funcionar. Parecido a cuando en XHTML no se usa una propiedad que debería usarse y pese a no “saltarse el estándar” advierte que es posible que en su futuro sí lo haga y es mejor usarla.
… salvando las diferencias entre los lenguajes xhtml y php.
Creo que la comparación es muy poco acertada. Lo puedes comparar con qualquier lenguaje de programación: perl, python, c…
La comparacion no es acertada por otro detalle.
E_STRICT es una bandera que indica que el codigo no es lo que deberia de ser y que probablemente no funcionara en versiones futuras de PHP. PHP no solo esta siendo permisivo, como xhtml, sino que esta avisando que la funcionalidad que estas implementando podria dejar de funcionar en algun tiempo.
¿Si wordpress se hiciera en PHP5, entonces no daría error?
¿Por que no hacen mas de una versión, pensando en un futuro próximo? (sería bueno, pensando en que no todos los host se cambiarán tan rápido, otros tendrán problemas, etc).
Calculo que otra solución, sin htaccess ni php.ini, seria hacer uso de la función error_reporting en la primer linea del index.php de wordpress.
Saludos
por ese mismo motivo yo prefiero esperar que aparezca 2-3 versiones mas estables solo si en la que uso hay una vulnerabilidad demasiado critica es cuando cambio.