Изменить цвет запятых в php - PullRequest
       25

Изменить цвет запятых в php

0 голосов
/ 10 октября 2018

Вот мой код:

<?php
$posttags = get_the_tags();
if ($posttags) {
   $tagstrings = array();
   foreach($posttags as $tag) {
      $tagstrings[] = '<a href="' . get_tag_link($tag->term_id) . '" class="tag-link-' . $tag->term_id . '">' . $tag->name . '</a>';
   }
   echo implode(', ', $tagstrings);
}

// For an extra touch, use this function instead of `implode` to a better formatted string
// It will return "A, B and C" instead of "A, B, C"
function array_to_string($array, $glue = ', ', $final_glue = ' and ') {
    if (1 == count($array)) {
        return $array[0];
    }
    $last_item = array_pop($array);
    return implode($glue, $array) . $final_glue . $last_item;
}
?>

Код ставит запятую после тегов в WP (кроме последнего тега).Я хотел бы изменить цвет запятых.Как я могу это сделать?

1 Ответ

0 голосов
/ 10 октября 2018

Вы можете использовать что-то вроде этого:

$glue = '<span class="tagglue">,</span> ';

и использовать это в ваших implode() вызовах (любое место в вашем фрагменте).

Затем создайте объявление css, например:

.tagglue {color: blue;}

Реализация:

<?php
$posttags = get_the_tags();
if ($posttags) {
   $tagstrings = array();
   foreach($posttags as $tag) {
      $tagstrings[] = '<a href="' . get_tag_link($tag->term_id) . '" class="tag-link-' . $tag->term_id . '">' . $tag->name . '</a>';
   }
   echo array_to_string($tagstrings);
}

// For an extra touch, use this function instead of `implode` to a better formatted string
// It will return "A, B and C" instead of "A, B, C"
function array_to_string($array, $glue = '<span class="tagglue">, </span>', $final_glue = ' and ') {
    if (1 == count($array)) {
        return $array[0];
    }
    $last_item = array_pop($array);
    return implode($glue, $array) . $final_glue . $last_item;
}
?>

Я воспользуюсь этим изменением, чтобы связать несколько связанных страниц в StackOverflow (которые не предлагают окраску):

...