Jump to content


Photo

[Resolvido] Temas Diferentes Para ContéUdos Diferentes


  • Faça o login para participar
7 replies to this topic

#1 Ampliato

Ampliato

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Masculino

Posted 06/05/2010, 10:25

Conheço muito pouco php, o que sei, retirei de fóruns, e por isso, preciso da ajuda de vc's.

Estou construindo um site e, na verdade, já está pronto. Tenho uma "index.php" que gerencia meu conteúdo desta forma:

<?php
include "cabecalho.php"; // insere o cabeçalho padrão
if(isset($_REQUEST["area"])) // testa a variavel area
{
$area = $_REQUEST["area"];
if(file_exists("$area.php")) // verifica se o arquivo existe
{
include ("$area.php"); // inclui o arquivo
}
else // senao exibe a msg de erro abaixo
{
include ("erro.php"); // inclui o arquivo de erros
}
}
else
{
include ("galeria.php"); // Insere a Página Home se a variavel area estiver vazia
}
include ("rodape.php");
?>
Até aqui, excelente, tá tudo perfeito, mas quero fazer algo mais.
Gostaria que uma determinada página, tivesse um tema diferente...

No código acima, toda página inicia com "cabecalho.php" e termina com o "rodape.php", e no meio, é o que chamo pelo "?area=conteudo".

É basicamente no "cabecalho.php" que determino o tema da minha página, chamando as "css's", e no "rodape.php" apenas finalizo.

Como poderia determina que na abertura de uma determinada página pela url "?area=conteudo", eu abrisse um "cabecalho2.php" e um "rodape2.php", por exemplo.

Grato.

#2 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 06/05/2010, 10:55

Você não precisa de PHP para modificar as páginas... somente com CSS você pode fazer isso...!

Você entende bastante de CSS? Especificamente de classes...?

Edição feita por: André Manoel, 06/05/2010, 10:58.

Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.

#3 Ampliato

Ampliato

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Masculino

Posted 06/05/2010, 11:50

André, bom dia!

Só o suficiente para colocar as coisas nos lugares, mas como trocar imagens em click's e coisas assim, não sei fazer.

Se puder me indicar onde poderei aprender, ou mesmo, me ajudar como fazer, fico grato... tenho muito interesse em aprender CSS avançado.

Abs.

#4 Cristiano Galdino

Cristiano Galdino

    Dark Defender

  • Administradores
  • 3738 posts
  • Sexo:Masculino
  • Localidade:Brasília, DF

Posted 06/05/2010, 16:02

Esses são alguns sites de referências CSS:

  • http://maujor.com/ (pt_BR)
  • https://developer.mozilla.org/en/CSS_Reference (En)

Existem N formas de fazer o que você quer. Como você não está usando nenhum framework que facilite sua vida você terá que fazer na mão. Ex.:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
	<title>Sample</title>
	<style type="text/css">
		.paragrafo { font: 12px 'Trebuchet MS', Verdana, Tahoma, Arial, Sans-Serif; }
		.galeria { color: red; }
		.tutoriais { color: blue; }
	</style>
</head>
<body>

	<p class="paragrafo <?php print((string)$_GET["area"]); ?>">In pellentesque faucibus vestibulum. Nulla at nulla justo, eget luctus tortor. Nulla facilisi. Duis aliquet egestas purus in blandit. Curabitur vulputate, ligula lacinia scelerisque tempor, lacus lacus ornare ante, ac egestas est urna sit amet arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos..</p>

</body>
</html>

Acesse passando ?area=galeria e ?area=tutoriais que a apresentação visual será diferente. Não esqueça de verificar tudo que está sendo passado pela query.
  • Ampliato likes this
Cristiano Galdino
- http://cristiano.galdino.net/

“Since 2003”


#5 Ampliato

Ampliato

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Masculino

Posted 07/05/2010, 15:33

Esses são alguns sites de referências CSS...

Cristinao, acho que era isso que estava procurando, valeu, vou tentar aplicar isso.

Vou estudar tb as indicações CSS.

Grande abraço.

#6 Ampliato

Ampliato

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Masculino

Posted 17/05/2010, 08:18

Existem N formas de fazer o que você quer. Como você não está usando nenhum framework que facilite sua vida você terá que fazer na mão. Ex.:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
	<title>Sample</title>
	<style type="text/css">
		.paragrafo { font: 12px 'Trebuchet MS', Verdana, Tahoma, Arial, Sans-Serif; }
		.galeria { color: red; }
		.tutoriais { color: blue; }
	</style>
</head>
<body>

	<p class="paragrafo <?php print((string)$_GET["area"]); ?>">In pellentesque faucibus vestibulum. Nulla at nulla justo, eget luctus tortor. Nulla facilisi. Duis aliquet egestas purus in blandit. Curabitur vulputate, ligula lacinia scelerisque tempor, lacus lacus ornare ante, ac egestas est urna sit amet arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos..</p>

</body>
</html>

Acesse passando ?area=galeria e ?area=tutoriais que a apresentação visual será diferente. Não esqueça de verificar tudo que está sendo passado pela query.

CONSEGUI!!!

Valeu pela força Cristiano, é exatamente isso, mas só me resta um ajuste... no código:
<p class="paragrafo <?php print((string)$_GET["area"]); ?>">
Como defino um padrão para quando não existe a variável ?area= [ www.meusite.com/?area= ], como por exemplo na página inicial, que é somente www.meusite.com ?

#7 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 17/05/2010, 09:54

Bem... você pode fazer o seguinte...

defina quem será o tema default... o padrão do site.

Vamos chamá-lo de default.

Aí você pode utilizar um switch para escolher qual o tema.

//você recebe a variável da URL:

$tema = (string)$_GET["area"];

switch($tema){
   //se o tema recuperado for galeria
   case 'galeria ':
        $tema = 'galeria';
        break;

   //se o tema recuperado for tutoriais
   case 'tutoriais':
        $tema = 'tutoriais';
        break;

   //se o tema recuperado não estiver entre nenhuma da opções acima...
   //o tema será o default
   default:
        $tema = 'default';
        break;

}

Aí você aplica essa variável $tema nos lugares aonde você quer colocar a diferenciação do tema:

<p class="paragrafo <?php print($tema); ?>">

Abração!
  • Ampliato likes this
Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.

#8 Ampliato

Ampliato

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Masculino

Posted 17/05/2010, 13:14

Perfeito André, deu certinho!

Só mais uma coisa, ao invés de eu ficar repetindo várias vezes:
case 'contato':
        $tema = 'contato';
        break;

    case 'portifolio':
        $tema = 'portifolio';
        break;

    case 'quem_sou':
        $tema = 'quem_sou';
        break;

    case 'tks':
        $tema = 'tks';
        break;

    case 'erro':
        $tema = 'erro';
        break;
Como posso definir vários temas numa só "case"? Exemplo:
case 'contato, portifolio, quem_sou, tks, erro':
        $tema = 'contato';
        break;

Grande abraço.

++++++++++++++++ EDITADO +++++++++++++++++++++++++

Desculpe, acho que descobri:
case 'contato'; case 'portifolio'; case 'quem_sou'; case 'tks'; case 'erro':
        $tema = 'cabecalho-outros';
        break;

Valeu e obrigado pela ajuda pessoal!

Edição feita por: Ampliato, 17/05/2010, 13:15.





0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq