Toutes mes réponses sur les forums
-
AuteurMessages
-
1 février 2023 à 7 h 43 min en réponse à : Afficher les attributs d’un produit simple dans les pages panier et commande #2442752
Merci pour le lien,
Le code que j’ai mis plus haut fonctionne. Mais j’aimerais afficher seulement la valeur et non le nom de l’attribut.
Une idée ?
17 janvier 2023 à 20 h 16 min en réponse à : Afficher les attributs d’un produit simple dans les pages panier et commande #2440580Finalement, c’est le code ci-dessous qui fonctionne :
Néanmoins, j’aimerais ne pas afficher le nom de l’attribut mais seulement sa valeur. Quelqu’un peut-il m’aider ? Je n’ose pas trop toucher au code :
/**
* WooCommerce: show all product attributes, separated by comma, on cart page
*/
function isa_woo_cart_attribute_values( $cart_item, $cart_item_key ) {$item_data = $cart_item_key[‘data’];
$attributes = $item_data->get_attributes();if ( ! $attributes ) {
return $cart_item;
}$out = $cart_item . ‘<br />’;
$count = count( $attributes );
$i = 0;
foreach ( $attributes as $attribute ) {// skip variations
if ( $attribute->get_variation() ) {
continue;
}$name = $attribute->get_name();
if ( $attribute->is_taxonomy() ) {$product_id = $item_data->get_id();
$terms = wp_get_post_terms( $product_id, $name, ‘all’ );// get the taxonomy
$tax = $terms[0]->taxonomy;// get the tax object
$tax_object = get_taxonomy($tax);// get tax label
if ( isset ( $tax_object->labels->singular_name ) ) {
$tax_label = $tax_object->labels->singular_name;
} elseif ( isset( $tax_object->label ) ) {
$tax_label = $tax_object->label;
// Trim label prefix since WC 3.0
$label_prefix = ‘Product ‘;
if ( 0 === strpos( $tax_label, $label_prefix ) ) {
$tax_label = substr( $tax_label, strlen( $label_prefix ) );
}
}
$out .= $tax_label . ‘: ‘;$tax_terms = array();
foreach ( $terms as $term ) {
$single_term = esc_html( $term->name );
array_push( $tax_terms, $single_term );
}
$out .= implode(‘, ‘, $tax_terms);if ( $count > 1 && ( $i < ($count – 1) ) ) {
$out .= ‘, ‘;
}$i++;
// end for taxonomies} else {
// not a taxonomy
$out .= $name . ‘: ‘;
$out .= esc_html( implode( ‘, ‘, $attribute->get_options() ) );if ( $count > 1 && ( $i < ($count – 1) ) ) {
$out .= ‘, ‘;
}$i++;
}
}
echo $out;
}
add_filter( ‘woocommerce_cart_item_name’, isa_woo_cart_attribute_values, 10, 2 );16 janvier 2023 à 8 h 00 min en réponse à : Afficher les attributs d’un produit simple dans les pages panier et commande #2440256Je viens de trouver ce code à ajouter dans le fichier fonction.php et il fonctionne :
<code class="hljs language-php"><span class="hljs-comment">/** * WooCommerce: show all product attributes, separated by comma, on cart page */</span> <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">isa_woo_cart_attribute_values</span>(<span class="hljs-params"> <span class="hljs-variable">$cart_item</span>, <span class="hljs-variable">$cart_item_key</span> </span>) </span>{ <span class="hljs-variable">$item_data</span> = <span class="hljs-variable">$cart_item_key</span>[<span class="hljs-string">'data'</span>]; <span class="hljs-variable">$attributes</span> = <span class="hljs-variable">$item_data</span>-><span class="hljs-title function_ invoke__">get_attributes</span>(); <span class="hljs-keyword">if</span> ( ! <span class="hljs-variable">$attributes</span> ) { <span class="hljs-keyword">return</span> <span class="hljs-variable">$cart_item</span>; } <span class="hljs-variable">$out</span> = <span class="hljs-variable">$cart_item</span> . <span class="hljs-string">'<br />'</span>; <span class="hljs-variable">$count</span> = <span class="hljs-title function_ invoke__">count</span>( <span class="hljs-variable">$attributes</span> ); <span class="hljs-variable">$i</span> = <span class="hljs-number">0</span>; <span class="hljs-keyword">foreach</span> ( <span class="hljs-variable">$attributes</span> <span class="hljs-keyword">as</span> <span class="hljs-variable">$attribute</span> ) { <span class="hljs-comment">// skip variations</span> <span class="hljs-keyword">if</span> ( <span class="hljs-variable">$attribute</span>-><span class="hljs-title function_ invoke__">get_variation</span>() ) { <span class="hljs-keyword">continue</span>; } <span class="hljs-variable">$name</span> = <span class="hljs-variable">$attribute</span>-><span class="hljs-title function_ invoke__">get_name</span>(); <span class="hljs-keyword">if</span> ( <span class="hljs-variable">$attribute</span>-><span class="hljs-title function_ invoke__">is_taxonomy</span>() ) { <span class="hljs-variable">$product_id</span> = <span class="hljs-variable">$item_data</span>-><span class="hljs-title function_ invoke__">get_id</span>(); <span class="hljs-variable">$terms</span> = <span class="hljs-title function_ invoke__">wp_get_post_terms</span>( <span class="hljs-variable">$product_id</span>, <span class="hljs-variable">$name</span>, <span class="hljs-string">'all'</span> ); <span class="hljs-comment">// get the taxonomy</span> <span class="hljs-variable">$tax</span> = <span class="hljs-variable">$terms</span>[<span class="hljs-number">0</span>]->taxonomy; <span class="hljs-comment">// get the tax object</span> <span class="hljs-variable">$tax_object</span> = <span class="hljs-title function_ invoke__">get_taxonomy</span>(<span class="hljs-variable">$tax</span>); <span class="hljs-comment">// get tax label</span> <span class="hljs-keyword">if</span> ( <span class="hljs-keyword">isset</span> ( <span class="hljs-variable">$tax_object</span>->labels->singular_name ) ) { <span class="hljs-variable">$tax_label</span> = <span class="hljs-variable">$tax_object</span>->labels->singular_name; } <span class="hljs-keyword">elseif</span> ( <span class="hljs-keyword">isset</span>( <span class="hljs-variable">$tax_object</span>->label ) ) { <span class="hljs-variable">$tax_label</span> = <span class="hljs-variable">$tax_object</span>->label; <span class="hljs-comment">// Trim label prefix since WC 3.0</span> <span class="hljs-variable">$label_prefix</span> = <span class="hljs-string">'Product '</span>; <span class="hljs-keyword">if</span> ( <span class="hljs-number">0</span> === <span class="hljs-title function_ invoke__">strpos</span>( <span class="hljs-variable">$tax_label</span>, <span class="hljs-variable">$label_prefix</span> ) ) { <span class="hljs-variable">$tax_label</span> = <span class="hljs-title function_ invoke__">substr</span>( <span class="hljs-variable">$tax_label</span>, <span class="hljs-title function_ invoke__">strlen</span>( <span class="hljs-variable">$label_prefix</span> ) ); } } <span class="hljs-variable">$out</span> .= <span class="hljs-variable">$tax_label</span> . <span class="hljs-string">': '</span>; <span class="hljs-variable">$tax_terms</span> = <span class="hljs-keyword">array</span>(); <span class="hljs-keyword">foreach</span> ( <span class="hljs-variable">$terms</span> <span class="hljs-keyword">as</span> <span class="hljs-variable">$term</span> ) { <span class="hljs-variable">$single_term</span> = <span class="hljs-title function_ invoke__">esc_html</span>( <span class="hljs-variable">$term</span>->name ); <span class="hljs-title function_ invoke__">array_push</span>( <span class="hljs-variable">$tax_terms</span>, <span class="hljs-variable">$single_term</span> ); } <span class="hljs-variable">$out</span> .= <span class="hljs-title function_ invoke__">implode</span>(<span class="hljs-string">', '</span>, <span class="hljs-variable">$tax_terms</span>); <span class="hljs-keyword">if</span> ( <span class="hljs-variable">$count</span> > <span class="hljs-number">1</span> && ( <span class="hljs-variable">$i</span> < (<span class="hljs-variable">$count</span> - <span class="hljs-number">1</span>) ) ) { <span class="hljs-variable">$out</span> .= <span class="hljs-string">', '</span>; } <span class="hljs-variable">$i</span>++; <span class="hljs-comment">// end for taxonomies</span> } <span class="hljs-keyword">else</span> { <span class="hljs-comment">// not a taxonomy</span> <span class="hljs-variable">$out</span> .= <span class="hljs-variable">$name</span> . <span class="hljs-string">': '</span>; <span class="hljs-variable">$out</span> .= <span class="hljs-title function_ invoke__">esc_html</span>( <span class="hljs-title function_ invoke__">implode</span>( <span class="hljs-string">', '</span>, <span class="hljs-variable">$attribute</span>-><span class="hljs-title function_ invoke__">get_options</span>() ) ); <span class="hljs-keyword">if</span> ( <span class="hljs-variable">$count</span> > <span class="hljs-number">1</span> && ( <span class="hljs-variable">$i</span> < (<span class="hljs-variable">$count</span> - <span class="hljs-number">1</span>) ) ) { <span class="hljs-variable">$out</span> .= <span class="hljs-string">', '</span>; } <span class="hljs-variable">$i</span>++; } } <span class="hljs-keyword">echo</span> <span class="hljs-variable">$out</span>; } <span class="hljs-title function_ invoke__">add_filter</span>( <span class="hljs-string">'woocommerce_cart_item_name'</span>, isa_woo_cart_attribute_values, <span class="hljs-number">10</span>, <span class="hljs-number">2</span> );
ovh n’est qu’une piste … la communauté de wpfr est grande et a peut-être déjà rencontré ce type de problème.
J’ai essayé en désactivant tous les plugins autres que Elementor (car c’est là qu’est mon « style ») mais cela ne fonctionne pas mieux. Même si je désactive le « force SSL » …
En pièce jointe : on voit ce que cela donne et ce que cela devrait donner avec le preview.
En pièce jointe également, le site que je monte en parallèle et qui semble rencontré des problèmes similaires de css : avec https, le css du thème n’est pas pris en compte, avec http , oui ! le thème est le même « Hello Elementor »
J’utilise Elementor et Hello Elementor sur la plupart des sites que je réalise et je n’ai jamais rencontré ce problème.
Fichiers joints :
Vous devez être connecté pour voir les fichiers joints.7 mai 2020 à 16 h 26 min en réponse à : [Résolu] Choix de la quantité directement sur la page « archive » de la boutique #2342347Bonjour
Merci pour le plugin, il répond tout à fait à mes besoins
Super
5 mai 2020 à 17 h 26 min en réponse à : [Résolu] Questionnaire et points attribués dans des catégories distinctes #2342051Bonjour
J’ai trouvé la solution avec le plugin Gravity Form
Au cas où 😉
5 mai 2020 à 16 h 59 min en réponse à : [Résolu] Exporter le nombre d’articles commandés pour une période donnée #23420423 mai 2020 à 13 h 51 min en réponse à : [Résolu] Limiter le nombre de caractère dans le champ « note » client #234169116 août 2019 à 8 h 26 min en réponse à : [Résolu] Tableau de bord inaccessible après update version MySQL #2273807Bonjour
Malheureusement non. C’est soit 5.5 , soit 5.7 chez IONOS
6 juin 2019 à 15 h 43 min en réponse à : [Résolu] Personnaliser CSS additionnel : n’arrive ni à modifier ni à effacer … #2264494Bonjour,
Merci à tous ceux qui m’ont suggéré des actions pour résoudre mon problème.
Il est enfin résolu : je me suis décidé à changer de thème et à faire du ménage dans les plugins.
Maintenant, tout fonctionne
Merci encore
28 mars 2019 à 14 h 20 min en réponse à : [Résolu] Personnaliser CSS additionnel : n’arrive ni à modifier ni à effacer … #2254054Bonjour,
Cela fait des mois que le problème persiste.
Je suis passer en version PHP 7.2.11
J’ai mis à jour l’ensemble des plugins et le thème
Toujours le même problème …
Je ne peux plus changer le titre du site !
… 🙁
16 janvier 2019 à 11 h 22 min en réponse à : [Résolu] Upload media impossible (cause accessibilité serveur?) #2241946Bonjour,
Nous avons ENFIN migré le site sur un hébergeur à jour concernant les versions PHP et MySQL et tout est rentré dans l’ordre. Of course
Merci pour vos conseils, avis, astuces qui m’ont mis sur la bonne piste.
26 octobre 2018 à 10 h 23 min en réponse à : [Résolu] Personnaliser CSS additionnel : n’arrive ni à modifier ni à effacer … #2218727Bonjour,
Voici mes derniers essais pour corriger le problème :
J’ai augmenté la mémoire allouée à php : memory_limite php mais cela n’a rien changé (128 Mo)
Par contre la version mySQL est 5.56 alors que celle recommandée par wordpress 4.9 est 5.6 : cela peut-il expliquer le problème ? Je ne le pense pas car wordpress indique fonctionner sur 5.5 … 1and1 « devrait peut-être » (j’aime les conditionnels …) passer à la version 5.6 d’ici la fin de l’année selon le support …
28 septembre 2018 à 14 h 30 min en réponse à : [Résolu] Personnaliser CSS additionnel : n’arrive ni à modifier ni à effacer … #2211097@Noaneo : rien vu dans la base de données. Enfin un « css_custom » dans wp_option mais rien de plus. Je ne maîtrise pas vraiment les bases de données…
@PhiLyon : j’ai désactivé chaque plugin et après chaque désactivation, refait un test dans « css personnaliser » : mais rien n’y fait.J’ai donc testé en changeant de thème : mais là, tout bug, donc j’avoue être vite revenue sur le thème SCALIA. Cependant, si j’active le thème principal et non plus le child-theme, le « css personnalisé » est enfin vide …
Néanmoins, le problème n’est pas réglé car en fait, même avec le theme principal, impossible de modifier le css ni le titre du site internet : l’enregistrement n’est pas pris en compte
-
Cette réponse a été modifiée le il y a 5 années par
Debrailly.
-
Cette réponse a été modifiée le il y a 5 années par
-
AuteurMessages