Olá,
Estou a desenvolver um site em Drupal e gostaria de ter um menu dropdown com opções e gostaria que o conteúdo alterasse mediante a opção seleccionada.
Por ex.: Moeda
Por defeito o utilizador está a ver os preços em euros (atenção não é um site de commerce) e tem uma dropdown onde pode alterar a moeda. Se alterar a moeda para USD ele altera alguns conteúdos da página (nomeadamente os preços para USD - sem converter).
2º Exemplo: País
As páginas apresentam diferentes conteúdos dependendo da opção seleccionada no dropdown. Para o idioma, sei que o drupal tem esta opção, mas não pretendo que o site tenha links para os idiomas. ex.: site.pt/pt-pt ou site.pt/pt-br, apenas que exiba conteúdos diferentes por país. ex: site.com/contactos exibe um nrº de telefone quando seleccionado o pais Brasil e outro quando seleccionado o pais Portugal.
Gostaria ainda de saber de é possível juntar os 2 exemplos acima. Ou seja, ter um dropdown para o pais e outro para a moeda. quando se selecciona o pais o site exibe os conteúdos referentes aquela selecção, quando se selecciona a moeda ele selecciona os respectivos conteúdos. e se ainda é possível que quando seleccionado o primeiro dropdown com o pais Brasil (por ex.) se ele consegue por defeito seleccionar automaticamente a moeda real no segundo dropdown.
Já pesquisei bastante sobre este assunto, no entanto não estou a conseguir encontrar solução.
Existe algum módulo que faça isto? é possível fazer com algum conjunto de módulos?
Agradeço desde já toda a ajuda que me possam dar.
Obrigado,
Guilherme
Comments
Podes gerar os conteúdos
Podes gerar os conteúdos pelas Views e gerar as páginas que pretendes com os critérios dos idiomas, moedas, etc...
Se quiseres podes ainda instalar o CONTEXT para criares critérios para as páginas layouts etc...
Dúvida
Ok, obrigado. vou estudar o assunto. ainda não entendo muito bem o funcionamento das Views... Não é possível colocar os conteúdos em blocos? Por exemplo, um bloco com uma tabela de preços com os preços em euros e outro com uma tabela com os preços em reais?
Tentei fazer com o "Session Cache API"... Não seria interessante a utilização deste módulo também?
Obrigado.
Abraço,
Guilherme
Dropdown
E para fazer uma dropdown box? consigo usar o CONTEXT e uma dropdown box com as opções? Se sim, como?
Obrigado
Guilherme
Com as Views podes gerar
Com as Views podes gerar conteúdos para páginas ou blocos.
E se quiseres podes ainda utilizar o mesmo método para gerar blocos para os menus depois é utilizando um módulo de menus Dropdown tipo o MP Megamenu, o Superfish ou outro...
Não consigo entender as
Não consigo entender as views, sou obrigado a criar páginas ou blocos com listagens??
Eu quero criar blocos ou páginas com html. blocos ou páginas estáticas, sem listagens e sem recorrer a info em campos da BD etc.
Ou seja, quando o visitante selecciona "Portugal" no dropdown, ele exibe uma página no url "xpto.com/qualquercoisa", por outro lado se o visitante selecciona no dropdown "Brasil", ele exibe outra página no mesmo url "xpto.com/qualquercoisa". Eu até preferia trabalhar com blocos, pois a ideia seria exibir o mesmo conteúdo no url "xpto.com/qualquercoisa" quando seleccionado "Portugal" ou "brasil" no entanto apenas quero fazer variar os preços e os links (a gestão das encomenda e gerida noutra plataforma externa ao drupal).
Repito, não é necessário carregar esta info da BD, eu crio o HTML para cada página.
Mas quero que o dropdown esteja presente em todas as pagina. Se a pessoa seleccionou na home o campo brasil, todas as páginas a que o visitante aceder e que verificarem esta condição deverão exibir os blocos associados a esta condição. não quero apenas que o dropdown esteja na página onde estou a exibir o conteúdo. o dropdown está no header e quando uma opção estiver seleccionada, esta fica num cookie por ex, e sempre que o visitante navegar por uma das paginas em que a condição se verifique ele exibe conteúdos diferentes.
Não estou bem a ver a utilidade das views aqui :S
O que eu quero é basicamente um dropdown para seleccionar a moeda mas que altera em todo o site e sem mudar urls.
Não há uma forma simples de fazer isto? Eu já conseguir fazer com o módulo do idioma mas implica alterar o URL para "xpto.com/br/qualquercoisa" e é imperativo que o URL se mantenha.
Vi o módulo "Views Global Filter" que parece que faz o que pretendo, mas não consigo por a funcionar...
Não encontro absolutamente nenhuma informação sobre isto...
Alguém me consegue dar uma sugestão mais detalhada?
Agradeço desde já toda a ajuda que me possam dar.
Obrigado,
Guilherme
Podes fazer o que pretendes
Podes fazer o que pretendes programaticamente (processo rudimentar) combinando CSS e JS. Fazes attach à dropbox (via jquery) e sempre que alterada mudas o valor do cookie. Com base no valor do cookie mudas a visibilidade (display:block display:none) do elemento que pretendes esconder ou mostrar.
Por outra via, creio que conceptualmente interessante (msa não testado) podes usar o Context (permite-te desencader acções com base em determinados contextos) para esconder/mostrar os blocos. Tens um projeto (https://www.drupal.org/sandbox/jdaglees/1850482 - ainda em sandbox) que permite ter variaveis $_COOKIE acessiveis ao módulo Context, deste modo com base no cookie que defines escondes ou mostras o bloco (ve este exemplo especifico para blocos https://www.ostraining.com/blog/drupal/context/).
É estranho quereres fazer um
É estranho quereres fazer um site em Drupal e depois disseres que não queres utilizar BD....
Para isso fazes tudo manualmente em HTML e não precisas da Framework do Drupal para nada.
O que o Paulo diz é uma solução mas depois se tiveres muitos conteúdos e idiomas para alterar tudo à unha em HTML jasus....
Contudo a mais valia do Drupal é sem dúvida alguma a utilização do VIEWS que é só o mais e melhor módulo utilizado para Drupal, inclusive na versão 8 já vem com o CORE... se quiseres dominar este módulo basta pesquisares no Youtube por VIEWS DRUPAL e aparecem paletas de videos
Concordo
Concordo que usar o Drupal para páginas estáticas de HTML é mesmo estranho.
Tudo o que estás a fazer podes fazer sem Drupal.
Podes fazer em PHP, HTML+Jquery, etc...
A vantagem de usar um Content Management System como o Drupal é para facilitar a gestão de conteudos. Duas páginas estáticas não são propriamente muitos conteúdos.
Para multi idioma os módulos internationalization (i18n) e Language Switcher Dropdown (lang_dropdown) fazem o que pretendes e muito mais.