Вывод определенных категорий DLE

12
ExVood
На сайте с 02.07.2013
Offline
39
6948

Здравствуйте ув. спецы!

Есть 20 категорий, 10 из них типа - "красные машины, зеленые машины и т.д...", а остальные 10 - "легковые, грузовые и т.д.".

Статья может относиться сразу ко всем категориям, но необходим вывод ссылок только на категории типа - "легковые, грузовые и т.д.". Как это можно реализовать?

Q8
На сайте с 02.08.2012
Offline
31
#1

Здравствуйте!

Не спец, но думаю так (варианты):

1. Создать меню из ссылок на "остальные 10" категорий, а "10 из них типа" нигде не светить.

2. Удалить "10 из них типа" категории и перевести данные характеристики в теги.

3. Не имея представления, что подразумевается под выражением "но необходим вывод ссылок только на категории типа" сложно дать однозначный ответ. Где необходим вывод ссылок? Может структуру (под)категорий изменить?

дани мапов
На сайте с 06.09.2012
Offline
204
#2


$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (1,2) ORDER BY id");

$cat_menu = '<div><ul class="reset">';

while($row = $db->get_row($sql_result))
{
$cat_menu .= '<l><a href="'.$config['http_home_url'].'category/'.$row['alt_name'].'/"><strong>'.$row['name'].'</strong></a></li>';
}

$cat_menu.= '</ul></div>';


$tpl->set('{cat_menu}', $cat_menu);

В шаблоне вывести через тег {cat_menu}, в запросе подставить id нужных категорий.

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
ExVood
На сайте с 02.07.2013
Offline
39
#3
дани мапов:

$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (1,2) ORDER BY id");

$cat_menu = '<div><ul class="reset">';

while($row = $db->get_row($sql_result))
{
$cat_menu .= '<l><a href="'.$config['http_home_url'].'category/'.$row['alt_name'].'/"><strong>'.$row['name'].'</strong></a></li>';
}

$cat_menu.= '</ul></div>';


$tpl->set('{cat_menu}', $cat_menu);


В шаблоне вывести через тег {cat_menu}, в запросе подставить id нужных категорий.

Хм, ошибка запроса... :

Вероятно, SQL-запрос содержит ошибку. При наличии таковой, ниже будет выведена ошибка MySQL-сервера, облегчающая диагностику проблемы.

ERROR: Неизвестная пунктуация @ 18
STR: ->
SQL: $sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");


SQL-запрос: Документация

$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");

Ответ MySQL: Документация
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$sql_result = $db->query("SELECT id,alt_name,name FROM " . PREFIX . "_category W' at line 1
дани мапов
На сайте с 06.09.2012
Offline
204
#4

Не 10 версия DLE? Вместо PREFIX попробуйте префикс таблицы, обычно "dle".

Lakont
На сайте с 18.08.2010
Offline
100
#5

Если я правильно вас понял.

1. Создаете в шаблоне файл menu.tpl ( или любое другое название )

2. В main.tpl вставляем в нужное место:

{custom category="1,2,3,4,5" template="menu" aviable="global" from="0" limit="10" cache="yes"}

3. В файле menu.tpl создаем шаблон вывода ссылок. Например:

<li><a href="{full-link}">{title}</a></li>

4. В п.2:

category="###"

Где "###" - номера категорий через запятую.

limit="10"

Где "10" - кол-во ссылок, выводимых в блоке.

Вроде все.

ExVood
На сайте с 02.07.2013
Offline
39
#6

Я чет не понял...

Вероятно, SQL-запрос содержит ошибку. При наличии таковой, ниже будет выведена ошибка MySQL-сервера, облегчающая диагностику проблемы.

ERROR: Неизвестная пунктуация @ 18
STR: ->
SQL: $sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");


SQL-запрос: Документация

$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHERE id IN (33,20,21,22,23,24,25,26,27,28) ORDER BY id");

Ответ MySQL: Документация
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$sql_result = $db->query("SELECT id,alt_name,name FROM " . dle . "_category WHER' at line 1
дани мапов
На сайте с 06.09.2012
Offline
204
#7

Первая строка


$sql_result = $db->query("SELECT id,alt_name,name FROM dle_category WHERE id IN (1,2) ORDER BY id");
.....

Я спросил версия какая?

siv1987
На сайте с 02.04.2009
Offline
427
#8
ExVood:
Я чет не понял.

Мы тоже чет вас не очень поняли.

ExVood
На сайте с 02.07.2013
Offline
39
#9

.........

дани мапов:
Первая строка

$sql_result = $db->query("SELECT id,alt_name,name FROM dle_category WHERE id IN (1,2) ORDER BY id");
..............


Я спросил версия какая?

10 версия

ExVood
На сайте с 02.07.2013
Offline
39
#10
дани мапов:
Первая строка

$sql_result = $db->query("SELECT id,alt_name,name FROM dle_category WHERE id IN (1,2) ORDER BY id");


Я спросил версия какая?

Попробовал так:

$sql_result = $db->query("SELECT id,alt_name,name FROM dle_category WHERE id IN (20,21,22,23,24,25,26,27,28) ORDER BY id");

Ответ MySQL:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$sql_result = $db->query("SELECT id,alt_name,name FROM dle_category WHERE id IN ' at line 1
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий