|
Bowa
|
 |
« : 24.09.2009, 18:35:28 » |
|
Подскажите пожалуйста, возможно ли через CSS ограничить вывод текста? Имеется ввиду, выводится текст " BLABLA BLABLA BLABLA BLABLA" а надо чтобы он обрезался " BLABLA BLAB..." Если это не в CSS а в PHP то как тогда? <div style="float: right;" > <?php echo $total_products ?> </div> вот то что выводит текст... как сделать что бы выводило максимум 10 символов и после того что выведет просто ...
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #1 : 24.09.2009, 18:37:10 » |
|
средствами CSS можно ограничить размеры блока для текста по ширине и высоте, но не кол-во символов\слов
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #2 : 24.09.2009, 18:38:27 » |
|
а как можно ограничить вывод текста?
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #3 : 24.09.2009, 18:39:04 » |
|
а как можно ограничить вывод текста?
в php использовать mb_substr либо вариации для более гибкого управления выводом <?php $total_products = mb_substr($total_products, '0', '10'); echo $total_products.'...'; ?>
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #4 : 24.09.2009, 18:41:38 » |
|
Если можно? Пожалуйста, пример... из приведенного ниже кода. <div style="float: right;" > <?php echo $total_products ?> </div> так я в ПХП не силен совсем.
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #5 : 24.09.2009, 18:44:23 » |
|
Если можно? Пожалуйста, пример... из приведенного ниже кода.
см. предыдущий пост
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #6 : 24.09.2009, 19:04:00 » |
|
Извините не заметил... попробовал предложенное и... получилось что три точки просто вывелись после слова Product... Наверно что бы было более правильно я поясню что это модуль от VirtueMart, файл minicart.tpl.php Ниже скрин того что имею... Второй скрин того что получилось И третий то что хочется сделать...
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #7 : 24.09.2009, 19:12:24 » |
|
вы скажите толком что сделать надо, приведите пример строки и как она должна выглядеть после операции. Приведенный мной пример обрезает первые 10 символов (включая первый и последний) Справка по функции здесь http://ua.php.net/mb_substr
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #8 : 24.09.2009, 19:18:15 » |
|
На первом скрине показано как выглядит сейчас а на третьем как хотелось бы. Так как нименования многих товаров слишком длинные и портят внешний вид самой корзины. прикрепляю сам файл но знаю точно что строчки с наименованием товара выводит именно эта строка... <?php echo $total_products ?> Сходил сюда http://ua.php.net/mb_substr ... все равно что в космос слетал... честно, не символа там не понял...
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #9 : 24.09.2009, 19:26:00 » |
|
Товарищ дорогой - мне очень весело вклядываться в скриншоты и искать где там что Я прошу - пример строки которую нужно обрезать и по какому принципу. Какая переменная отвечает за вывод того-иного элемента - знать не знаю Сходил сюда http://ua.php.net/mb_substr ... все равно что в космос слетал... честно, не символа там не понял...
Знание английского никогда не мешает и всегда под рукой есть http://translate.google.com
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #10 : 24.09.2009, 19:40:34 » |
|
Я очень извиняюсь но видемо чего-то не до понимаю....  Выводит строку " Sony VAIO VGN-CS31MR/W White (CS31MR/W)" О нужно что бы " Sony VAIO ..." Что бы не выводил все, а только 10 символов <?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
if($empty_cart) { ?> <div style="margin: 0 auto;"> <?php if(!$vmMinicart) { ?> <a href="http://virtuemart.net/" target="_blank"> <img src="<?php echo $mm_action_url ?>components/com_virtuemart/shop_image/ps_image/menu_logo.gif" alt="VirtueMart" width="80" border="0" /></a> <br /> <?php } echo $VM_LANG->_('PHPSHOP_EMPTY_CART')?> </div> <?php } else { // Loop through each row and build the table foreach( $minicart as $cart ) {
foreach( $cart as $attr => $val ) { // Using this we make all the variables available in the template // translated example: $this->set( 'product_name', $product_name ); $this->set( $attr, $val ); } if(!$vmMinicart) { // Build Minicart ?> <div style="float: left;"> <?php echo $cart['quantity'] ?> x <a href="<?php echo $cart['url'] ?>"><?php echo $cart['product_name'] ?></a> </div> <div style="float: right;"> <?php echo $cart['price'] ?> </div> <br style="clear: both;" /> <?php echo $cart['attributes']; } } } if(!$vmMinicart) { ?> <hr style="clear: both;" /> <?php } ?> <div style="float: right;" > <?php echo $total_products ?> </div><br> <div style="float: right;"> <?php echo $total_price ?> </div> <?php if (!$empty_cart && !$vmMinicart) { ?> <br/><br style="clear:both" /><div align="center"> <?php echo $show_cart ?> </div><br/>
<?php } echo $saved_cart; ?>
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #11 : 24.09.2009, 19:45:43 » |
|
Насколько я понял, то $total_products это кол-во продуктов в корзине, а вам нужно работать с элементом массива $cart['product_name'] (который внутри цикла foreach)
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #12 : 24.09.2009, 19:57:18 » |
|
Огромное спасибо! Получилось!
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #13 : 25.09.2009, 00:21:12 » |
|
А возможно ли что бы выводило не по количеству знаков а по количеству строк? скажем 2 строки максимум... как такое можно сделать? P.S. это уже в другом файле но тоже вывод наименования товара <?php echo $product_name ?>
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #14 : 25.09.2009, 01:00:56 » |
|
нет, по строкам нельзя (в переменной то никак не отследить кол-во строк) Можно ограничить по кол-ву символов но выводить только целиком поместившиеся слова (чтобы не обрывалось посередине слова) $string = $cart['product_name']; echo substr(strip_tags($string), 0, strpos(strip_tags($string), ' ', 25)).'...';
|
|
|
|
|
Записан
|
|
|
|
|
Bowa
|
 |
« Ответ #15 : 25.09.2009, 01:14:57 » |
|
+ И снова! Огромнейшее спасибо! Работает!
|
|
|
|
|
Записан
|
|
|
|
dnz
Новичок
Репутация: +0/-0
Offline
Сообщений: 4
|
 |
« Ответ #16 : 29.11.2010, 00:05:15 » |
|
Ребята, а можно сделать так, чтобы в корзине выходило не ""товары, а Товаров: ""?
|
|
|
|
|
Записан
|
|
|
|
Djeak
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 14
|
 |
« Ответ #17 : 19.01.2011, 16:30:56 » |
|
Здравствуйте. Есть шаблон, в котором контент по задумки дизайнера должен выовдится на фоне в виде раскрывающегося блокнота(слева страница, справа страница, а по середине пружинки). Возможно ли сделать так, чтобы часть контента выводилась на одной страницы блокнота, часть на другой.
|
|
|
|
|
Записан
|
|
|
|
|