La próxima WordPress 2.6 introduce nuevas definida por el usuario constante de críticas concretas directorio del sistema de ajustes. Esta nueva mejora puede parecer como un pequeño "cambio", sino en el contexto de desarrolladores de plug-in puede ser un desastre inminente. wp-config y wp-carga de archivos
La mayoría de plug-in dependerá de la "ruta absoluta" para wordpress sistema de archivo (wp-config.php). Por lo tanto, el problema está ahí.
Lester-chan (Gamerz) tiene esto para decir sobre el nuevo WordPress 2.6 constante cambio.
La constante sólo se cargan cuando se carga de WP. Plugins tendrá problemas para encontrar wp-config.php o wp-blog-header.php el plugin de archivo.
puede ser roto en WP 2.6
require_once ('../../../ wp-config.php ');Historia larga, corta
A continuación es mi forma de plugin para la activación rápida de instalación. Su no la mejor solución, ya que se trataba de la sucia "write-permiso", que necesitan mejorar. Si la intención de los usos, hay pocos paso preliminar que se establecerá en primer lugar: - ↓
- vaya a su plugin dir
- crear un archivo php en blanco: constant.php
- copiar pegar el siguiente código de guardarlo como archivo nuevo relativo a la constant.php
- crear o configurar su. htaccess y añadir opciones de todos los índices.
Personalizar wp archivo de configuración
my_plugin_write_config función () ( $ constante = get_defined_constants (true); user_defined $ = $ constante [ 'usuario']; unset ($ constante); $ constante = array (); / / Suponiendo que todos los últimos wordpress CONSTANTE comenzar con WP_ $ wp_constant_prefix = "/ WP_ /"; foreach ($ user_defined como $ k => $ v) ( if (preg_match ($ wp_constant_prefix, $ k)) ( $ constante [$ k] = $ v; ) ) unset ($ user_defined); $ constante [ 'ABSPATH'] = (strtr (realpath (ABSPATH), array ( "\ \", DIRECTORY_SEPERATOR))); $ constante [ 'WPINC'] = WPINC; $ constante [ 'WP_VERSION'] = get_bloginfo ( 'versión'); $ constante = array_map ( 'json_encode', $ constante); $ my_plugin_config_file = dirname (__FILE__). DIRECTORY_SEPARATOR ». constant.php '; if (is_writeable ($ my_plugin_config_file)) ( $ contenido = "<? php if (! define ( 'MY_PLUGIN_TOKEN')) die ('42 '); \ n"; foreach ($ constante como $ k => $ v) ( $ content .= sprintf ( 'define (\' CONST_% 1s', 2S%); ', strtoupper ($ k), $ v). "\ n"; ) unset ($ constante, $ k, $ v); contenido .= $ "?>"; $ fp = false; if (($ fp = fopen ($ my_plugin_config_file, 'w +'))! = false) ( stream_set_blocking ($ fp, TRUE); stream_set_timeout ($ fp, 5); stream_set_write_buffer ($ fp, 0); fwrite ($ fp, $ contenido); fclose ($ fp); ) unset ($ contenido, $ my_plugin_config_file, $ fp); ) Else ( add_action ( 'admin_notices',' my_plugin_notification '); ) ) my_plugin_notification función () ( ?> <div Id="message" class="error"> <h3> <? php _e ( 'ERROR')?> </ h3> <p> <a href="http://doc.myplugin.com"> <? _e ( 'RTFM!');?> </ a> </ p> </ div> <? php ) register_activation_hook (__FILE__, 'my_plugin_write_config'); add_action ( 'update_option_siteurl', 'my_plugin_write_config'); add_action ( 'update_option_home', 'my_plugin_write_config');
Básicamente este script buscará todos los definidos por el usuario constante que comienzan con "WP_" prefijo, más adicionales wordpress constante. Luego, a escribir todas estas constantes en el disco dentro de "constant.php" (una vez). También se ejecuta después de una opción de WordPress se ha actualizado (activa cuando el usuario la configuración de actualización para el hogar y siteurl, añadir el extra de acción gancho justo por ejemplo).
Ya Funciones
Fuera de todo este asunto sigo pensando WordPress como uno de los mejores "back-compat amistosa" CMS. La mayor parte de la herencia y funciones de variables (desde la versión 0.71> = 2,5) que está disponible dentro del sistema de WordPress (wp-includes/deprecated.php). ¿No está seguro de cuánto tiempo permanecerá en él ..
Podrían estar interesadas










No Responses to "WP 2.6 definida por el usuario constante"
Si tiene algún comentario, por favor, lea las siguientes guidelines.These están diseñados para proteger a usted y otros usuarios del sitio.
Con el fin de mantener estas experiencias agradable e interesante para todos nuestros usuarios, le pedimos que siga las Directrices. Siéntase libre para participar, hacer preguntas, y nos dicen lo que están pensando! perspicaces comentarios son la mayoría acogió con beneplácito.
ser el primero en comentar.