hola necesito ayuda con lo siguiente:
cuando estoy viendo un producto (Single Product) dentro de una categoria, por ejemplo Sectional Sofas y uso el boton NEXT para ver el siguiente producto dentro de la misma categoria Sectional Sofas, me aparece un Sofa, que es otra categoria, de alguna manera se relacionan pero yo quiero que solo siga la secuencia dentro de una misma categoria.
pense que era una cuenstion de tags, entonces a todos los Sectional Sofa les puse ese Tag y los Sofa les puse solo sofa, pero no igual mezcla las categorias
por ejemplo los Accent Chairs levanta los 5 primeros en secuencia albabetica y luego lo mezcla con una End Table
probe varias opciones, numere los productos (desde advance/menu order) pensando que quizas los iba a levantar en ese orden, no funciono.
si ordeno desde el listado de productos y pongo Sorting, los muestra correctamente ordenados alfabeticamente pero no los muestra en igual secuencia cuando voy por via del boton NEXT.
espero ansiosa vuestra ayuda ya que hace varios dias que intento solucionarlo
gracias
URL del sitio: Contenido solo visible a usuarios registrados
Hola Georigina,
Instala el plugin de code snippets -> https://es.wordpress.org/plugins/code-snippets/
Posteriormente ingresa a Snippets -> Add New, asígnale un nombre al snippet que te permita identificarlo fácilmente, por ejemplo: "Snippet para mostrar productos de misma categoría en Related Products Woocommerce"
Copia y pega el siguiente fragmento:
add_filter( 'woocommerce_product_related_posts', 'my_custom_related_products' ); function custom_related_products($product){ global $woocommerce; // Related products are found from category and tag $tags_array = array(0); $cats_array = array(0); // Get tags $terms = wp_get_post_terms($product->id, 'product_tag'); foreach ( $terms as $term ) $tags_array[] = $term->term_id; // Get categories $terms = wp_get_post_terms($product->id, 'product_cat'); foreach ( $terms as $key => $term ){ $check_for_children = get_categories(array('parent' => $term->term_id, 'taxonomy' => 'product_cat')); if(empty($check_for_children)){ $cats_array[] = $term->term_id; } } // Don't bother if none are set if ( sizeof($cats_array)==1 && sizeof($tags_array)==1 ) return array(); // Meta query $meta_query = array(); $meta_query[] = $woocommerce->query->visibility_meta_query(); $meta_query[] = $woocommerce->query->stock_status_meta_query(); $meta_query = array_filter( $meta_query ); // Get the posts $related_posts = get_posts( array( 'orderby' => 'rand', 'posts_per_page' => $limit, 'post_type' => 'product', 'fields' => 'ids', 'meta_query' => $meta_query, 'tax_query' => array( 'relation' => 'OR', array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => $cats_array ), array( 'taxonomy' => 'product_tag', 'field' => 'id', 'terms' => $tags_array ) ) ) ); $related_posts = array_diff( $related_posts, array( $product->id ), $product->get_upsells() ); return $related_posts; }
Guarda y activa el Snippet, prueba ingresando a cualquier producto, debería mostrarte los productos de misma categoría y aquellos relacionados por tag. Si no ves cambios elimina el caché de Autoptimize y prueba de nuevo. Espero que esto sirva para lo que buscas, de no ser así por favor indícalo para que podamos seguir ayudándote.
Saludos 🙂
antes que nada muchas gracias por tu tiempo
no funciono, baje el plugin, lo active, pegue el codigo, salve y active
limpie cache y no funciona
revise tags, tampoco
intente desde una pagina incognito por si era tema de cache y tampoco B)
espero otra alternativa
gracias!!
Hola
Prueba hacerlo con este otro código
add_action( 'woocommerce_before_single_product', 'bbloomer_prev_next_product' ); // and if you also want them at the bottom... add_action( 'woocommerce_after_single_product', 'bbloomer_prev_next_product' ); function bbloomer_prev_next_product(){ echo ''; }
Para probar puedes agregarlo al final de tu archivo functions.php de tu theme y verificar ya que es posible que el plugin de snippets igualmente no este funcionando.
Ref:
Contenido solo visible a usuarios registrados
Saludos.
Hola,
Cuando copie el codigo que me pasaste, me tira el siguiente error: "Unable to communicate back with site to check for fatal errors, so the PHP change was reverted. You will need to upload your PHP file change by some other means, such as by using SFTP."
A su vez, tampoco me funciona el cambio.
No se como seguir, si es un tema del plugin de snippets, como hago?
Saludos
Creo que me los esta ordenando por numero de ID de WooCommerce. Hay alguna forma de ordenar/editar el numero de ID?
Hola
Pega el código al final de tu archivo functions.php de tu theme, no use el plugin de snippets ya que al parecer esta restringiendo el código que puedes poner.
Para agregar el código puedes usar el Administrador de Archivos de tu Cpanel de tu cuenta de hosting, el archivo functions.php esta dentro de la carpeta de tu theme: wp-content/themes/TU_THEME/functions.php
Revisa: https://www.webempresa.com/blog/administrador-de-archivos-de-cpanel-como-buscar-archivos.html
Saludos.
Hola,
Agregue el codigo al final del archivo "functions.php" y error sigue persistiendo. Entre via FTP como mencionaste anteriormente y tampoco. El plugin esta desactivado!
Hola
Es posible que el theme que usas sobreescriba el comportamiento de estos enlaces, prueba cambiar temporalmente de theme, usa alguno de los themes que viene por defecto, por ejemplo Twenty Nineteen y vefica.
Saludos.
No me sirve cambiar de tema! Necesitaría quedarme con el theme que estoy usando, mas ya que ya tengo hecho el 85% de la pagina.
No hay otra manera?
Hola
Entiendo que tu theme es este:
https://themeforest.net/item/thefox-responsive-multipurpose-wordpress-theme/11099136
Esa funcionalidad de navegación usualmente se implementa a nivel de theme, si tu theme es de pago podrías consultar directamente a los desarrolladores, otra opción es buscar el archivo que esta creando el single product y buscar la línea de código de la navegación y hacer cambios.
También algo que podrías probar es ordenar los productos, prueba por ejemplo:
https://wordpress.org/plugins/post-types-order/
Saludos.
Hola,
Es correcto, estoy usando ese theme.
Con respecto a buscar la línea de código de la navegación y hacer cambios, acabo de terminar de buscar en todos los archivos de woocommerce para poder editarlo y no encontré nada!
A su vez, agregue el codigo que me brindaron ustedes al final del archivo function.php desde FTP y tampoco.
Contenido solo visible a usuarios registrados
El plugin que me mencionas (wordpress.org/plugins/post-types-order/) funciona para que se dirija como yo quiero según categorías, pero rompe el orden alfabético y no ordena como estaba originalmente. A pesar de que hay una opción de ordenar alfabéticamente dentro de la sub categoría, no hace dicha función
Hola
Tu theme tiene una carpeta llamada woocommerce?, podrías probar renombrar la carpeta temporalmente y verificar si aún así te sigue saliendo los ítems de navegación, esto para ver si el archivo que crea estos elementos estan en algún archivo de esa carpeta. Puedes enviarnos una captura de pantalla de los archivos que tienes dentro del theme.
Has consultado con los desarrolladores del theme?
Saludos.
Hola, sigo con el mismo error. No lo puedo actualizar.
Alguna otra posibilidad?
Hola
Lo primero sería que para realizar este tipo de pruebas debes desactivar los plugins de optimización que tengas, ya que por más cambios que hagas no se mostrarán. Desactiva temporalmente todos los plugins de optimización.
Luego, tienes que enviarnos algunas capturas, estas usando un child-theme por ejemplo?, tu theme tiene una carpeta WooCommerce?, si tienes una carpeta woocommerce sería renombrarla temporalmente, si tienes un child-theme (Activo no sólo que este creado) tendrías que colocar el código en su archivo functions.php
Saludos.