Impossible afficher le single-{post type}.php.

  • WordPress :5.0
  • Statut : non résolu
12 sujets de 1 à 12 (sur un total de 12)
  • Auteur
    Messages
  • #2242254
    grassel
    Participant
    Padawan WordPress
    98 contributions

    Bonjour,

    WordPress Version: 5.0.3
    Permalink Structure: /%postname%
    Active Theme: thème personnel en cours de développement

    PHP Version: 7.2.10
    MySQL Version: 5.7.23
    Web Server Info: Apache/2.4.35 (Win64) PHP/7.2.10 // local Wamp

    ACTIVE PLUGINS:

    Admin Columns: 3.3.1
    Advanced Custom Fields: 5.7.8
    Custom Post Type UI: 1.6.1
    Regenerate Thumbnails: 3.0.2
    Simple Page Ordering: 2.3.2

    Problème(s) rencontré(s) :

    Je reviens vers vous, j’ai vraiment besoin d”un coup de main pour afficher le single d’un customs post type 🙁

    A lire le codex dans tous les sens je retombe toujours sur la création d’un template single-{post type}.php.

    Le slug de mon custom post type est “blog” donc j’appelle bien ma page single-blog.php.

    Malheureusement je suis redirigé vers ma front-page bien que mon lien vers le post est correct.

    Je ne sais absolument plus quoi faire ni quoi chercher ….help svp 🙂

    Si ma demande n’est pas compréhensible, merci de le préciser…en l’état je ne peux plus rien faire 🙁

    Amicalement

    PascalG

    #2242255
    ouiouiphoto
    Participant
    Maître WordPress
    1539 contributions

    Bonjour

    Juste pour que tu te sente moins seul 😉 Ca dépasse mes compétences. Perso j’ai un peu de mal a comprendre que l’on fasse du développement spécifique sur un CMS qui est la justement pour que l’on puisse en faire le moins possible.

    #2242271
    Li-An
    Modérateur
    Maître WordPress
    22240 contributions

    @ouiouiphoto : la gestion de type de contenu personnalisé et la création de templates afférents sont des manips assez simples qui font la richesse de WP (c’est comme ça que fonctionne WooCommerce par exemple). La demande et la manip sont donc parfaitement justifiées ici.

    @grassel : difficile de vous aider sans accès au site. Testez en désactivant les extensions et en mettant un thème par défaut. Il faudrait évidemment voir le contenu de votre fichier et il se peut que la redirection se fasse du fait d’un réglage local qui sera difficile à diagnostiquer. Mettez aussi un htaccess basique (les permaliens ont bien été enregistrés ?).

    #2242273
    ouiouiphoto
    Participant
    Maître WordPress
    1539 contributions

    @Li-An. Je n’ai jamais dit qu’elle ne l’était pas 😉

    #2242320
    grassel
    Participant
    Padawan WordPress
    98 contributions

    @ouiouiphoto : l’idée est d’utiliser les fonctionnalités largement simplifiées, sécurisées, du CMS pour implémenter des modules qui répondent au plus près au besoin spécifique…cela dit merci pour ton soutien du moment 😉

    @Li-An: Je comprends et redoutais aussi ta réponse. J’espérais une évidence qui m’échappait et que qqun aurait relevée immédiatement 🙁

    Je vais activer le module qui pose problème sur le net afin de te le rendre accessible (site déjà en exploitation), dès aujourd’hui, j’espère.

    J’avertirai dès que ce sera fait…si vous pouviez rester à l’écoute.

    Bonne journée et merci pour la réponse 🙂

    PascalG

    • Cette réponse a été modifiée le il y a 7 mois par  grassel.
    • Cette réponse a été modifiée le il y a 7 mois par  grassel.
    #2242368
    grassel
    Participant
    Padawan WordPress
    98 contributions

    Voici le site : https://webexpo.pascalg.net/

    Le souci se passe sur la page “Billets” (blog.php) – le nom du single qui est appelé par le permalien : single-blog.php

    voici mon htaccess:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
    # END WordPress

    Voici blog.php :

    <?php
    /*
    Template Name: blog
    */
    ?>
    
    <?php get_header(); ?>
    
    <?php require_once('inc/menu.php') ; ?>
    
    <?php $banner = get_field('recap_banner', 17);// 17 pour ID de la page articles  - 29 en local?>
    <img class=" img-fluid" src="<?php  echo $banner;// c'est la bannière pour du titre dans Home-albums-billets ?>" >
    
    <section id="catalogue">
    	<div class="container">
    			<div class="row ">
    <div> Template de page-billet - La page qui va afficher chaque billet - En cours de développement </div>
    
    
    <?php
    
    $myposts = get_posts(array(
    		'numberposts' => -1,
    	'post_type'			=> 'blog'
    ));
    
    if( $myposts ): ?>
    
    	<ul>
    	<?php foreach( $myposts as $post ):
    
    		setup_postdata( $post );
    
    		$lien = get_the_permalink(); echo "Permalien : ".$lien;		?><br>
    		<?php echo "Voici le contenu du billet : ";?><br>
    		<li>
    			<a href="<?php echo $lien; ?>"><?php the_title(); ?></a>
    			<?php the_field('blog-test'); ?>
    		</li>
    
    	<?php endforeach; ?>
    	</ul>
    
    	<?php wp_reset_postdata(); ?>
    
    <?php endif; ?>
    
    
    
    			</div>
    	</div>
    
    </section>
    
    <?php require_once('inc/contact.php') ; ?>
    
    <?php get_footer(); ?>

    Voici single-blog.php :

    <?php
    /*
    Template Post Type: blog
    */
    ?>
    
    <?php get_header(); ?>
    
    <?php require_once('inc/menu.php') ; ?>
    
    <?php $banner = get_field('recap_banner', 17);// 17 pour ID de la page articles  - 29 en local?>
    <img class=" img-fluid" src="<?php  echo $banner;// c'est la bannière pour du titre dans Home-albums ?>" >
    
    <section id="catalogue">
    	<div class="container">
    		<div class="row ">
    			<div>Affiche la page single de "blog", appelée par "Billets"</div>
    
    		</div>
    	</div>
    
    </section>
    
    <?php require_once('inc/contact.php') ; ?>
    
    <?php get_footer(); ?>

    A votre dispo pour tout autre précision bien sûr :)…je croise les doigts !

    #2242374
    Li-An
    Modérateur
    Maître WordPress
    22240 contributions

    blog.php ce n’est pas possible. Vous voulez dire archive-blog.php ? https://wphierarchy.com/

    #2242433
    grassel
    Participant
    Padawan WordPress
    98 contributions

    En fait j’ai tenté plusieurs noms (je n’utilise pas de template archive).

    Que ma page soit nommée blog.php ou bien page-blog.php, à partir du moment où je la déclare comme un template [<?php /* Template Name: blog */ ?>] elle semble convenablement appelée puisque c’est celle qui s’affiche à l’appel de “Billets ” dans le menu…

    Bien sûr dans l’admin, je dois également choisir “blog” comme template dans attribut cette page “Billets” appelée via le menu.
    En d’autres termes, le choix “Billets” dans le menu appelle cette fameuse page blog.php ou encore page-blog.php: [ID=269]

    Est-ce une erreur ?

    voici mon menu :

        <header class="d-md-block d-none">
          <nav id="menu" >
            <ul>
              <li <?php if(is_front_page()): ; ?>class="current" <?php endif;?>  > <a href="Accueil">Accueil</a></li>
              <li <?php if(is_home()): ;       ?>class="current" <?php endif;?>  > <a href="albums">Albums</a></li>
    		  <li <?php if(is_page(269)): ;    ?>class="current" <?php endif;?>  > <a href="Billets">Billets</a></li>
              <li><a href="#contact">Contact</a></li>
            </ul>
          </nav>
        </header>

     

    #2242436
    Li-An
    Modérateur
    Maître WordPress
    22240 contributions

    En effet, ce n’est pas cohérent. Un template de page, c’est pour une page de contenu, pas une page d’archive. En fait, j’ignore si ce que vous faites peut créer des problèmes.

    Je ne sais pas d’où ça peut coincer. Il faudrait faire des tests (un template basique, un autre nom…)

    #2242455
    grassel
    Participant
    Padawan WordPress
    98 contributions

    Je ne gère aucune archive sur ce site donc aucun rapport avec un template archive.

    Comme vous l’indiquez, ce template de page (“blog”) est bien utilisé pour une page de contenu (la page “billets” qui liste une ensemble de posts de mon custom type post de slug “blog”)… si je comprends bien votre remarque.

    J’ai déjà tenté tant de choses que j’en ai peut-être perdu le fil….je vais laisser passer un peu de temps et repartir uen nouvelle fois de zéro…je reviendrai donner des précisions 🙂

    Merci et bon we

    Amicalement

    PascalG

     

    #2242456
    Li-An
    Modérateur
    Maître WordPress
    22240 contributions

    On appelle archive dans WP tout ce qui est généré automatiquement à partir d’un appel (mot clef, date, auteur, liste de type de contenu…). Votre page est une archive déguisée.

    Mais bon, ça ne fait pas avancer votre problème.

    Je vous suggère de créer le template de la page d’archive blog pour voir si les single sont bien appelés correctement à partir de cette page.

    #2242556
    grassel
    Participant
    Padawan WordPress
    98 contributions

    Merci de la précision, c’est le souci de la formation en autodidacte…on prend des biais ou encore on fait des approximations qui finissent pas générer des soucis …comme pour moi en ce moemnt.

    Je regarde dans ce sens et je ferai signe.

    Merci et bon we 🙂

12 sujets de 1 à 12 (sur un total de 12)
  • Vous devez être connecté pour répondre à ce sujet.