Возвращает родительские категории.
Функция ads_get_category_parents(..) – возвращает html код он представляет из себя путь типа категория / под категория / под под категория со ссылками или без ссылок. Работает аналогично стандартной WP get_category_parents get_category_parents отличается тем, что если вы указали родительскую рубрику объявлений то дальше нее функция не пойдет.
function ads_get_category_parents($id, $separator = ‘ / ‘,$link = 1, $noroot=0, $revers =0)
1 | function ads_get_category_parents($id, $separator = ‘ / ‘,$link = 1, $noroot=0, $revers =0) |
- $id – id рубрики с которой начинать выводить путь, для плагина ads wordpress актуально сюда будет поставить значение $ads_basecat
- $separator – разделитель рубрик
- $link – вывоить ссылки на категории или просто текст
- $noroot – выводить не выводить самую главную категорию, часто приходится использовать категорию-контейнер для группировки других категорий, так вот это чтобы контейнер не выводился.
- $revers – реверс категорий
Пример использования:
<? print ads_get_category_parents($_REQUEST[‘ads_basecat’]);?> //или <? print ads_get_category_parents( $_post->meta[‘ads_basecat’] );?>
123 | <? print ads_get_category_parents($_REQUEST[‘ads_basecat’]);?>//или <? print ads_get_category_parents( $_post->meta[‘ads_basecat’] );?> |
ads_get_parents_id – возвращает массив ID родительских категорий, это нужно для того чтобы затем при публикации добавить запись во все родительские категории, в стандартной сборке это реализовано в ads_config.php добавлено в функцию фильтра.
// прописываем запись во все родительские категории if((int)$post[‘ads_location’]>0){ $location_cat = ads_get_parents_id($post[‘ads_location’]); array_pop($location_cat); }else $location_cat = array(); $object_cat = ads_get_parents_id($_GET[‘ads_basecat’]); if(!$object_cat)$object_cat = array(); $post[‘post_category’] = array_merge($object_cat,$location_cat);
12345678 | // прописываем запись во все родительские категории if((int)$post[‘ads_location’]>0){ $location_cat = ads_get_parents_id($post[‘ads_location’]); array_pop($location_cat); }else $location_cat = array(); $object_cat = ads_get_parents_id($_GET[‘ads_basecat’]); if(!$object_cat)$object_cat = array(); $post[‘post_category’] = array_merge($object_cat,$location_cat); |