Dotclear

Vous n'êtes pas identifié(e).

Annonce

#1 2011-12-13 10:13:41

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

[ Plugin FreeUrls ]

Mise à jour 30/03/2019 Plugin FreeUrls 0.0.3
Compatible php 7.*
Lien de téléchargement de cette version:
http://aiguebrun.adjaya.info/public/plu … -0.0.3.zip

Plugin FreeUrls 0.0.2

Ce plugin permet de supprimer le type des urls suivantes du blog:
category, tag, post, pages, et également les types des urls liées à un post_type.

L'interface d'administration du plugin permet de sélectionner les types d'urls qui seront modifiées par le plugin, ainsi que de faire une redirection 301 des anciennes urls, pour ne pas perdre le référencement de celles-ci.


Dans l'état, le plugin ne s’occupe pas encore de la gestion des urls en doublons, c'est prévu pour une prochaine version.

Lien de téléchargement de cette version:
http://aiguebrun.adjaya.info/public/plu … -0.0.2.zip

PS:
Ah, j'oubliais, la priorité du plugin est définie à 2000, c'est à dire assez faible, celle-ci est modifiable au cas-ou, en définissant la constante FREE_URLS_PRIORITY, dans le fichier config.php du blog.

Dernière modification par adjaya (2019-03-30 14:25:25)


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#2 2011-12-13 10:17:16

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : [ Plugin FreeUrls ]

Excellent \o/

Hors ligne

#3 2011-12-13 11:03:08

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : [ Plugin FreeUrls ]

Idem, excellent ! :)

J'ose une idée : serait-il possible d'intégrer (et débugguer ?) le plugin Tweak URLs pour avoir un seul et unique plugin qui s'occupe de la gestion de toutes les URLs du blog ?

Hors ligne

#4 2011-12-13 11:12:40

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

Mathieu M. a écrit :

Idem, excellent ! :)

J'ose une idée : serait-il possible d'intégrer (et débugguer ?) le plugin Tweak URLs pour avoir un seul et unique plugin qui s'occupe de la gestion de toutes les URLs du blog ?

je crois que tu veux plutôt parler de myUrlHandler non?
Je ne crois pas que ce soit une bonne idée, justement parce qu'il existe déjà un plugin pour modifier les types, et que cela alourdirais le code et en rendrais sa compréhension et sa maintenance plus complexe.

Merci à toi et osku pour l'accueil, j'attends vos retours de bugs et critiques constructives :)

Dernière modification par adjaya (2011-12-13 11:16:00)


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#5 2011-12-13 11:43:28

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : [ Plugin FreeUrls ]

Je parlais bien de Tweak URLs, qui permet de formater les URLs (des billets et catégories) sans majuscules ou caractères exotiques. Ce serait tip-top si FreeUrls permettait aussi cela, en allant plus loin et en prenant en compte tous les contextes (billets, catégories, pages, etc...) ;)

Hors ligne

#6 2011-12-13 15:23:39

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

Une rapide petite mise à jour, j'ai constaté quelques imprécisions pour les settings, j'ai mis le lien à jour en #1 avec les corrections.

@ Mathieu M. > Non, c'est vraiment une autre fonction Tweak URLs, mon plugin n'a pas pour vocation de toucher aux urls des billets et autres, juste surveiller pour une prochaine version qu'il n'y ai pas de doublons et prévenir le rédacteur du blog, avant enregistrement qu'il a détecté un conflit possible!
Mais je laisserais le soin au rédacteur de corriger avant enregistrement, c'est du moins ainsi que je vois les choses pour l'avenir.


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#7 2011-12-13 17:19:24

Jean-Michel
Modérateur à ailes d'ange
Lieu : Paris
Inscription : 2006-08-22
Site Web

Re : [ Plugin FreeUrls ]

Merci pour le travail effectué ;-)

Des petites remarques à prendre ou à laisser ;-)
- Est-ce que le titre de la page d'admin ne devrait pas être "FreeUrls > Configuration" avec "FreeUrls" en rouge rose (cf. page "Maintenance")
- Est-ce normal que des traductions ne se fassent pas ? (Types setting successfully updated. / Activate FreeUrls extension / Save Configuration / Plugin successfully desable.)
- J'aurai plutôt mis le bloc "Activation" à gauche. (par ordre de logique)
- Est-ce que les autres "types" d'URL de plugins pourraient être placer automatiquement ?

Hors ligne

#8 2011-12-13 17:43:51

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

@ Jean-Michel
Pour le titre de la page, oui, pour la couleur j'avais pas vraiment fait attention, mais d'après mon installation je remarque que c'est les extensions livrées en standard qui ont cette couleur, c'est peut-être justement pour faire la distinction au premier coup d’œil avec les plugins tiers.

Les traductions, ben, elles sont pas faite, donc :) , j'ai pour habitude de faire ca à la fin, et là on est encore dans une version qui fonctionne sur de l'instable, alors je pense que j'ai encore un peu de marge pour présenter quelques chose "tout public" d'ici la prochaine release de dotclear. 

Pour l'Activation à gauche ou droite, je met au vote :)

Pour les autres Urls, il n'y a pas vraiment de recette miracle d'intégration, se passer du type dans l'url crée des contraintes supplémentaires qui nécessites parfois des requêtes sur la base pour examiner si l'url appartient à un type donné.
Difficile de deviner sur quelle table on doit s'appuyer  et quelle requête construire pour un plugin qui ajouterais une url, exception faite des urls issue de la table post qui sont déjà reconnue automatiquement comme candidates et intégrées par le plugin.
Pour les autres, un behavior est déjà en place, mais je n'ai pas eu le temps de tester, c'est pour cela que j'ai passé sous silence cette possibilité.

Merci pour ton retour.

Dernière modification par adjaya (2011-12-13 17:49:04)


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#9 2011-12-13 17:53:14

Jean-Michel
Modérateur à ailes d'ange
Lieu : Paris
Inscription : 2006-08-22
Site Web

Re : [ Plugin FreeUrls ]

Pour les couleurs > Effectivement ça reste à confirmer (pour ma propre culture) mais j'avais cette impression.

Pour les autres URLs > Ah ok, je me doutais bien que ça ne pouvait pas être aussi simple ;)

Hors ligne

#10 2011-12-27 12:33:32

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : [ Plugin FreeUrls ]

FreeUrls est-il compatible avec la dernière version de Dotclear (2.4.1.2) du coup ? :)

Merci !

Hors ligne

#11 2011-12-28 09:04:30

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : [ Plugin FreeUrls ]

Mathieu M. a écrit :

FreeUrls est-il compatible avec la dernière version de Dotclear (2.4.1.2) du coup ? :)

Merci !

On dirait bien que oui :)

Hors ligne

#12 2011-12-28 13:34:40

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : [ Plugin FreeUrls ]

Parfait :)

Hors ligne

#13 2012-03-17 07:22:50

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

En phase de tests sur un projet en cours, ce plugin marche très bien, merci :)

Hors ligne

#14 2012-03-17 19:04:13

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

amalgame a écrit :

En phase de tests sur un projet en cours, ce plugin marche très bien, merci :)

tant mieux :)
Un petit bug m'a été remonté tout de même ici : http://forum.dotclear.org/viewtopic.php … 23#p313023 , je corrigerais pour la prochaine version.

Dernière modification par adjaya (2012-03-17 19:04:27)


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#15 2012-03-23 16:32:11

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

Un petit bug découvert ;)

J'ai créé un nouvel utilisateur en ne lui donnant que les permissions suivantes : gérer tous les billets et commentaires, gérer les catégories, gérer tous les médias et gérer les pages.

J'ai bien pris garde à ne pas cocher la case "manage freeUrls" (il manque d'ailleurs la traduction) pour qu'il ne tripote pas les URLs ^^, mais il y a toujours accès, peux-tu regarder comment le corriger ?

Hors ligne

#16 2012-03-23 16:42:49

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

PS : si l'utilisateur est administrateur et qu'on ne lui donne pas la permission de gérer les freeUrls, il a quand même accès au plugin aussi.

Hors ligne

#17 2012-03-23 17:51:52

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

amalgame a écrit :

PS : si l'utilisateur est administrateur et qu'on ne lui donne pas la permission de gérer les freeUrls, il a quand même accès au plugin aussi.

.
Merci, je regarderais ça. Ceci dit, il est peut-être préférable de ne donner l'accès au paramétrage du plugin qu'à un superadmin, vu qu'une modification des urls n'est pas sans conséquences pour le référencement entre autre.


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#18 2012-03-23 17:54:38

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

Oui, le plugin ne doit être confié qu'au super administrateur :)

Hors ligne

#19 2012-04-11 06:19:15

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

J'ai quelques soucis avec le plugin : lorsque je demande son activation pour les catégories et les billets à la fois, ça ne marche que pour les billets.

Dans about:config le paramètre freeTypes donne a:2:{s:4:"post";s:0:"";s:8:"category";s:0:"";}

Idem si je coche les cases Redirection, la seule différence est dans about:config où le paramètre devient a:2:{s:4:"post";a:1:{s:5:"redir";b:1;}s:8:"category";a:1:{s:5:"redir";b:1;}}

Peut-être cela vient-il du fait que je redéfinis, dans le fichier _public.php du thème, l'URLHandler des catégories pour avoir un template par catégorie (de type category-4.html) ?

De plus, si je décoche toutes les cases, rien n'est enregistré, la page se rafraîchit et les cases sont cochées à nouveau, que le plugin soit activé ou non. C'est grave docteur ?

Hors ligne

#20 2012-04-11 10:30:06

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

@ amalgame

L'enregistrement dans about:config semble correct, peut-tu me donner plus de détail sur ta redéfinition de l'urlhander des catégories ( si possible joindre le code ici ou par mail pour mieux cerner ton problème! ).

Pour ce qui concerne les cases cochées, si tu fait la modif que je propose ici > http://forum.dotclear.org/viewtopic.php … 23#p313023 , est-ce que le problème persiste?

PS: non rien de grave à priori, je vais prendre un peux de temps bientôt pour essayer de corriger les bugs remontés pour la prochaine version.


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#21 2012-04-11 11:32:43

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

Pour la redéfinition de l'URLHandler :

$core->url->register('category','category','^category/(.+)$',array('myURLHandlers','category'));

class myURLHandlers extends dcUrlHandlers
{
	
	public static function category($args)
	{
		$_ctx =& $GLOBALS['_ctx'];
		$core =& $GLOBALS['core'];
		
		$n = self::getPageNumber($args);
		
		if ($args == '' && !$n) {
			self::p404();
		}
		
		$params['cat_url'] = $args;
		$params['post_type'] = 'post';
		
		$_ctx->categories = $core->blog->getCategories($params);
		
		if ($_ctx->categories->isEmpty()) {
			self::p404();
		} else {
			if ($n) {
				$GLOBALS['_page_number'] = $n;
			}
			$tpl = 'category-'.$_ctx->categories->cat_id.'.html';
			if (!$core->tpl->getFilePath($tpl)) {
				$tpl = 'category.html';
			}
			self::serveDocument($tpl);
			exit;
		}
	}
}

Pour les cases cochées, c'est moins important, j'attendrai ta prochaine mise à jour ;)

Hors ligne

#22 2012-04-11 13:50:44

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : [ Plugin FreeUrls ]

amalgame a écrit :

Pour la redéfinition de l'URLHandler :

$core->url->register('category','category','^category/(.+)$',array('myURLHandlers','category'));

class myURLHandlers extends dcUrlHandlers
{
	
	public static function category($args)
	{
		$_ctx =& $GLOBALS['_ctx'];
		$core =& $GLOBALS['core'];
		
		$n = self::getPageNumber($args);
		
		if ($args == '' && !$n) {
			self::p404();
		}
		
		$params['cat_url'] = $args;
		$params['post_type'] = 'post';
		
		$_ctx->categories = $core->blog->getCategories($params);
		
		if ($_ctx->categories->isEmpty()) {
			self::p404();
		} else {
			if ($n) {
				$GLOBALS['_page_number'] = $n;
			}
			$tpl = 'category-'.$_ctx->categories->cat_id.'.html';
			if (!$core->tpl->getFilePath($tpl)) {
				$tpl = 'category.html';
			}
			self::serveDocument($tpl);
			exit;
		}
	}
}

Pour les cases cochées, c'est moins important, j'attendrai ta prochaine mise à jour ;)

Tu as toujours templator qui le fait sinon.

Hors ligne

#23 2012-04-11 14:54:08

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : [ Plugin FreeUrls ]

Oui mais non, ça me fait installer un plugin pour utiliser un plugin, c'est un peu overkill :P

Hors ligne

#24 2012-04-11 16:19:29

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : [ Plugin FreeUrls ]

@ amalgame
Il me semble que ca devrait fonctionner avec ton code, bon j'inclurais quelques tests avec, quelque chose m'échappe peut-être!
Une petite piste tout de même, une histoire de priorité, il faut en effet impérativement que mon plugin fasse sa cuisine après ta redéfinition de l'urlHandler, et comme c'est fait dans un fichier du thème, je me demande comment dotclear gère cela!!?


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#25 2012-04-11 16:29:54

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : [ Plugin FreeUrls ]

adjaya a écrit :

@ amalgame
Il me semble que ca devrait fonctionner avec ton code, bon j'inclurais quelques tests avec, quelque chose m'échappe peut-être!
Une petite piste tout de même, une histoire de priorité, il faut en effet impérativement que mon plugin fasse sa cuisine après ta redéfinition de l'urlHandler, et comme c'est fait dans un fichier du thème, je me demande comment dotclear gère cela!!?

Voilà. C'est le thème en dernier, après tous les plugins.

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map