Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Другие движки / фрейморки > Задать цвет ссылки в WebAsyst Shop-Script


Автор: keen_ 12.11.2008, 12:07
Здравствуйте!

Пожалуйста подскажите как изменить цвет ОДНОЙ ссылки в разделе меню навигации (т. е. ОДНОЙ ID категории)? Я, конечно, могу поменять цвет у всех ссылок в CSS, но не знаю как изменить цвет только одной ссылки - нужно какую-то команду задать в PHP коде.

Спасибо!

smile


Автор: bars80080 12.11.2008, 15:06
ну ты же строишь разметку из данных, типа:

Код

for($i = 0; isset($arr[$i]);$i++) {
   // и здесь ты имеешь id категории
   if($arr[$i]['id_category'] == 5) { $cls = ' class="sel"'; } else { $cls = ''; }
   echo '<a href="index.php?cat='.$arr[$i]['id'].'" '.$cls.'>'.$arr[$i]['name'].'</a>';
   ...
}
назначаешь класс и всё. а дальше уже css

Автор: keen_ 12.11.2008, 15:39
Я плохо понимаю в php. Могу только немного редактировать.

В какой файл нужно этот код вставить? 

Автор: bars80080 12.11.2008, 16:32
в файл programmingsdream.php

Автор: keen_ 12.11.2008, 16:53
Хе-хе  smile 

Ну серьёзно подскажи. Не все же разбираются в том, в чём кто-то другой.

 smile 

Автор: bars80080 12.11.2008, 16:57
а кто лучше тебя знает, где что находится в твоих скриптах.
если ты хочешь, вообще не копаясь в коде существующей разработки, получить ответ, то спрашивай в разделе "Работа с готовыми скриптами и поиск движков"

Автор: keen_ 12.11.2008, 17:18
bars, я тебя прекрасно понимаю. Просто создавая эту тему я рассчитывал получить помощь от людей кто фамильярен именно с этим движком. 

Вот код PHP команда которая выводит блок меню навигации: {include file="category_tree.tpl.html"}
Вот этот файл:

Код

{* category navigation tree *}

<table border="0" cellspacing="5" cellpadding="0" width="100%">

{section name=i loop=$categories_tree}

    {if $categories_tree[i].categoryID != 1}

    <tr>
    

    <td>

        {section name=j loop=$categories_tree max=$categories_tree[i].level-1}
            &nbsp;&nbsp;&nbsp;
        {/section}

        {if $categories_tree[i].level > 1}<img src="images/point{if $categoryID == $categories_tree[i].categoryID}_v{/if}.gif" width="8" height="8">{/if}

        {if $categoryID == $categories_tree[i].categoryID}
            {* selected node => point category and don't make a link *}
            <b>
                <font class="faq">{$categories_tree[i].name}
                </font>
            </b>
            <br>

        {else}
            {* not selected node => make a link to a category *}
            <a href="index.php?categoryID={$categories_tree[i].categoryID}" 
                {if $categories_tree[i].level > 1}
                    class="standardsmall" 
                {/if}>{$categories_tree[i].name}</a>
            <br>
        {/if}

    </td></tr>

    {/if}
{/section}

</table>

Автор: skyboy 12.11.2008, 17:40

M
skyboy
Перемещено из "РНР: Общие вопросы"

Автор: bars80080 12.11.2008, 19:19
у тебя же всё на поверхности

вот зачем-то проверка {if $categories_tree[i].categoryID != 1}
сделай такую же на свою категорию, а затем внеси класс куда там надо. допустим в <td>, тогда заменям 11 и 12 строчки:


Код

{if $categories_tree[i].categoryID == 5} 
<td class="sel">
{else}
<td>
{/if}
    

Автор: keen_ 12.11.2008, 19:39


Не понятно ЧТО именно сделать ("сделай такую же"), где, и что такое класс в данном случае.

 smile  smile 

Автор: bars80080 12.11.2008, 21:05
ёпрст! а хтмл разметку и использование стилей css вы знаете?

а что сделать, я вообще-то написал, осталось только в рамочку повесить и цветочек прилепить, а лучше проверить, работает так или нет

Автор: keen_ 12.11.2008, 21:15

На HTML пишу около 12-ти лет. CSS тоже знаю.

:(

 smile 

"Погибать, буду молодым!"


Автор: bars80080 13.11.2008, 00:29
так в чём сложности задать нужные характеристики класса .sel {} ?

Добавлено через 25 секунд
а также для ссылки .sel a:hover {}

Автор: keen_ 15.11.2008, 11:16
В итоге получил поддержку от службы поддержки скрипта. Сделал как они посоветовали и всё получилось. bars, и вам спасибо за помощь smile

Вы можете задать условие с помощью Smarty в файле
/templates/frontend/tmpl*/category_tree.tpl.html, например, следующим образом:

В конце файла найдите такую (или подобную, если у вас другой шаблон) часть кода:

Код

{if $categories_tree[i].level > 1}
  class="lightmenunobold"
{else}
  class="lightmenu"
{/if}>{$categories_tree[i].name}


и измените ее на

Код

{if $categories_tree[i].level > 1}
  class="lightmenunobold"
{else}
  class="lightmenu"
{/if} {if $categories_tree[i].categoryID eq
139}style="color:red!important;"{/if}>{$categories_tree[i].name}


Здесь 139 - это ID категории, ссылка на которую должна стать красной
(color:red!important;) в данном случае. Изменив ID и цвет на нужные вам, вы
добьетесь нужного результата.


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)