свободный выбор тегов + мультиселект при поиске
ответил сам себе на вопрос заданный где то ниже в блоге: как сделать так, чтобы при вводе новой информации была строчка свободного ввода терминов, а при поиске из вьюхи был мультиселект?
1. из вьюхи удалить фильтры
2. добавить аргументы типа Taxonomy ID в зависимости от количества отборов (в моем случае 2)
3. либо статичной страницей, либо в заголовке вьюхи прописать форму (сделано на базе какого то сниппета):
<?php
echo '';
//первый мультиселект
$vid = 1; // Номер словаря
$items = array();
$depth =-1; //глубина
$terms = taxonomy_get_tree($vid, 0, $depth, 1);
echo '';
foreach ( $terms as $term ) {
$count = taxonomy_term_count_nodes($term->tid);
echo 'tid.'">'.$term->name.'('.$count.')';
} /* end foreach */
echo'';
//второй мультиселект
$vid = 2; // Номер словаря
$items = array();
$depth =-1; //глубина
$terms = taxonomy_get_tree($vid, 0, $depth, 1);
echo '';
foreach ( $terms as $term ) {
$count = taxonomy_term_count_nodes($term->tid);
echo 'tid.'">'.$term->name.'('.$count.')';
} /* end foreach */
echo'';
echo'
';
?>
ну и соответственно сам текст view.php:
<?php
//может и изврат, но мне так больше нравится
//все что выбрано одновременно в одном мультиселекте собирается через "+" (или)
//все что выбрано в разных мультиселектах запихивается в разные аргументы через "/"
$s = (isset($_POST['gor'])
? (isset($_POST['dojo'])
? implode($_POST['gor'],'+').'/'.implode($_POST['dojo'],'+')
: implode($_POST['gor'],'+'))
: (isset($_POST['dojo'])
? implode($_POST['dojo'],'+')
: ""));
header('Location: ?q=view/'.$s);
exit();
?>
критику, подсказки как можно было бы сделать правильнее просто жду
- Блог
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Комментарии
а "вживую" где то можно посмотреть?
http://macat.org/view/dojos
тут мультисеклекты для отбора
там же есть ссылка на добавление секции, там свободный ввод тегов (стиль, город)
важная вещь
Эта штука будет работать в 6й версии?