Considere el uso de envolturas ( public://, private://, etc para evitar cualquier conflicto de carpetas Aprovecha Drupal 7 :).)
AyeshK
Sé que esto funciona con image_style_url (uri) pero quiero pasarlo a JavaScript como una variable para un procesamiento
posterior
Respuestas:
24
Esta información se guarda en la tabla de variables de Drupal. Use la variable_getfunción para obtener esta información, pasando el nombre de la variable correcta:
Ubicación del sistema de archivos público :variable_get('file_public_path', conf_path() . '/files');
Ubicación del sistema de archivos privado :variable_get('file_private_path');
Si desea utilizar el directorio de carga temporal variable_get('file_temporary_path');Si desea determinar el directorio de carga específico del sistema, independientemente de la configuración real del sitio, use la file_directory_tempfunción.
variable_get('file_public_path', conf_path() . '/files'); extraerá la ruta predeterminada en caso de que no haya sido modificada o establecida explícitamente por el administrador del sitio.
hmm en mi caso variable_get ('file_public_path') está vacío ... ¿tengo que llamarlo dentro de un gancho o algo así?
Jurudocs
1
@Jurudocs Use esto en su lugar: variable_get('file_public_path', conf_path() . '/files');Básicamente, extrae la ruta predeterminada para usted en caso de que el administrador del sitio no la haya modificado o establecido explícitamente.
9ee1
@zhilevan Verifique los permisos de su archivo en ese directorio.
Atomox
Esto solo da la ruta relativa que parece menos útil que la ruta absoluta. Me gusta la drupal_realpathsolución a continuación. Parece más legítimo.
Alex Finnarn
11
Para obtener las rutas absolutas del sistema de archivos, use drupal_realpath(API de Drupal) en lugar de file_create_url:
drupal_realpath('public://');// returns e.g. /var/www/drupal/sites/default/files
drupal_realpath('private://');// returns e.g. /var/www/drupal/sites/default/files_private
public://
,private://
, etc para evitar cualquier conflicto de carpetas Aprovecha Drupal 7 :).)Respuestas:
Esta información se guarda en la tabla de variables de Drupal. Use la
variable_get
función para obtener esta información, pasando el nombre de la variable correcta:variable_get('file_public_path', conf_path() . '/files');
variable_get('file_private_path');
Si desea utilizar el directorio de carga temporal
variable_get('file_temporary_path');
Si desea determinar el directorio de carga específico del sistema, independientemente de la configuración real del sitio, use lafile_directory_temp
función.variable_get('file_public_path', conf_path() . '/files');
extraerá la ruta predeterminada en caso de que no haya sido modificada o establecida explícitamente por el administrador del sitio.fuente
variable_get('file_public_path', conf_path() . '/files');
Básicamente, extrae la ruta predeterminada para usted en caso de que el administrador del sitio no la haya modificado o establecido explícitamente.drupal_realpath
solución a continuación. Parece más legítimo.Para obtener las rutas absolutas del sistema de archivos, use
drupal_realpath
(API de Drupal) en lugar defile_create_url
:fuente
También puede usar estas funciones para obtener una URL válida de una uri relativa:
Devuelven la ruta a las carpetas públicas o privadas.
fuente