Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Шаблоны (TPL) Как сделать вывод ID (цифрой) категории в tpl файлах?

Как сделать вывод ID (цифрой) категории в tpl файлах?


     06.04.2015    Шаблоны (TPL), Общие вопросы по PHP, Хаки    1195

вопрос
Добрый вечер, кто может подсказать как реализовать.
Суть в том, что мне нужно выводить топовые материалы с категорий.
Категорий много, и вручную делать для каждой вот так, не очень удобно:

{custom category="2" days="15" template="vid_3" aviable="cat" navigation="no" from="0" limit="10" fixed="yes" order="reads" sort="desc" cache="yes"}


Я хочу, чтоб было допустим вот так {category-id} выводить ид категории

И в коде выводить вот так: category="{category-id}"


{custom category="{category-id}" days="15" template="vid_3" aviable="cat" navigation="no" from="0" limit="10" fixed="yes" order="reads" sort="desc" cache="yes"}


И чтоб когда человек зашел в категорию, подставлялся в custom id категории и показывало, топовые материалы с нее.


Ответил: werty1001


С {category-id} работать не будет.

1. Открыть /engine/modules/functions.php
2. Найти
if( preg_match( "#idexclude=['\"](.+?)['\"]#i", $param_str, $match ) ) {

3. Вставить перед
    if( preg_match( "thiscategoryi", $param_str, $match ) ) {        
        $custom_category=$cat_info[$category_id]['id'];
        $where[] = "category IN ('" . $custom_category . "')";
    } else $custom_category = "";

4. В main.tpl вставить
{custom thiscategory days="15" template="vid_3" aviable="cat" navigation="no" from="0" limit="10" fixed="yes" order="reads" sort="desc" cache="yes"}

Комментарии пользователей (9)

werty1001
18

56 | 30

werty1001 - 6 апреля 2015 21:38 - Юзер

Парсер скушал, вместо "thiscategoryi" должно быть "#thiscategory#"

csgamee
35 | 2

csgamee - 6 апреля 2015 22:48 - Юзер

Спасибо за помощь, только вот у меня проблема, этой строки нету
if( preg_match( "#idexclude=['\"](.+?)['\"]#i", $param_str, $match ) ) {


DLE 10.2 у меня.

werty1001
18

56 | 30

werty1001 - 6 апреля 2015 23:25 - Юзер

Тогда вставить перед этой
if( preg_match( "#category=['\"](.+?)['\"]#i", $param_str, $match ) ) {

csgamee
35 | 2

werty1001
18

56 | 30

werty1001 - 7 апреля 2015 00:05 - Юзер

Новости в данной категории точно есть? И еще не забудьте почистить кеш.

csgamee
35 | 2

csgamee - 7 апреля 2015 00:08 - Юзер

Да есть) кеш само собой чистил.

werty1001
18

56 | 30

werty1001 - 7 апреля 2015 00:35 - Юзер

Тогда не знаю, на 10.4 вроде работает. Ладно, потом гуру посмотрят и подскажут точнее, я в php не очень пока.

csgamee
35 | 2

csgamee - 8 апреля 2015 23:23 - Юзер

Кто поможет решить вопрос? можно за символическую оплату.

csgamee
35 | 2

csgamee - 9 апреля 2015 16:05 - Юзер

http://sandev.pro/web/48-rasshirenie-funkcionala-tega-123custom.html вот нашел решение, может кому-то будет нужно.
Все работает))))

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

 23.01.2014 Дмитрий_Валерьевич  Шаблоны (TPL)