Coupure du texte

More
14 years 4 months ago #1375 by kim
Coupure du texte was created by kim
Manu,
Est-ce qu'il serait possible de couper la chaine de caractère sans le couper au milieu du mot?
Ca éviterai d'avoir des textes d'intro bizarre.
Et aussi si la limite de la chaine est supérieur au texte entier, ne pas ajouter les 3 petits points...
Je ne trouve pas le fichiers où y'a ce code php (striptagsandcut), sinon, j'aurai essayé de corriger çà avec ma tronçonneuse.

Please Log in or Create an account to join the conversation.

More
14 years 4 months ago #1376 by vistamedia
Replied by vistamedia on topic Coupure du texte
C'est vrai, j'ai eu un peu la flemme sur ce coup là ...
Je vais ajouter ça à ma liste des taches. Mais là je vais me coucher ;)
Bonne nuit,
Manu.

PS: c'est dans components/com_flexicontent/classes/flexicontent.helper.php
Le problème c'est toujours la manipulation des chaines en UTF8 (pour eux par exemple www.flexicontent.org/downloads/translati...nese-simplified.html ).

FLEXIcontent lead developer.
www.vistamedia.fr web agency and custom development.
www.joomla.fr co-administrator.
Please no PM for support request, use the forum for that!!!

Please Log in or Create an account to join the conversation.

More
14 years 1 week ago #6033 by vlester
Replied by vlester on topic Coupure du texte
Au cas où tu n'aurais pas trouvé la solution, je viens de tester ce qui suit et ça fonctionne.
Dans le fichier helper.php j'ai remplacé ça
Code:
function striptagsandcut( $text, $chars=null ) { // first strip html tags $cleantext = strip_tags($text); // clean additionnal plugin tags $patterns = array(); $patterns[] = '#\[(.*?)\]#'; $patterns[] = '#{(.*?)}#'; $patterns[] = '#&(.*?);#'; foreach ($patterns as $pattern) { $cleantext = preg_replace( $pattern, '', $cleantext ); } $length = JString::strlen(htmlspecialchars( $cleantext )); // cut the text if required if ($chars) { if ($length > $chars) { $cleantext = JString::substr( htmlspecialchars($cleantext, ENT_QUOTES, 'UTF-8'), 0, $chars ).'...'; } } return $cleantext; }
par ça :
Code:
function striptagsandcutlead( $text, $chars=null ) { // first strip html tags $cleantext = strip_tags($text); // clean additionnal plugin tags $patterns = array(); $patterns[] = '#\[(.*?)\]#'; $patterns[] = '#{(.*?)}#'; $patterns[] = '#&(.*?);#'; foreach ($patterns as $pattern) { $cleantext = preg_replace( $pattern, '', $cleantext ); } $max=600; if (strlen($cleantext) > $max) { $cleantext = substr($cleantext, 0, $max); $espace = strrpos($cleantext, " "); $cleantext = substr($cleantext, 0, $espace)."..."; } return $cleantext; } function striptagsandcut( $text, $chars=null ) { // first strip html tags $cleantext = strip_tags($text); // clean additionnal plugin tags $patterns = array(); $patterns[] = '#\[(.*?)\]#'; $patterns[] = '#{(.*?)}#'; $patterns[] = '#&(.*?);#'; foreach ($patterns as $pattern) { $cleantext = preg_replace( $pattern, '', $cleantext ); } $max=250; if (strlen($cleantext) > $max) { $cleantext = substr($cleantext, 0, $max); $espace = strrpos($cleantext, " "); $cleantext = substr($cleantext, 0, $espace)."..."; } return $cleantext; }

et pour appeler les fonctions, en ce qui me concerne, c'était dans le fichier category_items.php, j'ai remplacé ça :
Code:
echo flexicontent_html::striptagsandcut( $items[$i]->introtext, $this->params->get('lead_cut_text', 400) );
par ça :
Code:
echo flexicontent_html::striptagsandcutlead( $items[$i]->introtext);


Je ne suis pas parvenu à coder de façon à pouvoir ajuster le nombre de caractères depuis l'admin de flexicontent, j'ai donc du créer une fonction pour les articles à la une (lead) et une autre fonction pour les articles normaux. Il y a sans doute plus efficace...

Please Log in or Create an account to join the conversation.

More
14 years 1 week ago #6038 by micker
Replied by micker on topic Coupure du texte
coool merci pour ta participation

FLEXIcontent is Free but involves a very big effort on our part.
Like the our support? (for a bug-free FC, despite being huge extension) Like the features? Like the ongoing development and future commitment to FLEXIcontent?
-- Add your voice to the FLEXIcontent JED listing reviews. Thanks![/size]

Please Log in or Create an account to join the conversation.

Moderators: vistamediajoomlacornerggppdk
Time to create page: 0.295 seconds
Save
Cookies user preferences
We use cookies to ensure you to get the best experience on our website. If you decline the use of cookies, this website may not function as expected.
Accept all
Decline all
Essential
These cookies are needed to make the website work correctly. You can not disable them.
Display
Accept
Analytics
Tools used to analyze the data to measure the effectiveness of a website and to understand how it works.
Google Analytics
Accept
Decline