tag grupo combo attribute php wordpress woocommerce products shop

php - grupo - option title attribute



Agregar un salto al título del producto en las páginas de la tienda para una determinada duración (3)

¿Qué voy a sugerir es el uso de la siguiente

h1{ height: 40px; width: 250px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}

<h1>Sample test test test test</h1>

De esta forma, puede visualizar fácilmente los títulos siempre en una línea. Si eso no funciona y desea mostrar el título completo, puede usar algún complemento de información sobre herramientas que mostrará el título completo al pasar el mouse sobre él

Estoy tratando de obtener un diseño de cuadrícula más consistente en el ciclo de mi tienda.

El título del producto abarca más de 1 o 2 líneas, dependiendo de la longitud de la cadena, por lo tanto, si la longitud de la cadena es inferior a la cantidad que lo fuerza a superponerse a la siguiente línea, quiero agregar un salto ''
''para que no afecte el espaciado general de la página de bucle de tienda /

Este es el código que he intentado en este momento:

<?php echo "test"; $title = get_the_title(); if ( strlen($title) < 29 ) { echo ''<br>''; } ?>

Lo puse en la plantilla de woocommerce content-product.php, pero no está funcionando .

¿Mi código es correcto?

Cualquier ayuda sería muy apreciada.

Gracias


Creo que esta no es la forma correcta de colocar un
etiqueta entre el título del producto. Creo que solo necesita corregir la cantidad de caracteres utilizados en el título de su producto para mostrar en la página del producto como, por ejemplo, si el título del producto es como "Banco de pruebas para terminología médica: un lenguaje vivo, 5 / E", en este caso puede limitar el título como "Banco de pruebas para terminología médica ..." según su diseño

así que de esta manera, su diseño seguirá siendo el mismo y bueno


Esta respuesta se basa tanto en "longitud del título" como en "longitud de las palabras", para evitar romper una palabra.

Esta función se basa parcialmente en esta respuesta y en woocommerce_template_loop_product_title() función nativa de WooCommerce, que se utiliza en la plantilla de contenido WoolCommerce, para mostrar el título en las páginas de la tienda.

Aquí he incluido su longitud límite de cadena , pero también se basa en una detección compleja de "longitud de palabras" para evitar palabras sueltas:

if ( ! function_exists( ''woocommerce_template_loop_product_title'' ) ) { // Show the product title in the product loop. By default this is an <h3> html tag. function woocommerce_template_loop_product_title() { // Define the lenght limit for title (by line) $limit = 29; $title = get_the_title(); $lenght = strlen($title); // 1. The title length is higher than limit if ( $lenght >= $limit ) { $title_arr1 = array(); $title_arr2 = array(); $sum_length_words = -1; // an array of the words of the title $title_word_arr = explode( '' '', $title ); // iterate each word in the title foreach( $title_word_arr as $word ){ // Length of current word (+1 space) $length_word = strlen($word) + 1; // Adding the current word lenght to total words lenght $sum_length_words += $length_word; // Separating title in 2 arrays of words depending on lenght limit if ( $sum_length_words <= $limit ) $title_arr1[] .= $word; else $title_arr2[] .= $word; } // Converting each array in a string $splitted_title = implode(" ", $title_arr1). '' (''. strlen(implode(" ", $title_arr1)) .'')''; $splitted_title .= ''<br>''; // adding <br> between the 2 string $splitted_title .= implode(" ", $title_arr2). '' (''. strlen(implode(" ", $title_arr2)) .'')''; echo ''<h3>'' . $splitted_title . ''</h3>''; // 2. The title length is NOT higher than limit } else { echo ''<h3>'' . $title . ''</h3>''; } } }

Este código va en el archivo function.php de su tema (o tema) hijo activo o también en cualquier archivo de complemento.

Este código está probado y funciona.