10 sujets de 1 à 10 (sur un total de 10)
  • Auteur
    Messages
  • #45851
    Ninjarock
    Participant
    Points: 23 pts
    Membre 2 étoiles

    Bonjour à tous !

     

    Premier post sur le forum ! Je suis en stage actuellement dans une boite parisienne qui me demande de refaire leur site woo commerce, j’ai une formation php classique de quelques mois :).

    J’ai cherché un page builder pas trop mal pour gérer le responsif et tout, j’ai choisi oxygenate qui se révèle extrêmement puissant.

    Le plugin tue le thème donc tout doit se faire dans oxygen.

    Sur la page boutique, je peux atteindre le titre et le prix du produit 1 comme ça

    <?php
    $product = wc_get_product(idproduit1);
    echo $product->get_title()

    Je pense pouvoir faire le lien vers la page produit sans trop de problèmes.

    On arrive donc ensuite sur la page produit. Qui doit être unique et ne peut suivre le canvas woo commerce pour cause de sliders uniques, css uniques pour chaque produit.

    Et c’est là que je coince.

    Avec le même bout de code, je peux bien entendu afficher le prix le titre la description, mais à la limite je peux les écrire en dur puisque ce ne serait pas dynamique.

    Le problème se corse pour l’affichage du choix de la taille (l’attribut) et de l’ajout au panier…

    Quand je fais un var_dump de $product, attributes renvoie un array vide :

    ["attributes"]=> array(0) { }
    ["default_attributes"]=> array(0)

    alors que j’ai bien mis la taille.

    Qu’est ce qui ne se fait pas ? Dans oxygen, si j’utilise le component product de base, la taille s’affiche en texte dans le tab d’info complémentaires. Plusieurs posts à ce sujet sur google mais ils remontent à des années… Je ne sais quoi en penser, quelqu’un aurait-il la réponse ?

    Je cherche tout simplement à faire apparaitre mon select et mes options, et bien sûr un add to cart que je ne sais pas encore afficher non plus sur mes pages produits. Ca ne me parait pas compliqué mais là, je sèche complètement…

     

    Merci d’avance à ceux qui me répondront !

     

    depanagewp
    #45858
    Mathieu
    Participant
    Points: 1,315 pts
    Membre 2 étoiles

    Dans quel fichier êtes vous en train de travailler ?

    Développeur PHP et WordPress En Alsace dans l'annuaire des prestataires WordPress et WooCommerce
    Création d'extensions pour WordPress et WooCommerce - Personnalisation d'extensions existantes
    🔶 Si vous appréciez mon aide, vous pouvez me faire un don de n'importe quel montant en cliquant ici.

    depanagewp
    #45860
    Ninjarock
    Participant
    Points: 23 pts
    Membre 2 étoiles

    Bonjour 🙂

     

    Je travaille actuellement dans le builder d’oxygen qui permet de créer des blocs de code.

    Je n’ai toujours pas touché aux fichiers .php de WooCommerce.

    depanagewp
    #45915
    Mathieu
    Participant
    Points: 1,315 pts
    Membre 2 étoiles

    Ces fichiers qui construisent la page d’affichage d’un produit on déjà accès aux différents données du produits. Donc si vous voulez personnaliser l’affichage de ces produits, il vaut mieux passer par ces fichiers.

    D’après ce que je viens de chercher sur oxygen, vous êtes en train de préparer le remplaçant de single-product.php et donc vous devez tout reconstruire à partir de ce point. Est ce que vous pouvez utiliser les actions, filtres et les classes de WooCommerce dans oxygen ?

    Développeur PHP et WordPress En Alsace dans l'annuaire des prestataires WordPress et WooCommerce
    Création d'extensions pour WordPress et WooCommerce - Personnalisation d'extensions existantes
    🔶 Si vous appréciez mon aide, vous pouvez me faire un don de n'importe quel montant en cliquant ici.

    depanagewp
    #45919
    Ninjarock
    Participant
    Points: 23 pts
    Membre 2 étoiles

    Je n’en ai aucune idée.

    Je viens de me renseigner sur ce que seraient les hooks dans WordPress. Si je comprends bien, ce sont des actions que l’on indique dans le functions.php du theme enfant pour transformer les actions ou le rendu.

    Puisque je n’ai pas de theme à proprement parler, il faudrait que je modifie directement les fichiers woocommerce concernés ou que je puisse faire appel aux classes depuis la page elle-même.

    Je cherche  une première action anodine de test à réaliser pour voir quels fichiers peuvent être touchés : auriez-vous une idée ? un snippet ?

     

    Merci d’avance Mathieu 🙂

    depanagewp
    #45928
    Mathieu
    Participant
    Points: 1,315 pts
    Membre 2 étoiles

    comme code à tester, il y a par exemple “$attributes = $product->get_variation_attributes();” pour récupérer les variations d’un produit.

    Développeur PHP et WordPress En Alsace dans l'annuaire des prestataires WordPress et WooCommerce
    Création d'extensions pour WordPress et WooCommerce - Personnalisation d'extensions existantes
    🔶 Si vous appréciez mon aide, vous pouvez me faire un don de n'importe quel montant en cliquant ici.

    depanagewp
    1 utilisateur a remercié l'auteur de ce message.
    #46023
    Ninjarock
    Participant
    Points: 23 pts
    Membre 2 étoiles

    Merci Mathieu, mais il m’a semblé qu’Oxygen ne serait pas assez permissif, j’ai donc basculé vers un thème plus classique j’ai pris the7.

    Plusieurs questions à tous :

    je crée un attribut “taille” pour mon produit, comment se fait-il qu’il apparaisse dans l’onglet des infos additionnelles et pas en selection ? Etrange, sur la demo du site le select est pourtant bien placé… et utile 🙂 !  La réponse était “variable product”…

    – à l’affichage de mes produits, si je veux customiser l’affichage, ajouter mes fonts, il me faut bien ajouter le css dans la feuille du thème enfant, dites moi si je me trompe.

    Comment faire si je veux par exemple mettre un slider à la place de l’image ? en utilisant un shortcode je suppose, mais alors où le placer ?

    Comment faire si je veux importer du code html à la place ?

    Comment faire si je veux afficher une variable de la base de données ? Peut-on imaginer entrer des <?= $products[14][‘price’] par exemple sur les pages ?

     

    Merci d’avance à tous ceux qui m’éclaireront !

    depanagewp
    #46049
    Mathieu
    Participant
    Points: 1,315 pts
    Membre 2 étoiles

    oui c’est ça

    c’est aussi dans le thème enfant que vous allez créer un répertoire “woocommerce” pour y placer vos modifications à partir des fichiers qui se trouvent dans le répertoire de l’extension : “wp-content/plugins/woocommerce/templates/”
    par exemple, pour modifier l’image, c’est dans le fichier “single-product/product-image.php”

    Développeur PHP et WordPress En Alsace dans l'annuaire des prestataires WordPress et WooCommerce
    Création d'extensions pour WordPress et WooCommerce - Personnalisation d'extensions existantes
    🔶 Si vous appréciez mon aide, vous pouvez me faire un don de n'importe quel montant en cliquant ici.

    depanagewp
    #46051
    Ninjarock
    Participant
    Points: 23 pts
    Membre 2 étoiles

    Merci Mathieu pour ces conseils. J’avoue que cette solution a l’air meilleure, bien que n’offrant pas de flexibilité pour les produits.

    Mon dilemme actuel : placer un slider révolution différente à la place de la gallerie image de chaque produit.

    Je comptais charger le slider dans la description puis le déplacer à l’aide de jQuery. Qu’en pensez-vous ? Est-ce optimisé ?

    Comme toujours, merci d’avance 🙂

     

    depanagewp
    #46113
    Mathieu
    Participant
    Points: 1,315 pts
    Membre 2 étoiles

    il vaut mieux modifier le fichier “single-product/product-image.php” pour cela.

    dans le code PHP les shortcodes peuvent être lancés comme cela : <?php echo do_shortcode("

    There is nothing to show here!
    Slider with alias produit_258 not found.




    ");?>

    pour faire le lien avec ce code, vous pouvez appelez le slider “produit_258” pour le produit avec l’identifiant 258
    et pour générer le shortcode, le code sera donc
    <?php echo do_shortcode("

    There is nothing to show here!
    Slider with alias produit_{$post->ID} not found.




    ");?>

    Développeur PHP et WordPress En Alsace dans l'annuaire des prestataires WordPress et WooCommerce
    Création d'extensions pour WordPress et WooCommerce - Personnalisation d'extensions existantes
    🔶 Si vous appréciez mon aide, vous pouvez me faire un don de n'importe quel montant en cliquant ici.

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