Archive total : proposition modification
je-evrard
Member
Bonjour,
Le lien sur l'archive total propose d'aller directement à la racine du site (blog).
Or il se trouve que quand une page statique est défini comme page d'accueil ça devrait aller sur la page de blog.
On a aujourd'hui :
Proposition de modification :
Bonne journée,
Cordialement,
jérôme
Le lien sur l'archive total propose d'aller directement à la racine du site (blog).
Or il se trouve que quand une page statique est défini comme page d'accueil ça devrait aller sur la page de blog.
On a aujourd'hui :
[== PHP ==]
if(strpos($format, '#archives_nbart') !== false) {
$motifs = array(
'#archives_id' => 'arch-total',
'#archives_name' => L_TOTAL.' ',
'#archives_year' => str_repeat('–', 4),
'#archives_month' => L_TOTAL,
'#archives_url' => $this->plxMotor->urlRewrite(),
'#archives_nbart' => $total,
'#archives_status' => ($active) ? 'active' : 'noactive',
'#archives_selected'=> ($active) ? 'selected' : ''
);
echo str_replace(array_keys($motifs), array_values($motifs), $format);
}
Proposition de modification :
[== Indéfini ==]
# Total des articles
if($this->plxMotor->aStats[$this->plxMotor->aConf['homestatic']]['active']) {
$total_url = $this->plxMotor->urlRewrite('?blog');
} else {
$total_url = $this->plxMotor->urlRewrite();
}
if(strpos($format, '#archives_nbart') !== false) {
$motifs = array(
'#archives_id' => 'arch-total',
'#archives_name' => L_TOTAL.' ',
'#archives_year' => str_repeat('–', 4),
'#archives_month' => L_TOTAL,
'#archives_url' => $total_url,
'#archives_nbart' => $total,
'#archives_status' => ($active) ? 'active' : 'noactive',
'#archives_selected'=> ($active) ? 'selected' : ''
);
echo str_replace(array_keys($motifs), array_values($motifs), $format);
}
Bonne journée,
Cordialement,
jérôme
0
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Voir remarque "attention" ici : http://php.net/manual/fr/function.str-replace.php
[== php ==] php > $a = 'mon username est personne'; php > $r1 =array('user' => 'utilisateur ', 'username' => 'nom usage'); php > echo str_replace(array_keys($r1), array_values($r1), $a); mon utilisateur name est personne php > $r2 =array('username' => 'nom usage', 'user' => 'utilisateur '); php > echo str_replace(array_keys($r2), array_values($r2), $a); mon nom usage est personneIl faut utiliser strtr qui remplace en commençant par les chaînes les plus longues. En prime, il est plus simple d'utilsation Certes, PluXml est truffé de str_replace mal employés. Mais bon ...On en a déjà parlé sur Github.
Accès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2
Par contre, je n'ai aucune utilité du "total des archives", on a déjà les années ça suffit amplement. Y'a t'il un moyen de supprimer le total et de garder mois et années facilement ? je crois que la fonction affiche tout
Merci.
En plus la modif est assez simple à faire. Dans core/lib/class.plx.show.php, vers la ligne 1815, rajouter un paramètre par défaut à la fonction archList() comme suit : Et quelques lignes plus loin après "# Total des articles" modifier le test if comme suit : Il faut bien sûr conserver le caractère "{" à la fin de chaque ligne.
Et dans ton thème, tu rajoutes la valeur false quand tu appelles la fonction comme suit :
[== PHP ==] $plxShow->archList('<li id="#archives_id"><a class="#archives_status" href="#archives_url" title="#archives_name">#archives_name</a></li>', false);Dommage que PluXml n'utilise pas les constantes de class. Cela éviterait de ré-écrire la chaine $format.
Accès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2
[== PHP ==] public function archList($format='<li id="#archives_id"><a class="#archives_status" href="#archives_url" title="#archives_name">#archives_name</a></li>') { # ...... # Total des articles if(!empty($total_general) and strpos($format, '#archives_nbart') !== false) { $url = ($this->plxMotor->aStats[$this->plxMotor->aConf['homestatic']]['active']) ? '?blog' : '' ; echo strtr($format, array( '#archives_id' => 'arch-total', '#archives_name' => L_TOTAL.' ', '#archives_year' => str_repeat('–', 4), '#archives_month' => L_TOTAL, '#archives_url' => $this->plxMotor->urlRewrite($url), '#archives_nbart' => $total, '#archives_status' => ($active) ? 'active' : 'noactive', '#archives_selected'=> ($active) ? 'selected' : '' )); } }Elle n'est pas bien la fonction PHP Strtr ?
Accès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2
J'ai créé une issue pour intégrer cette modification à la prochaine version de PluXml : https://github.com/pluxml/PluXml/issues/312
[== bash ==] grep -n str_replace core/{admin,lib}/*.phpAccès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2