Pesquisa
Itens ativos
Posts mais lidos hoje
- Manual
- Tutorial Para Iniciantes
- Tutoriais
- Site fora do ar Personalizado
- Como instalar e configurar o TinyMCE no Drupal
- Sobre o Drupal
- Tutorial: Instalando o Drupal 6 em português
- Correios (Sedex, Malote, PAC) para e-Commerce
- Drupal em português do Brasil (instalação)
- Tutorial - Criando um site com caixas de notícias
Login do usuário
Assine o RSS do Drupal-BR
Criando variável global
Olá pessoal,
Surgiu-me a necessidade dia desse em um projeto, a criação de uma variável global em php para o drupal. Então teste criá-la dentro do "page.tpl.php" porém os demais templates (block, box, commment) não enxergam essa variável criada. Testei criá-la no "template.tpl.php" mas sem sucesso.
Então fica a dúvida: em que arquivo posso criar uma variável global para todos as páginas do drupal enxergarem a mesma?
Abraços,
Carlos
Enviado por musashisama em 21/08/2007 - 16:55
- Se logue ou se registre para poder enviar comentários
- 635 leituras




Vc tem varias formas de resolver isso... usando o proprio recurso do PHP pra issou ou fazer com o esquema de variaves do drupal...
PHP:
<?php
function foo () {
$GLOBALS['foo'] = 'bar';
}
foo();
print $foo;
?>
Drupal:
http://api.drupal.org/api/function/variable_set/5
http://api.drupal.org/api/function/variable_get/5
flw!
--
Pedro Faria de Miranda Pinto
http://www.eusouopedro.com
http://www.phpavancado.net
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
Onde colocar essa função? No template.php do meu tema?
Isso eu não tenho como decidir por vc... vai ter que ver a sua necessidade e trabalhar de acordo com ela! eu somente dei os caminhos!
--
Pedro Faria de Miranda Pinto
http://www.eusouopedro.com
http://www.phpavancado.net
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
Tipo pedro, o que quero fazer é o seguinte. Criar uma variavel global (independente se for através do PHP ou função do drupal) para armazenar a url do site.
Estou fazendo isso porque a variável $base_path do drupal da problemas, nao gera o caminho correto em paginas internas.
Entao surge a duvida: em que arquivo do meu tema, ou do meu sistema, eu crio a função/variável global para solucionar esse problema. Lembrando que todas as paginas .tpl.php imprimiriam essa variavel global.
Tentei criar a função via php, mas nao consegui. Talvez porque criei no arquivo errado, e os templates do meu tema não conseguiram enxergar.
Tentei usar a função do Drupal que você me recomendou não obtive sucesso.
Valeu pelo suporte, Abraço!
Edita o settings.php q vc esta usando... vc vai forçar o $base_url corretamente e pronto!
--
Pedro Faria de Miranda Pinto
http://www.eusouopedro.com
http://www.phpavancado.net
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
Pedro,
Tentei fazer o que sugeriu, indo no settings e ativando manualmente o $base_path. Porém as demais páginas não enxerga a variável. =\
Estou rodando localmente. Será isso?
Abraços,
Não falei base_path... false $base_url
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
--
Pedro Faria de Miranda Pinto
http://www.eusouopedro.com
http://www.phpavancado.net
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
Exato. Usei base_url sim. Mesmo assim nao rolou.
Tem outro meio de eu criar uma variavel para que todo o sistema drupal enxergue?
Se o seu base_url não está sendo interpretado corretamente, você tem algum problema de configuração. Se não for no settings.php, pode ser no . htaccess. Está instalando o site num subdiretório?
Em vez de tentar essa gambiarra com variável global, você deveria achar o problema e consertar, pois o Drupal tem que ler corretamente essa URL. E a gambiarra da variável pode trazer outros problemas.
Esta é a função em que o drupal "seta" a $base_url e $base_path quando ele inicia!
http://api.drupal.org/api/function/conf_init/5
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
--
Pedro Faria de Miranda Pinto
http://www.eusouopedro.com
http://www.phpavancado.net
Bate Papo sobre Drupal? irc://irc.freenode.net/drupal-br
Oi pessoal,
O $base_path funciona corretamente no servidor de hospedagem onde está o meu site.
O problema é localmente, o $base_path so gera "localhost" ao inves de "localhost/nome_do_site".
Por isso estou tentando criar uma variável global. Já tentei de tudo sem sucesso.
Esquecendo um pouco o $base_path, me digam....aonde crio uma variavel global para ser enxergada por todo meu sistema? Se possível poderiam dar um exemplo?
Valeu gente! Abraços,