Jump to content

supprimer lien sur une seule catégorie


Recommended Posts

signalisation_approche.jpg

 

 

 

Bonjour à tous,

 

Voilà 3 mois environ que je me suis penchée vers ce cms que je trouve super. Je résouds généralement mes problèmes en me plongeant dans le code et les forums, mais là j'avoue je bloque.

 

Sur mon menu catégorie, bloc de gauche je souhaite simplement enlever le lien sur la catégorie SIGANLISATION D'APPROCHE car elle contient des sous catégories, et je ne souhaite pas que les visiteurs puissent cliquer sur la catégorie parente mais uniquement sur les sous catégories.

 

Et là je bloque, il n'y a pas d'ID sur les catégories et d'autre part je ne les retrouve dans aucun fichier.

 

Merci beaucoup par avance de votre aide.

 

 

Une autre petit détail que j'aimerais améliorer, est t'il possible toujours dans ce même menu catégorie, mettre en gras dans les sous catégories, uniquement type AK, type BK, type CK et type KC1

 

Merci à tous de vos réponses

Edited by finkelstein (see edit history)
Link to comment
Share on other sites

Je ne comprend pas le pourquoi d'interdire la catégorie parente..

Dans celle ci, si le client clique dessus, il apparaitra les sous catégories avec leurs images ?? non ?? Donc c’est plutot bien ?

 

Et pour mettre en gras ca me parait délicat puisque le titre est une seule et unique valeur, dans la BD qui est positionnée ensuite sur la ligne de sous catégorie, donc il me parait vraiment difficile de faire comprendre au système a partir d’où mettre le gras..

Link to comment
Share on other sites

Pour empécher qu'on puisse aller visiter la catégorie en question, je penses que le mieux serait de modifier le template qui affiche le menu (blockcategorie non ? ) et de tester l'id de la catégorie. Si c'est l'id de la catégorie en question alors on ne rempli par le href du lien.

 

Pour le gras en effet c'est difficile, éventuellement en javascript mais c'est un peu lourd pour ce genre de chose.

Link to comment
Share on other sites

Merci pour vos réponses. Mais maniT4c, j'y suis allée dans blockcategories.tpl, lais je ne vois nul part les id des catégories ni les catégories elles_memes d'ailleurs. je pense que c'est du code smarty qui appelle les catégories dans la base de données.

 

Je n'y connais pas assez

 

bonne journée

laurence

Link to comment
Share on other sites

Le code smarty ne peux pas faire d'appel à la base de données. Ce n'est pas sont rôle.

C'est un fichier php (controller) qui envoie les variables au fichier smarty (le blockcategories.tpl en l’occurrence) puis smarty utilise ces variables pour les afficher.

Pour être plus précis je dirais même que le controller envoie des objets à smarty donc il est tout à fait possible que smarty est accés à l'id de la catégorie sans pour autant l'utiliser.

 

Pourriez-vous coller sur le forum le code du blockcategorie.tpl ?

Merci de préciser également la version de votre prestashop

Link to comment
Share on other sites

Voilà le code, j'utilise prestashop 1.5.0.17

 

 

{*

* 2007-2012 PrestaShop

*

* NOTICE OF LICENSE

*

* This source file is subject to the Academic Free License (AFL 3.0)

* that is bundled with this package in the file LICENSE.txt.

* It is also available through the world-wide-web at this URL:

* http://opensource.org/licenses/afl-3.0.php

* If you did not receive a copy of the license and are unable to

* obtain it through the world-wide-web, please send an email

* to [email protected] so we can send you a copy immediately.

*

* DISCLAIMER

*

* Do not edit or add to this file if you wish to upgrade PrestaShop to newer

* versions in the future. If you wish to customize PrestaShop for your

* needs please refer to http://www.prestashop.com for more information.

*

* @author PrestaShop SA <[email protected]>

* @copyright 2007-2012 PrestaShop SA

* @version Release: $Revision: 6844 $

* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)

* International Registered Trademark & Property of PrestaShop SA

*}

<!-- Block categories module -->

<div id="categories_block_left" class="block">

<h4>{l s='Categories' mod='blockcategories'}</h4>

<div class="block_content">

<ul class="tree {if $isDhtml}dhtml{/if}">

{foreach from=$blockCategTree.children item=child name=blockCategTree}

{if $smarty.foreach.blockCategTree.last}

{include file="$branche_tpl_path" node=$child last='true'}

{else}

{include file="$branche_tpl_path" node=$child}

{/if}

{/foreach}

</ul>

{* Javascript moved here to fix bug #PSCFI-151 *}

<script type="text/javascript">

// <![CDATA[

// we hide the tree only if JavaScript is activated

$('div#categories_block_left ul.dhtml').hide();

// ]]>

</script>

</div>

</div>

<!-- /Block categories module -->

Link to comment
Share on other sites

Oula :blink: la prochaine fois utilise les balises "code" du forum pour que ce soit plus lisible :)

 

Donc j'ai regarder sur une version 1.5.4 (j'avais pas la 1.5.0 sous la main).

Tu as un tpl qui s'appel categorye-tree-branch.tpl c'est dans ce fichier qu'il faut faire les modifications.

Voici le code qui va faire ce que tu veux:

<a href="{if $node.id!=3}{$node.link|escape:'htmlall':'UTF-8'}{else}#{/if}" {if $node.id==3}onClick="toggleBranch($(this).parent().children('span.grower'))"{/if} {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} title="{$node.desc|escape:'htmlall':'UTF-8'}">{$node.name|escape:'htmlall':'UTF-8'}</a>

 

Explications:

J'ai rajouté une condition pour affiché dans le "href" soit le lien de la catégorie soit #.

C'est cette partie:

{if $node.id!=3}{$node.link|escape:'htmlall':'UTF-8'}{else}#{/if}

 

Ensuite j'ai ajouté une condition qui ajoute (ou pas) un onclick au lien de la catégorie (pour permettre le déploiement des sous cat)

{if $node.id==3}onClick="toggleBranch($(this).parent().children('span.grower'))"{/if}

 

Dans l'exemple que je t'ai donné j'ai considéré que la catégorie pour laquelle tu ne voulais plus le lien avait l'id numéro 3.

A toi de voir quel est l'idée dont tu as besoin

Link to comment
Share on other sites

  • 11 months later...

Bonsoir,

je me greffe ici car cela m'intéresse, c'est précisément ce que je cherche à faire. En revanche, je n'est pas bien saisie ou exactement remplacer le code. Sachant que j'ai 3 fichiers "category-tree-branch.tpl" placés à des endroits différents.

Quelle est la ligne ou je dois remplacer ?
Merci bcoup de votre aide,

Valérie
 

voici un exemple du contenu :

* 2007-2012 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA
* @copyright 2007-2012 PrestaShop SA
* @version Release: $Revision: 14011 $
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*}@prestashop.com>
 


  • {$node.name|escape:html:'UTF-8'}
    {if $node.children|@count > 0}
    • {foreach from=$node.children item=child name=categoryTreeBranch}
      {if isset($smarty.foreach.categoryTreeBranch) && $smarty.foreach.categoryTreeBranch.last}
      {include file="$branche_tpl_path" node=$child last='true'}
      {else}
      {include file="$branche_tpl_path" node=$child last='false'}
      {/if}
      {/foreach}


    {/if}

[/acronym]@prestashop.com>

Link to comment
Share on other sites

Hello ! 

 

Je déplace ce topic dans "Difficultés, pannes ou erreurs rencontrées". Veillez à poster dans les catégories adéquates svp.

 

@lamerserie : Pour que ton post sois plus visible, je t'invite à créer un nouveau topic dans la catégorie citée au dessus, tu auras certainement plus de réponses  :)

 

Bonne journée ! 

Link to comment
Share on other sites

  • 6 months later...
  • 6 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...