Discussion fermée
Pages: 1 2
Bonjours
Est il possible de mettre des icones a la place des carrés Blanc devant les liens ?
Si possible les icones des sites
http://chatalorss.free.fr/phpwebgallery/
Ancien titre : Rubrique Liens
Dernière modification par VDigital (2006-03-18 09:44:00)
Hors ligne
Oui, c'est possible.
Hors ligne
Plus sérieusement, donc. Tu voudrais faire comme ceci:
<li><a href="http://www.zebulon.fr"><img src="http://www.zebulon.fr/images/zebulon.gif"/>Zebulon Optimisation PC</a></li>
Il va falloir créer des choses comme:
$conf['logo_links'] = array(
'http://www.zebulon.fr/images/zebulon.gif' => 'Zebulon Optimisation PC',
);
Pour commencer...
Ensuite modifier un module php...
Faire ce qu'il faut pour enlever le petit carré.
Modifier les templates category.tpl disponibles sur ton site.
Ou alors...
Hors ligne
Il va falloir modifier les liens...
$conf['logo_links'] = array(
'http://www.zebulon.fr/"><img src="http://www.zebulon.fr/images/zebulon.gif' => 'Zebulon Optimisation PC',
);
Cette technique là serait plus simple mais la balise de fin serait incorrecte.
Je m'orienterai donc vers la première solution.
A suivre...
Hors ligne
C'est dans category.php que cela se passe en ligne 176 (pour la 1.5.2):
//-------------------------------------------------------------- external links if (count($conf['links']) > 0) { $template->assign_block_vars('links', array()); foreach ($conf['links'] as $url => $label) { $template->assign_block_vars( 'links.link', array( 'URL' => $url, 'LABEL' => $label )); } }
Et il faudra remplacer ça par quelque chose comme :
//-------------------------------------------------------------- external links if (count($conf['links']) > 0) { $template->assign_block_vars('links', array()); $logo_link = $conf['logo_links']; foreach ($conf['links'] as $url => $label) { if (isset($logo_link[$label]) { $url2 = $url.'"><img id="Logo" src="'.$$logo_link[$label].'" />'; } else { $url2 = $url.'">' $template->assign_block_vars( 'links.link', array( 'URL' => $url2, 'LABEL' => $label )); } }
A suivre...
Dernière modification par VDigital (2006-03-16 19:50:45)
Hors ligne
la solution la moins risqué pour PWG c' est laquelle ?
Je voudrais pas trop me retrouvé avec PWG Hors Service
Certains de mes liens n' ont pas d' icone
comme Archlinux
je testerais ça demain, sinon je vais allé trop vite la
Hors ligne
J'ai dit: à suivre...
Il reste le plus facile:
- Faire ce qu'il faut pour enlever le petit carré.
- Modifier les templates category.tpl disponibles sur ton site.
Je te signale que je n'ai rien testé, on fera une synthèse ensuite.
Donc, ce n'est pas fini.
Hors ligne
La suite... Je fais ça tout seul?
C'est dans category.tpl.
...
Il faut regarder ceci:
<!-- BEGIN links --> <dl> <dt>{lang:Links}</dt> <dd> <ul> <!-- BEGIN link --> <li><a href="{links.link.URL}">{links.link.LABEL}</a></li> <!-- END link --> </ul> </dd> </dl> <!-- END links -->
Qu'est-ce qui ne va pas marcher?
{links.link.URL} va être remplacé par ...
array(
'URL' => $url2,
C'est à dire le contenu de $url2.
Qu'y a-t-il dans $url2?
soit : http://www.zebulon.fr">
soit : http://www.zebulon.fr"><img src="http://www.zebulon.fr/images/zebulon.gif" />
donc dans les deux cas, il se trouve que la fermeture de l'attribut '"' et > sont déjà présents dans la variable links.link.URL...
donc <li><a href="{links.link.URL}"> celui du template serait en trop.
donc on va ré-écrire:
<li><a href="{links.link.URL}{links.link.LABEL}</a></li>
Est-ce cela suffit? (sinon je ne poserai pas la question, je sais 8-) ).
Non, bien sûr, il faut encore faire quelques petites choses.
Pour l'instant, il n'y a aucun moyen de différencier le petit carré des liens des autres.
Ça tombe bien c'est aussi à cet endroit qu'il faut agir.
A suivre.
Hors ligne
Avant de modifier le fichier category.tpl qui se trouve dans /phpwebgallery/template/yoga-dark et le fichier category.php qui se trouve dans /phpwebgallery je les ai sauvegardé en copie
category.php
//-------------------------------------------------------------- external links
if (count($conf['links']) > 0)
{
$template->assign_block_vars('links', array());
$logo_link = $conf['logo_links'];
foreach ($conf['links'] as $url => $label)
{
if (isset($logo_link[$label])
{
$url2 = $url.'http://www.zebulon.fr"><img id="Logo" src="http://www.zebulon.fr/images/zebulon.gif'.$$logo_link[$label].'Zebulon Optimisation PC" />';
}
else
{
$url2 = $url.'">'
$template->assign_block_vars(
'links.link',
array(
'URL' => $url,
'LABEL' => $label
));
}
}
category.tpl
<!-- $Id: category.tpl 973 2005-12-03 23:53:26Z chrisaga $ -->
<div id="menubar">
<!-- BEGIN links -->
<dl>
<dt>{lang:Links}</dt>
<dd>
<ul>
<!-- BEGIN link -->
<li><a href="http://www.zebulon.fr"><img src="http://www.zebulon.fr/images/zebulon.gif"/>Zebulon Optimisation PC</a></li>
<!-- END link -->
</ul>
ben, c' est pas gagné....
Parse error: parse error, unexpected '{' in /var/www/sdb/5/c/chatalorss/phpwebgallery/category.php on line 185
J' ai restauré l' originale .... c' est rentré dans l' ordre....
category.tpl délire euh......
J' ai restauré l' originale .... c' est rentré dans l' ordre....
J' essaye de comprendre ce que t' as mit au dessus, mais voila me suis planté....
Quels sont mes erreurs ?
Tu dois te marrer.....
le PHP n' est pas très facile comme langage pour moi
Dernière modification par chatalorss (2006-03-17 15:23:27)
Hors ligne
Tu veux aller trop vite, on n'a pas fini...
J'ai à priori corrigé les erreurs de parsing (il y en avait au moins 3). (Nouvelle version ci-dessous).
Je code dans le post, je ne travaille pas sur mes modules, je peux donc faire des erreurs de syntaxe.
8-)
On reverra ça à la fin (il reste peut être des erreurs).
Pour l'instant, on calcule ce qu'on va faire sur category.tpl.
Et à priori, il n'y a aucun moyen de différencier le petit carré des liens des autres.
Alors il faut faire quelque chose... Quoi donc?
Réfléchi un peu, ça devrait être aussi à ta portée maintenant.
Ceci dit, c'est bien que tu essaies, et que tu t'intéresses à ce que je te dé-//:---\spam.
A suivre.
category.php
//-------------------------------------------------------------- external links
if (count($conf['links']) > 0)
{
$template->assign_block_vars('links', array());
$logo_link = $conf['logo_links'];
foreach ($conf['links'] as $url => $label)
{
if (isset($logo_link[$label]))
{
$url2 = $url.'"><img class="Logo" src="'.$$logo_link[$label].'" />';
}
else
{
$url2 = $url.'">' ;
}
$template->assign_block_vars(
'links.link',
array(
'URL' => $url2,
'LABEL' => $label
));
}
}
Dernière modification par VDigital (2006-03-17 15:52:29)
Hors ligne
category.tpl
<!-- BEGIN link -->
<li><a href="http://www.zebulon.fr"><img src="template/yoga-dark/theme/mini_zu.gif"/>Zebulon Optimisation PC</a></li>
<!-- END link -->
j' ai enregistré un icone dans template/yoga-dark/theme/ mais ça bouge pas
tous les liens sont remplacé par Zebulon Optimisation PC
Je donne ma langue au chat ....
la seul chose que j' ai réussi dans le category.tpl
c' est mettre un icone au dessus Liens ( c' étais peut être une astuce plus facile a faire )
<div id="menubar">
<a href="http://www.zebulon.fr" title="{Venez nous rejoindre...}"><img src="template/yoga-dark/theme/logo.gif" border="0"></a>
Hors ligne
chatalorss a écrit:
Bonjours
Est il possible de mettre des icones a la place des carrés Blanc devant les liens ?
Si possible les icones des sites
http://chatalorss.free.fr/phpwebgallery/
Un doute reprécise la question:
Des icones? Une icone particulière à chaque lien.
Ou un/une icone? La même devant chacun des liens.
Ce qui change tout... effectivement !!!
Là je travaille dans l'optique "Si possible les icones des sites", d'accord?
(On y est presque, rassure-toi. 8-) )
Hors ligne
le top aurais été des icones personnalisé pour chaque lien
est ce possible ?
mettre le même icone a la place de tous les carrés blanc n' est pas du tout le but recherché
mais ça peut être sympa aussi
au faite il y a de nouvelles photos, regarde
Dernière modification par chatalorss (2006-03-17 18:22:04)
Hors ligne
Rappel: Je disais donc...
Dans category.tpl
...
Il faut regarder ceci:
<!-- BEGIN links --> <dl> <dt>{lang:Links}</dt> <dd> <ul> <!-- BEGIN link --> <li><a href="{links.link.URL}">{links.link.LABEL}</a></li> <!-- END link --> </ul> </dd> </dl> <!-- END links -->
Qu'est-ce qui ne va pas marcher?
{links.link.URL} va être remplacé par ...
array(
'URL' => $url2,
C'est à dire le contenu de $url2.
Qu'y a-t-il dans $url2?
soit : http://www.zebulon.fr">
soit : http://www.zebulon.fr"><img src="http://www.zebulon.fr/images/zebulon.gif" />
donc dans les deux cas, il se trouve que la fermeture de l'attribut '"' et > sont déjà présents dans la variable links.link.URL...
donc <li><a href="{links.link.URL}"> celui du template serait en trop.
donc on va ré-écrire:
<li><a href="{links.link.URL}{links.link.LABEL}</a></li>
Il faut encore faire quelques petites choses.
Pour l'instant, il n'y a aucun moyen de différencier le petit carré des liens des autres.
Ça tombe bien c'est aussi à cet endroit qu'il faut agir.
Donc nous en sommes là:
<!-- BEGIN links --> <dl> <dt>{lang:Links}</dt> <dd> <ul> <!-- BEGIN link --> <li><a href="{links.link.URL}{links.link.LABEL}</a></li> <!-- END link --> </ul> </dd> </dl> <!-- END links -->
Là, nous avons, au centre, des balises, plus précisément une Unordered List <UL> et des List Items <LI>.
Seulement rien ne les différencient des autres listes de Menubar.
Comment les différencier?
3 solutions en général...
1 - ajouter un attribut style=
2 - ajouter un atribut class=
3 - ajouter un attribut id=
Pourquoi faire?
Pour changer le list-style-type... On verra ce que cela signifie.
Alors quelle solution faut-il choisir?
1 - ajouter un attribut style=
2 - ajouter un atribut class=
3 - ajouter un attribut id=
Je connais la réponse.
A suivre...
Hors ligne
Résponses (avec un s):
- style=?
<UL STYLE="list-style-type: none;">
avantage: ça va marcher.
inconvénient: très mineur (tant que cela est ponctuel, ce qui est le cas).
- class=?
<UL CLASS="linklist"> /* ce n'est pas tout */
avantage: ça marche en général (et dans ce cas particulier, oui, ça marche)
inconvénient: aucun (sauf que cela alourdi le css, mais le chargement des css par le navigateur n'est pas systématique (refresh)).
- id=?
<UL ID="linklist"> /* ce n'est pas tout */
avantage: = à class=
inconvénient: if faut que id= avec sa valeur (="linklist") ne figure qu'une seule fois dans la page, dans notre cas c'est bon mais si je veux réutiliser le truc pour une autre liste, je ne pourrai pas réutiliser cet ID=, il en faudra un autre donc plus lourd.
ID= est parfait pour un élément qui doit rester unique dans la page.
Ma préférence va à class=.
A suivre.
Hors ligne
Pages: 1 2
Discussion fermée