php - modules - www drupal site




¿Cómo obtener la URL completa de una página de Drupal? (6)

Necesito tomar la URL de la página actual en un sitio de Drupal. No importa qué tipo de contenido sea, puede ser cualquier tipo de nodo.

No estoy buscando el camino al tema, ni la url base, ni el get_destination de Drupal. Estoy buscando una función o variable que me dé el siguiente completo:

http://example.com/node/number

Ya sea con o sin (más probable) el http:// .


El siguiente es más Drupal-ish :

url(current_path(), array('absolute' => true)); 

Este método es todo el método antiguo, en drupal 7 podemos hacerlo de manera muy simple

    current_path()

y otra función con una pequeña diferencia

request_path()

Me parece usar tokens bastante limpio. Está integrado en el núcleo en Drupal 7.

<?php print token_replace('[current-page:url]'); ?>

Pruebe lo siguiente:

url($_GET['q'], array('absolute' => true));

También puedes hacerlo de esta manera:

$current_url = 'http://' .$_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

Es un poco más rápido.


drupal_get_destination() tiene un código interno que apunta al lugar correcto para obtener la ruta interna actual. Para traducir esa ruta en una URL absoluta, la función url() debería funcionar. Si se pasa la opción 'absoluta', generará la URL completa, no solo la ruta interna. También intercambiará los alias de ruta para la ruta actual también.

$path = isset($_GET['q']) ? $_GET['q'] : '<front>';
$link = url($path, array('absolute' => TRUE));




content-management-system