Вывод записей по алфавиту в php (группировка по первым буквам)
Добрый день уважаемый автор!
Столкнулся с проблемой "внедрения разделителя", если так это можно назвать, при выводе записей в рубрике. Значит суть: есть определенное количество записей отсортированных по алфавиту (order=asc, orderby=title), и мне нужно вставлять что то вроде такого:
А
Запись начинающаяся на букву А - 1
Запись начинающаяся на букву А - 2
Запись начинающаяся на букву А - 3
...
Я
Запись начинающаяся на букву Я - 1
Запись начинающаяся на букву Я - 2
Запись начинающаяся на букву Я - 3
...
То есть выводить букву на которую начинается запись рубрики + разделитель (<hr/>) и под ним все записи начинающиеся на эту букву. Задача вроде бы не из самых сложных, но что то не могу понять с какой стороны бы его лучше зайти...
Может уже плагин есть готовый реализующий все это? Ну а если нет, то хоть "пните" в каком направлении думать/копать. Благодарю за внимание)
Вообще первую букву строки можно получить так:
Но это не работает когда у нас кириллица. Тут придется обходить. Как вариант можно использовать mb_substr().
Общий алгоритм для вас будет такой:
Выведет:
Конкретно для записей WordPress, так:
Выведет:
Благодарю за ответ, однако сделал немного по другому:
Все это в цикле while когда выводим записи... Не знаю насколько правильная такая реализация, но оно работает и клиент доволен
Тот же вопрос!
Надеюсь кому пригодится. Это обернутый в два div список из ссылок.
Привет. Искал что-то подобное уже неделю, спасибо за код. Можешь прислать уже с разметкой как у тебя на фото?
Это именно такая разметка как на фото, оборачиваешь в php и добавляешь классы свои и все ) Единственное, можешь для верной семантики линки в списки обернуть.