2016-04-14 5 views
0
  1. Это то, что у меня есть:Назначение различных классов CSS на основе ID

    Actual output

  2. Это то, что я пытаюсь достичь:

    Desired output

Это код, который я пытаюсь изменить для его достижения:

<?php do_action('bbp_theme_before_topic_title'); ?> 


    <span class="bbp-topic-started-in"><?php 
     printf(__('<a class="dog" href="%1$s">%2$s</a>', 'bbpress'), 
       bbp_get_forum_permalink(bbp_get_topic_forum_id()), 
       bbp_get_forum_title(bbp_get_topic_forum_id())); 
    ?></span> 
    <a class="bbp-topic-permalink" href="<?php bbp_topic_permalink(); ?>"><?php bbp_topic_title(); ?></a> 

Как вы можете видеть, он назначает класс «собака» всем ссылкам на форуме. Мне нужно, чтобы отдельные классы были назначены на разные форумы, основываясь на идентификаторе форума, чтобы я мог их отличить по-разному.

Я думаю, что это может быть заявление if, но я не уверен, как его правильно выполнить. У кого-нибудь есть предложения?

ответ

0

Вы можете попробовать что-то вроде этого:

<?php do_action('bbp_theme_before_topic_title'); ?> 

<span class="bbp-topic-started-in"> 
<?php 
    $forumId = bbp_get_topic_forum_id(); 

    // Replace these values with your forum IDs and css classes 
    if ($forumId == 5) { 
     $class = "dog"; 
    } elseif ($forumId == 6) { 
     $class = "cat"; 
    } else { 
     // Remember to specify a default css classname 
     // in case we didn't match any of the 'if' cases above 
     $class = "mouse"; 
    } 

    // Use the $class variable that we set above to dynamically 
    // replace the classname with the value we want 
    printf(__('<a class="' . $class. '" href="%1$s">%2$s</a>', 'bbpress'), 
      bbp_get_forum_permalink($forumId), 
      bbp_get_forum_title($forumId); 
?> 
</span> 

Обратите внимание, как я установил bbp_get_topic_forum_id() переменной и использовать его как в if и в printf дальше вниз. Это хорошая практика, поскольку она позволяет избежать ненужного вызова этой функции несколько раз.

+1

Конечно! Brilliant. Из-за синтаксических ошибок произошли незначительные изменения. Спасибо за помощь! – frankypiccolo

Смежные вопросы