difficultés avec Les Custom Post Type (Créer un compte)

  • WordPress :5.8
  • Statut : non résolu
15 sujets de 1 à 15 (sur un total de 44)
  • Auteur
    Messages
  • #2384909
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL : 7
    • Thème utilisé : astra
    • Extensions en place : WP-PageNavi ***Custom Post Type UI***Advanced Custom Fields
    • Nom de l’hébergeur : hostinger
    • Adresse du site : http://wordpress.pecheperle.be/

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

    bonjour a tous

    j essaye de comprendre le fonctionnement des custom post type

    mais je bloque a un stade

    j ai donc suivi ce tuto

    h**ps://wpformation.com/cpt-ui-wordpress/

    mais je ne comprends pas pourquoi je n ai rien qui s affiche dans mon modèle de page  ?

    pourtant j ai bien crée  un type  et des taxonomies

    j ai juste remplacer film par cinéma et le genre par nouveau au niveau du tutoriel

    et lorsque je veux afficher ma page page-films.php

    elle est vide …
    <h2></h2>

    • Ce sujet a été modifié le il y a 1 mois par flexi2202.
    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2384921
    Li-An
    Modérateur
    Maître WordPress
    25505 contributions

    Bonjour, si vous avez remplacé film par cinema, je suppose que le template doit se nommer page-cinema.php

    #2384923
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    merci pour la reponse

    je viens d essayer mais le résultat est pareil

    c est surement juste un détail , mais lequel ?

    #2384948
    Li-An
    Modérateur
    Maître WordPress
    25505 contributions

    Difficile de vous répondre sans voir le code que vous avez utilisé.

    #2384961
    Lumiere de Lune
    Participant
    Maître WordPress
    19612 contributions

    Vous avez créé des éléments de librairie elementor. ca n’a rien à voir avec un template php comme décrit dans le tuto

    #2384964
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    merci pour l aide

    en fait le code que j ai utilise est le suivant

    <?php
    /*
    Template Name: Films
    */
    
    get_header(); ?>
    
     <?php $loop = new WP_Query( array( 'post_type' => 'cinema', 'posts_per_page' => 5, 'paged' => $paged) ); ?>
    
     <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
    
     <?php the_title( '<h2 class="entry-title"><a href="' . get_permalink() . '" title="' . the_title_attribute( 'echo=0' ) . '" rel="bookmark">', '</a></h2>' ); ?>
    
     <div class="entry-content">
     <?php the_content() ; ?>
     </div>
    
     <?php endwhile ; ?>
    
    
    <?php wp_pagenavi( array( 'query' => $loop ) ); ?>
    <?php get_footer(); ?>

    oui en effet j ai installe elementor en version gratuite mais je ne l ai pas utilise pour créer les pages

    je devrais le désinstaller peut être ?

     

    je viens de regarder j ai bien retrouver dans la table wp_term_taxonomy le seul taxonomie que j ai cree

    par contre je ne retrouve pas dans la table tous les cinemas mais j arrive a y avoir accès via ce genre d url

    h**p://wordpress.pecheperle.be/index.php/cinema/le-quatrieme/

     

    • Cette réponse a été modifiée le il y a 1 mois par flexi2202.
    #2384974
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    pour rappel ce sont mes premiers essais

    voila j ai trouve un autre tutoriel

    h**ps://wpformation.com/cpt-ui-wordpress/

    donc voici tout ce que j ai fait
    Partie 1 : Paramétrer Advanced Custom Fields
    Dans un premier temps, on va se focaliser sur le plugin Advanced Custom Fields et créer nos différents champs en seulement quatre étapes :
    etape_1_installation_de_advanced_custom_fields”>Étape 1 : Installation de Advanced Custom Fields
    La première des choses à faire sera de l’installer dans votre site WordPress.

    Pour cela, rendez-vous dans l’onglet EXTENSION de votre back-office, cliquez sur AJOUTER et recherchez Advanced Custom Fields. Étant donné qu’il en existe plusieurs, sélectionnez celui de Elliot Condon. Ensuite, cliquez sur INSTALLER MAINTENANT et activez-le.
    Étape 2 : Créer un Groupe de Champs
    Une fois installé, vous retrouverez ACF dans votre menu de gauche. Allez à ACF > GROUPE DE CHAMPS > AJOUTER. Dans le cas pris en exemple, j’ai ajouté un groupe de champs nommé “Bien Immobilier”.
    Étape 3 : Ajouter des champs dans votre groupe
    Advanced Custom Fields propose une quantité considérable de champs différents auxquels vous pourrez faire appel dont les champs TEXTE, MAIL, MOT DE PASSE, IMAGE, LISTE DE CHOIX, GOOGLE MAP etc…

    Vous pourrez alors associer les différents champs au groupe créé à l’étape 2 en cliquant sur le bouton “+ AJOUTER”. Veillez à bien suivre les différentes instructions. Une fois, le champ renseigné, vous pouvez cliquer sur FERMER LE CHAMP puis en ajouter un nouveau si besoin. Vous pouvez créer un nombre illimité de champs. Dans mon exemple, j’en ai créé six (photo, prix, surface, arrondissement, nombre de pièces et description).
    Étape 4 : Assigner le groupe de champs et paramétrer les options
    Maintenant que vos champs sont créés, vous allez choisir les endroits où les faire apparaître. Il s’agit ici de l’affichage du côté de l’administrateur dont dépendra ensuite l’affichage du côté visiteur, comme nous le verrons par la suite (Partie 2)…

    L’onglet ASSIGNER CE GROUPE DE CHAMPS vous permet de donner des conditions simples ou multiples par le biais de menus déroulants. Cela va vous permettre de décider si vous voulez que le groupe de champs apparaisse sur un article, sur une page etc… Vous pouvez rajouter des règles grâce aux boutons ET et OU. Dans le cas de mon exemple, j’ai assigné le groupe de champs à une TEMPLATE DE PAGE spécifique que j’ai nommé IMMOBILIER et dont nous allons voir la procédure à suivre (Partie 2 – Option 1).

    L’onglet OPTION vous permet de paramétrer le numéro d’ordre, la position dans votre post côté backoffice, le style et les champs à masquer.

    Pour finir, n’oubliez pas de cliquer sur PUBLIER comme vous avez l’habitude de le faire pour une page ou un article.
    <h2 id=”monmenu6″>Partie 2 : Afficher les Customs Fields dans votre site.</h2>
    Une fois que la création de vos Customs Fields est terminée, vous serez naturellement tenté de vous rendre dans votre nouvelle page ou nouvel article afin de renseigner tous vos nouveaux champs… Malheureusement vous risqueriez d’être déçu ! En effet, pour l’instant vous les avez seulement créés, il va falloir maintenant les rendre visibles côté visiteur.

    Pour y parvenir, vous aurez besoin de créer un fichier à l’aide d’un éditeur de texte tel que Sublim Text par exemple. Vous pourrez nommer ce fichier comme bon vous semble, pour mon exemple, je l’ai nommé CONTENT-IMMOBILIER.PHP

     

    Ce fichier devra comporter :

    • les balises PHP incluant la fonction GET_FIELDS comme le démontrent les lignes 1 à 11 de la capture d’écran ci-dessus
    • les balises HTML (lignes 13 à 26) qui vous permettront d’ordonner votre contenu. Pour mon exemple, j’ai mis une balise de titre (<h1>), une balise d’image (), une liste (
        ) et quelques paragraphes (<p>)
    • les fonctions PHP de ACF nommées “the_field” qui vous permettront d’insérer chaque champ créé précédemment. Typiquement, vous les insèrerez au sein de vos balises HTML de la manière suivante : <h1><?php the_field(‘nom_du_champ’); ?></h1>. Pour en savoir plus, consultez les ressources d’ACF

    Ensuite, vous n’aurez plus qu’à sauvegarder votre fichier et l’envoyer dans le dossier de votre thème via FTP.

    Note : afin de mieux customiser le rendu visuel final, vous pouvez rajouter des classes à vos balises  HTML que vous utiliserez dans votre fichier style.CSS par la suite.

    À présent que vos Customs Fields et le “fichier de base” sont créés, nous allons voir trois façons différentes de les faire apparaître dans votre site :

    voir capture d écran

    je choisi l option 2

    mais a ce moment je bloque car je ne sais pas quoi mettre dans  L’onglet ASSIGNER CE GROUPE DE CHAMPS

    je joins une capture d écran de ce j ai

    • Cette réponse a été modifiée le il y a 1 mois par flexi2202.
    • Cette réponse a été modifiée le il y a 1 mois par flexi2202.
    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2384993
    Lumiere de Lune
    Participant
    Maître WordPress
    19612 contributions

    Première étape… créer un custom post type. On va l’appeler “Films”

    Deuxième étape, créer un template spécifique, single-films.php (et pas un template de page, qui sert à afficher un post type de type page avec un template particulier. Puisque vous voulez afficher un custom post type, et pas une page (au sens wordpress). Vous l’enregistrer dans votre thème enfant, au même niveau que single.php

    Troisième étape, créer un “post” du custom post type. Donc “nouveau film”. Par rapport au screen que vous avez mis, devez avoir une url du type

    /wp-admin/post-new.php?post_type=films

    Une fois que ce post est publié, vous le visualisez à partir de l’admin. Déjà on voit si ça marche ou pas, et dans une seconde étape, on s’occupera des custom fields.

    #2384997
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    bonjour

    Merci de prendre le temps de me répondre c est vraiment bien gentil

    donc voila j ai suivi les instructions et j ai donc bien une page

    wp-admin/post-new.php?post_type=films

    après publication

    j ai cette url avec le contenu du titre

    pecheperle.be/films/un-premier-post/

    et dans tous les films j ai bien

    un premier post

    donc jusque la tout va bien …

    #2385019
    Lumiere de Lune
    Participant
    Maître WordPress
    19612 contributions

    Donc maintenant tu peux avancer, en créant tes customs fields, en les affectant au type de post films, et en modifiant single-films.php pour les faire apparaitre

    #2385022
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    ok

    donc j ajoute un nouveau groupe dans les customs fields

    et je crée 2 nouveaux champs pour l essai

    mais ensuite je dois écrire quoi dans les règles car il y a pas mal d option

    #2385024
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    afin de bien tout comprendre j ai repris le tuto a 0 avec la tête bien vide  et un nouveau sous domaine , car je tais occupé a tout mélangé

    mais je bloque sur une étape celle de l assignation de la page (c est juste pour comprendre le principe …)

    je dois créer un modèle de page IMMOBILIER

    pour ce faire je dois faire ceci

    1. Rendez-vous dans le dossier de votre thème (via FTP) afin d’y trouver le fichier nommé PAGE.PHP.
    2. Dupliquez-le et renommez-le en PAGE-IMMOBILIER.PHP par exemple.
    3. À l’aide d’un éditeur de texte, modifiez les lignes comprises entre /* et */ situées en haut du fichier juste en dessous de la balise <?php : ici, remplacez le contenu par Template Name: IMMOBILEREn savoir plus sur la HIERARCHIE DES FICHIERS MODELES, les PAGES et les PAGES TEMPLATES
    4. Mais également la ligne get_template_part( ‘template-parts/content’, ‘page’ ); par get_template_part( ‘content-immobilier’ ); . En savoir plus sur la fonction GET_TEMPLATE_PART

     

    mais lorsque je reviens sur la configuration je n ai pas dans les modèles de page IMMOBILIER pour assigner le groupe de champ

    #2385026
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    oupsss j avais pas lu la suite

    1. Terminez par l’enregistrement du fichier et par son envoi dans votre thème au même niveau que le fichier PAGE.PHP
    2. À présent, retournez dans le back-office de votre site, ajoutez une nouvelle page qui devrait vous permettre de régler le MODELE sur IMMOBILIER (voir dans l’onglet ATTRIBUT DE LA PAGE de la sidebar située sur la droite) comme vous pouvez le voir dans la capture d’écran ci-dessous. Les Customs Fields vont alors apparaître sur votre page à l’endroit où vous l’aurez paramétré lors de la Partie 1 – Étape 4 (onglet OPTION > POSITION).

    mais lorsque je crée une nouvelle page je ne vois pas le modèle IMMOBILIER

    je viens de trouver l erreur j avais mis l extension en majuscule

    • Cette réponse a été modifiée le il y a 1 mois par flexi2202.
    #2385029
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    je pense cette fosi avoir compris le principe de base

    c est pour pouvoir réaliser des pages avec des champs prédéfini pour faciliter le remplissage

    c est vraiment génial …

    #2385060
    flexi2202
    Participant
    Padawan WordPress
    98 contributions

    voila super nickel tout cela fonctionne

    mais a présent comment je pourrais faire pour que cela soit l utilisateur qui puisse remplir un formulaire avec ce genre de champ ?

    et est il possible de pouvoir créer une autre table pour y mettre les informations recueillie et les afficher par la suite

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