Перейти к содержимому


Пользователь месяца
OlgaGetman OlgaGetman 1-й за Декабрь
Очков активности: 2100 10 тем, 170 сообщений, 7 баллов репутации
ТОП самых активных за этот месяц
  • Фотография Ixman
    #1

    Ixman (o5cat.ru)
    Очков активности: 195 Вне конкурса за определение пользователя месяца

  • Фотография Андрей WPMasterKZ
    #2

    Андрей WPMasterKZ (wpmaster.kz)
    Очков активности: 153 Вне конкурса за определение пользователя месяца

  • Фотография BLIK
    #3

    BLIK
    Очков активности: 126 0 тем, 21 сообщение, 4 балла репутации

  • Фотография OlgaGetman
    #4

    OlgaGetman
    Очков активности: 88.5 Вне конкурса за определение пользователя месяца

  • Фотография Cheaplinks
    #5

    Cheaplinks
    Очков активности: 54 0 тем, 18 сообщений, 2 балла репутации

  • Фотография Mandarin
    #6

    Mandarin
    Очков активности: 52.5 0 тем, 35 сообщений, 1 балл репутации

  • Фотография TimurR
    #7

    TimurR
    Очков активности: 49.5 Вне конкурса за определение пользователя месяца

  • Фотография Ilya74
    #8

    Ilya74
    Очков активности: 48 0 тем, 16 сообщений, 2 балла репутации

  • Фотография Constantine
    #9

    Constantine
    Очков активности: 48 5 тем, 17 сообщений, 1 балл репутации

  • Фотография magnet
    #10

    magnet (rbfxdirect.com)
    Очков активности: 30 0 тем, 10 сообщений, 2 балла репутации

  • Показать весь ТОП 10
Поддержите форум! =)
Апдейты
  • Яндекс ИКС: 25.12.2018
  • Яндекс выдача: 20.01.2019
Топ 5 участников по репутации


Как убрать символы по краям

#1 Punko

Punko
  • Неактивные
  • 6 сообщений
  • Репутация: 0
0

Отправлено 23 August 2017 - 09:01

Всем привет! Нужна помощь, есть код с помощью которого выводятся рубрики на сайте например рубрика 1, рубрика 2, после второй рубрики присутствует запятая вот мне её и нужно убрать (убрать символы по краям) Если кто разбирается в программировании подредактируйте пожалуйста код! Собственно сам код:

$categories = get_the_category($post_id);
foreach($categories as $category) {
if( !in_array( $category->term_id, array(63,68,65,66,64,67) ) ){ // проверяем, что это не категории с id1, id2, id3
echo '<a href="'. get_category_link($category->term_id) . '">' . $category->cat_name . '</a>, ';

 

 

  • 0

#2 timkab

timkab
  • Пользователь
  • 441 сообщений
  • Репутация: 82

Отправлено 23 August 2017 - 09:27

 $category->cat_name . '</a>, ';    - кажись вот тут, после закрывающегося тега </a> на данный момент сколько категорий, всего 2 отображается? 


  • 0

#3 Punko

Punko
    Topic Starter
  • Неактивные
  • 6 сообщений
  • Репутация: 0

Отправлено 23 August 2017 - 09:51

@timkab, Нет это запятая там и должна быть если её убрать то её вообще не будет, количество категорий выводиться по разному где одна где две, смысл в том что если две то запятая нужна только после первой, а после второй нет, также она выводиться если и одна категория.


  • 0

#4 miketomlin

miketomlin
  • Пользователь
  • 515 сообщений
  • Репутация: 109

Отправлено 23 August 2017 - 10:24

Вы правы, но по вашему алгоритму запятая будет появляться и в конце. Если в лоб, можете в вашем цикле сформировать массив ссылок, а потом вывести как-то так: echo implode(', ',$links);

 

Также можно первую (т.с. обязательную, чтобы не было пустого списка) ссылку вывести перед циклом, а в цикле уже размещать разделитель ', ' перед формируемой ссылкой, а не после.


  • 0


#5 ShowPrint

ShowPrint
  • Пользователь PRO
  • 3101 сообщений
  • Репутация: 863

Отправлено 23 August 2017 - 10:31

Также можно первую (т.с. обязательную, чтобы не было пустого списка) ссылку вывести перед циклом, а в цикле уже размещать разделитель ', ' перед формируемой ссылкой, а не после.
Хороший вариант, логичный...

 

@Punko, можете попробовать в 4-ю строку сделать вот такой:

echo '<a href="'. get_category_link($category->term_id) . '">' . $category->cat_name . '</a>'.
($category==$categories[count($categories)-1]?'':', '); 

вдруг заработает (поправлял "на коленках", не проверяя работоспособность)  :)


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#6 Punko

Punko
    Topic Starter
  • Неактивные
  • 6 сообщений
  • Репутация: 0

Отправлено 23 August 2017 - 10:42

@ShowPrint, Хорошо, попробую отпишусь.
  • 0

#7 miketomlin

miketomlin
  • Пользователь
  • 515 сообщений
  • Репутация: 109

Отправлено 23 August 2017 - 11:00

В данном случае лучше не использовать сравнение объектов. Можно попробовать сравнивать индекс (с count-1) или использовать оператор идентичности (===).


  • 0


#8 ShowPrint

ShowPrint
  • Пользователь PRO
  • 3101 сообщений
  • Репутация: 863

Отправлено 23 August 2017 - 11:22

@Punko, поставьте вместо двух равно (==) - три знака равенства (===). @miketomlin, плохого никогда не посоветует! )))


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#9 Punko

Punko
    Topic Starter
  • Неактивные
  • 6 сообщений
  • Репутация: 0

Отправлено 24 August 2017 - 03:08

Проверил сейчас нормально, спасибо за помощь!


  • 0

robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru