Textpattern CMS support forum
You are not logged in. Register | Login | Help
- Topics: Active | Unanswered
Re: [fr-fr] Trucs, Tips et...Astuces
@Pat64,
gros mercis pour ton assistance, j’ai réussi à me débrouiller. Tu peux voir le résultat ici
En fait j’ai adapté ta technique à mes besoins évidemment. J’utilise une ruse qui m’affranchit de recharger la page en réécrivant l’url de l’image grand format grâce à javascript.
En gros je fais en sorte que l’url qui est sur les vignettes soit réécrite via js dans le src de mon image grand format. Ca fonctionne pas mal mais ne me satisfait pas encore pleinement car je souhaiterais également afficher la légende sous l’image.
Je vais donc refactoriser le tout et vous tiens au courant bien sûr. Aussi n’hésitez pas si vous avez des suggestions / observations.
Olivier
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Petites adaptations concernant le magnifique plugin cbs_category_list de Christophe Beyls ( téléchargeable ici ) :
Afin d’obtenir un lien sur l’info bulle de chaque catégorie avec indication du nombre d’occurences correspondantes suivi d’un texte de circonstance respectant le singulier/pluriel :
1°. ajout de deux attributs ( linktitle et variable )dans la liste du tableau :
extract(lAtts(array( 'label' => '', 'labeltag' => '', 'break' => 'br', 'wraptag' => '', 'parent' => '', 'posted' => '', 'section' => $s, 'sticky' => '', 'showcount'=> '', 'class' => __FUNCTION__, 'activeclass'=> '', 'linktitle' => '', 'variable' => '' ),$atts));
2°. modification de l’avant dernière ligne du plugin :
$out[] = tag(str_replace('& ','& ', $title).($count ? ' ('.$count.''.($count > 1 ? ')' : ')'):''),'a',' href="'.pagelinkurl(array('c'=>$name, 's'=>$section)) .(($activeclass && ($s = $section) && ($c = $name)) ? '" title="'.$linktitle.' '.($count ? ($count>1 ? $count.' '.$variable.'s' : $count.' '.$variable) : '').'" class="'.$activeclass.'"' : '"')); }
Fin.
Vous pouvez utiliser le tag comme ceci :
<txp:cbs_category_list class="" activeclass="illb" showcount="true" wraptag="ul" break="li" linktitle="Accès à cette galerie de" variable="photo" />
Nous obtenons alors (selon cet exemple) :
Cas 1 : “Accès à cette galerie de 1 photo” dans l’info bulle s’il n’y a qu’une seule image associée à l’article ;
Cas 2 : “Accès à cette galerie de 15 photos” dans l’info bulle s’il y a plusieures images dans cette catégorie.
Un exemple du résultat visible : ICI (bloc de droite, survolez les liens).
That’s all Folks!
P.S. Grand merci à Christophe Beyls pour son aide sur l’ajout du dénombrement et son exemple d’insertion du décompte entre les balises <a>.
Last edited by Pat64 (2007-06-07 21:15:04)
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Un petit truc tellement évident et très simple qui peut terriblement faciliter la vie :)
Vous avez créé une page statique xhtml pour le délai d’attente nécessaire au référencement d’un site.
Puis vient le temps de porter votre travail sur votre serveur avec une installation toute fraîche de TXP :
uploadez tous les fichiers de TXP SANS son fichier index.php.
Vous avez toujours votre page index.html fonctionnelle et vous pouvez tranquillement configurer le back-end comme bon vous semble :- plugins,
- templates (via le plugin import templates)
- sections…
Dès que tout est prêt, il ne vous reste plus qu’à uploader le fichier index.php manquant : le site fonctionne alors à plein régime… et bien mieux que wordpress, par exemple ;)
Last edited by Pat64 (2007-06-24 11:43:41)
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Une présentation d’un back-end dont les améliorations sont proposées en “Feature request” ici
Note : la visualisation du post nécessite de vous loger
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Salut.
Voici une solution a un problème qui m’a pris quelques heures de recherche :)
Le problème : sur un site comportant une page d’accès à un ensemble de pages sécurisée (par mot de passe) je cherchais un moyen de créer un menu excluant ces pages protégées. Ne connaissant pas à l’avance le nom des dites pages sécurisées (elles sont créées par l’utilisateur) txp:section_list ne m’était pas d’un grand secours.
La solution partielle : créer un gabarit générique, et un seul, destiné à la création des pages sécurisées. Utiliser le nom de la page (du gabarit) comme test sélectif pour exclure toutes les pages créées par l’utilisateur.
La solution en pratique :
Une page nommée “acces-clients” servira de conteneur pour afficher la liste des pages sécurisées tandis que le gabarit “protege” est destiné à l’affichage d’un formulaire de saisie de mot de passe pour l’affichage de ce qu’elle contient (articles) :
<ul id="nav_menu"><txp:if_section name="access-clients"><txp:php> // on affiche les sections y compris celles associées au gabarit "protege" // $sections = safe_rows('name, page, title', 'txp_section', 'page = "protege"'); foreach($sections as $id => $valeur) { echo "<li><a href=\"".hu."".$sections[$id][name]."\">".$sections[$id][title]."</a></li>\r"; } </txp:php><txp:else /> <txp:php> // hors du contexte de la page "acces-clients" les liens vers les sections sont affichés hormis "protege" // $sections = safe_rows('name, page, title', 'txp_section', 'page != "protege"'); foreach($sections as $id => $valeur) { echo "<li><a href=\"".hu."".$sections[$id][name]."\">".$sections[$id][title]."</a></li>\r"; } </txp:php></txp:if_section></ul>
Vollà. Ce code lit par enregistrement (rows) la table txp_section en sélectionnant les colonnes “name” (titre de section) et “page” (gabarit de section). Selon le contexte, on exclue les pages associées au gabarit “protege” ( ‘page != “protege”’ ) ou on n’affiche que ces dernières ( ‘page = “protege”’ ). Les divers éléments nécessaires à la construction des liens (urls, titres) sont obtenus grâce aux indices du tableau préalablement créé.
Aucun tag natif ne permet d’obtenir le résultat escompté, ni aucun plugin (à ma connaissance). Cela n’a l’air de rien, mais peut être très utile dans divers cas.
Have fun folks.
Last edited by Pat64 (2007-11-06 19:41:52)
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Merci Pat pour cette astuce, elle pourrait bien me servir un de ces jours ;-)
Last edited by fpradignac (2007-11-06 18:54:19)
françois
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Salut.
Si vous souhaitez ajouter le décompte des commentaires en regard de chaque article dans vos flux RSS, modifiez le fichier /textpattern/publish/rss.php à la ligne #78 comme ceci :
if ($show_comment_count_in_feed) { $count = ($comments_count > 0) ? (($comments_count == 1) ? ' ['.$comments_count.' commentaire]' : ' ['.$comments_count.' commentaires]') : ''; } else $count = '';
Vos flux afficheront :
Titre de l’article [3 commentaires]
La modification fournie ci-dessus respecte le singulier/pluriel et n’affiche rien entre crochets si aucun commentaire n’est associé à l’article.
Have fun folks.
Last edited by Pat64 (2007-11-07 19:54:07)
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Merci Pat
Les astuces ça sert ou servira toujours!
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Salut à tous,
je ne sais pas si j’en avais parlé ici mais j’ai modifié le zem_contact_reborn en version multilingue pour avoir des traductions sur les formulaires.
On peut ainsi “localiser” son formulaire en ajoutant juste le paramètre de la langue voulu : trad=“fr”.
Vous retrouverez tout ça sur mon site ici
Si vous trouvez qu’il y a besoin de quelques aménagements, n’hésitez pas ;-)
françois
françois
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Heu…
Non, non. Je ne suis pas mort :))
Juste un peu éloigné de ce forum en raison de distractions sur d’autres projets étourdissants de la blogosphère…
Allez. J’vais tâcher d’vous trouver d’autres p’tits Trucs & Astuces d’ici quelques temps.
Stay turned on folks.
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Lorsque vous utilisez un echo parse(' ici balises xhtml et/ou tags TXP ');
1 que ce soit dans vos gabarits, voire dans vos modules, n’oubliez surtout pas d’échapper vos apostrophes simples dans les éléments textuels éventuellement présents.
Un petit exemple :
<txp:php>
if($_SESSION['language'] = 'fr-FR') {
echo parse('
<txp:output_form form="accessibility_fr" />
<div id="header">
<txp:output_form form="header_fr" />
</div> <!-- /header -->
<div id="wrapper">
<p>Voici mon texte contenant l\'apostrophe simple à manier avec beaucoup d\'égards</p>
');
}
</txp:php> (... suite tronquée ...)
Je viens de chercher longtemps cette petite erreur dans le contenu d’une page [assez] complexe. J’espère de cette démonstration [somme toute évidente] vous évitera, à l’avenir l\‘avenir beaucoup de perte de temps.
Have fun, folks.
——-
Note: 1: echo parse
suivit de ('
et terminé par ')
permet d’insérer directement des balises xhtml et/ou des tags TXP.
Ex.
<txp:php>
echo parse('
<h3>Derniers commentaires:</h3>
<txp:recent_comments />
');
</txp:php>
Thanks to Ruud for this tips.
Last edited by Pat64 (2008-11-04 09:46:25)
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline
Re: [fr-fr] Trucs, Tips et...Astuces
Nous allons aujourd’hui utiliser les balises <link (...) />
associées à leur attribut rel
pour lister l’ensemble de vos archives ainsi que vos articles ce qui, dans un soucis de référencement, ne devrait pas agraver les choses, bien au contraire ;)
Prérequis1 :
Vous devez télécharger et installer TXP qui est, je vous le rappelle, un merveilleux outil de CMS flexible et open source :))
C’est fait? Parfait. Nous pouvons commencer.
1.° Les archives des articles de votre blog (Euh, je sais: le style de ce titre n’est pas très joli ; il a le mérite d’être suffisamment précis).
Supposons que vous ayez une page (section) dévolue à vos archives mensuelles. Ici, nous la nommerons “archives-mensuelles” (titre de l’url de la-dite section).
Dans le gabarit “default” – celui qui affiche la home page de votre site – nous ajouterons entre les balises xhtml <head> ... </head>
:
<txp:article_custom section="blog" listform="archives_links" limit="999999" />
Puis nous crérons tout naturellement un nouveau module (form) de type “article” et nommé “archives_links” :
<txp:if_different><link rel="archives" href="<txp:site_url />archives-mensuelles?a=<txp:php>
global $locale;
setlocale(LC_ALL, 'fr_FR.UTF-8');
echo posted(array('format' => '%Y-%m'));
echo '" title="';
echo posted(array('format' => '%m/%Y'));
setlocale(LC_ALL, $locale);
</txp:php>" /></txp:if_different>
Parfait. Vous avez terminé.
2.° Les articles de votre blog
Créons un module (form) de type “article” et que nous nommerons “chapters_links” :
<txp:if_different><link rel="chapter" title="<txp:title />" href="<txp:permlink />" /></txp:if_different>
Parfait… (vous connaissez la suite).
Résumons.
La partie head de votre gabarit default doit contenir :
<!-- archives & chapters links -->
<txp:article_custom section="blog" listform="archives_links" limit="999999" />
<txp:article_custom section="blog" listform="chapters_links" section="blog" limit="999999" />
<!-- /archives-chapters links -->
Qu’allons-nous donc obtenir?
Dans le source de la partie head de votre page, vous donnez à qui veux bien lire (les bots), des informations sur la structure de votre blog :
<!-- archives & chapters links -->
<link rel="archives" href="http://forum.textpattern.com/archives-mensuelles?a=2008-11" title="11/2008" />
<link rel="archives" href="http://forum.textpattern.com/archives-mensuelles?a=2008-10" title="10/2008" />
<link rel="chapter" title="Un premier article" href="http://forum.textpattern.com/blog/un-premier-article" />
<link rel="chapter" title="Un deuxième article" href="http://forum.textpattern.com/blog/un-deuxieme-article" />
<!-- /archives-chapters links -->
Whaou. Trop bien. Merci Pat64!
Bon. Assez plaisanté.
Sachez également que l’on peut utiliser la propriété section
pour ce même attribut rel
afin de lister toutes les pages (sections) de votre site. Je vous laisse cogiter la construction de votre module afin d’obtenir ce que vous imaginez déjà. [Si toutefois vous ne savez pas comment faire, envoyez-moi un mèl : je répondrai à vos demandes!]
——-
Note: 1 : ayant pour fâcheuse habitude de dire n’importe quoi sur ce forum, veuillez personnaliser les démonstrations en fonction de vos réels besoins. D’autre part, j’utilise ici des trucs bizarres setlocale… dont vous comprendrez l’utilité, prochainement, dans un nouveau Tips à venir.
Stay Tuned. Have fun folks,
Last edited by Pat64 (2008-11-04 09:53:07)
Patrick.
Github | CodePen | Codier | Simplr theme | Wait Me: a maintenance theme | [\a mi.ni.ma]: a “Low Tech” simple Blog theme.
Offline