Bonjour, j'aimerais comprendre certains points :
Quand je met dans mon default.ctp par exemple : mon header(menu) + le <?= $this->fetch('content'); ?> + mon footer
je suis sensé récupéré dans mes pages par exemple : contact.ctp le header + le footer ?

Si oui : pourquoi je récupère pas mon header et les style associé pour le header et le footer. par contre ma feuille de style imbriqué dans le default.ctp s'applique bien sur mon content de contacr.ctp

si non : quelques explications svp

5 réponses


Lartak
Réponse acceptée

Alors, pour commencer, je m’aperçois que je t'avais conseillé de faire quelques modifications et que tu ne les as pas apportées.
Je te redonnes donc ce que je t'avais conseillé avec les modifications avec en supplément les quelques modifications sur le footer.

<!--home page-->
<!DOCTYPE>
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <?php echo $this->Html->charset(); ?>
      <!-- Si le charset est défini à UTF-8 dans ton core.php, sinon -->
    <?php echo $this->Html->charset('UTF-8'); ?>
    <title>YA creative web design</title>
    <?php echo $this->fetch('meta'); ?><!-- Conseillé -->
    <!-- CSS LINK -->
    <?php echo $this->Html->css('style'); ?>
    <?php echo $this->fetch('css'); ?><!-- Conseillé aussi -->
    <!-- font -->
    <link href='http://fonts.googleapis.com/css?family=Merriweather:400,300,300italic,400italic,700,700italic,900italic' rel='stylesheet' type='text/css'>
    <!-- script JS -->
  </head>

  <body>
    <div id="structure">
      <header class="header"><!-- Début de mon header qui contiendra mon logo + ma navigation -->
        <?php echo $this->Html->link($this->Html->image('logo3.png', array('alt' => 'logo')), '/', array('class' => 'logo', 'escapeTitle' => false)); ?>
          <!-- Si tu veux imbriquer l'image dans le lien, sinon -->
        <a href="<?php echo $this->Html->url('/'); ?>" class="logo">
          <?php echo $this->Html->image('logo3.png', array('alt' => 'logo')); ?>
        </a>

        <nav><!-- Ce devrait être des liens fait avec le helper Html link, mais je suppose que tu en est au tout début de la création de ton application -->
          <a href="/index.php" class="active">Home</a>
          <a href="/portfolio.php" class="">Portfolio</a>
          <a href="/blog.php" class="">Blog</a>
          <a href="/skills.php" class="">Skills</a>
          <a href="/culture.php" class="">Culture</a>
          <a href="/contact.php" class="">Contact</a>
        </nav>
      </header>

      <div class="stripes"></div><!--stripes (rayure) de séparation-->

      <?php echo $this->fetch('content'); ?>

    </div><!-- fin structure -->
    <footer class="footer cb">
    <div class="structure">
        <div class="wrap">
            <div class="about"><!-- petit bloc A propos pour me décrire -->
                <h5>A propos de moi</h5>
                <div class="traitfooter"></div>
                <p>
                    Je m'appelle Al Akkad Youssef, j'ai commencé le développement web et le web design pour développer un
                    petit site communautaire et c'est rapidement devenu une vraie vocation. J'aime expérimenter, découvrir et apprendre
                    au fur et à mesure de mes projets pros et perso.
                </p>
            </div>

            <!-- derniers tweets -->
            <div class="tweets">
                <h5>Mes derniers Tweets</h5>
                <div class="traitfooter"></div>
                <p>A Venir ...</p>
            </div>

            <!-- réseaux sociaux -->
            <div class="social">
              <h5>Retrouvez moi sur les réseaux sociaux</h5>
              <div class="traitfooter"></div>
/* Il est préférable d'utiliser les méthodes image et link du helper Html, je te laisse deviner pourquoi. */
                <?php echo $this->Html->link($this->Html->image('social/twitter.png', array('height' => '32')), '#', array('title' => 'Twitter', 'escapeTitle' => false)); ?> 
                <?php echo $this->Html->link($this->Html->image('social/googleplus.png', array('height' => '32')), '#', array('title' => 'Google plus', 'escapeTitle' => false)); ?> 
                <?php echo $this->Html->link($this->Html->image('social/facebook.png', array('height' => '32')), '#', array('title' => 'Facebook', 'escapeTitle' => false)); ?> 
                <?php echo $this->Html->link($this->Html->image('social/linkedin.png', array('height' => '32')), '#', array('title' => 'Linkedin', 'escapeTitle' => false)); ?>
            </div>
        </div><!-- Fin du Wrap -->
    </div>
    </footer>
    <!-- footer -->
    <div id="footer">Copyright / Created & Designed by Talal Al akkad (Designer - Graphic Designer) & Youssef Al-akkad (Webmaster)</div>
  </body>
  <?php echo $this->fetch('script'); ?><!-- Conseillé également -->
</html>

Pour l'histoire du reste du style, je ne peux pas trop te dire, je ne connais pas ton CSS qui traite le style du menu et du footer, peut-être un manque de classes ou d'ID dans tes balises, je ne peux pas trop dire.
Ce qui m'étonne, ce sont les liens avec extensions .php , tu ne devrais pas avoir ça dans une application CakePHP.

Bonjour.
Ton menu et ton footer sont directement dans le layout default.ctp ou est ce que tu les inclus en tant que bloc avec un :

<?= $this->element('menu'); ?>

par exemple ?

xander
Auteur

non il sont directement dans le layout default.ctp je ne les ais pas inclus en tant que blocs.

voici ce que je veut :
http://img4.hostingpics.net/pics/283731login.jpg

et voila ce que j'obtiens :
http://img4.hostingpics.net/pics/759402loginerror.png

Default.ctp :

<!--home page-->
<!DOCTYPE>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>YA creative web design</title>
<!-- CSS LINK -->
<?php echo $this->Html->css('style'); ?>
<!-- font -->
<link href='http://fonts.googleapis.com/css?family=Merriweather:400,300,300italic,400italic,700,700italic,900italic' rel='stylesheet' type='text/css'>
<!-- script JS -->
</head>
<body>
<div id="structure">
    <header class="header"><!-- Début de mon header qui contiendra mon logo + ma navigation -->
        <a href="index.php" class="logo">
            <img src="img/logo3.png" alt="logo"/>
        </a>
        <nav>
            <a href="/index.php" class="active">Home</a>
            <a href="/portfolio.php" class="">Portfolio</a>
            <a href="/blog.php" class="">Blog</a>
            <a href="/skills.php" class="">Skills</a>
            <a href="/culture.php" class="">Culture</a>
            <a href="/contact.php" class="">Contact</a>
        </nav>

    </header>
    <div class="stripes"></div><!--stripes (rayure) de séparation-->

    <?php echo $this->fetch('content'); ?>
</div><!-- fin structure -->
    <footer class="footer cb">
    <div class="structure">
        <div class="wrap">
            <div class="about"><!-- petit bloc A propos pour me décrire -->
                <h5>A propos de moi</h5>
                <div class="traitfooter"></div>
                <p>
                    Je m'appelle Al Akkad Youssef, j'ai commencé le développement web et le web design pour développer un
                    petit site communautaire et c'est rapidement devenu une vraie vocation. J'aime expérimenter, découvrir et apprendre
                    au fur et à mesure de mes projets pros et perso.
                </p>
            </div>
            <!-- derniers tweets -->
            <div class="tweets">
                <h5>Mes derniers Tweets</h5>
                <div class="traitfooter"></div>
                <p>A Venir ...</p>
            </div>
            <!-- réseaux sociaux -->
            <div class="social">
              <h5>Retrouvez moi sur les réseaux sociaux</h5>
              <div class="traitfooter"></div>
                <a href="#" title="Twitter"><img src="img/social/twitter.png" height="32" alt="" /></a>  
                <a href="#" title="Google plus"><img src="img/social/googleplus.png" height="32" alt="" /></a>  
                <a href="" title="Facebook"><img src="img/social/facebook.png" height="32" alt="" /></a>  
                <a href="#" title="Linkedin"><img src="img/social/linkedin.png" height="32" alt="" /></a>  
            </div>
        </div><!-- Fin du Wrap -->
    </div>
    </footer>
    <!-- footer --><!-- 
    <div id="footer">Copyright / Created & Designed by Talal Al akkad (Designer - Graphic Designer) & Youssef Al-akkad (Webmaster)</div>
-->
<!--Script JS -->
</body>
</html>
xander
Auteur

oui c'est parce que j'avais pas trop compris se que tu m'avais conseillé ^^ j'ai crue que je devais mettre mon menu et mon footer dans une view et les apporté dans le default.ctp ou dans le contact.ctp.
pour ceux qui est de mes liens c'est tout a fait normal je viens de commencé a intégrés mon template sur Cakephp.
Merci pour tes conseils je vais les appliqué de suite ^^ je te tiens au courant

xander
Auteur

Super Lartak11 merci tout fonctionnes bien j'ai respecté les normes de CakePHP. Merci de m'avoir fait rappelé l'utilité des Helpers