Автор
Иван
(@cotic2013)
Что здесь не правильно для вывода тегов через чекбокс?
при нажатии на поиск показывает вот такую ссылку
href=»http://limagi1/kontakty/?kvadratnye=on&submit=Submit+data#
<form method=get action="#" name="tagform">
<input type=checkbox name="kvadratnye">Квадратные<br>
<input type=checkbox name="tag2">tag2<br>
<input type=checkbox name="tag3">tag3<br>
<input type=checkbox name="tag4">tag4<br>
<input type=submit name=submit value="Поиск" onclick="tagsubmit(); return false;">
</form>
<script language=JavaScript><!--
function tagsubmit() {
var tags = '';
if (tagform.kvadratnye.checked) tags = 'kvadratnye';
if (tagform.tag2.checked) {
if (tags != '') tags = tags + '+';
tags = tags + 'tag2';
}
if (tagform.tag3.checked) {
if (tags != '') tags = tags + '+';
tags = tags + 'tag3';
}
if (tagform.tag4.checked) {
if (tags != '') tags = tags + '+';
tags = tags + 'tag4';
}
window.location = "http://limagi1/tag/' + tags + '&orderby=title&order=asc/';
}
//--></script>
Модератор
Юрій
(@yube)
"http://limagi1/tag/'
Непарные кавычки — открыли двойную, закрыли одинарную.
Автор
Иван
(@cotic2013)
Точно, спасибо!
Теперь выдает http://limagi1/tag/kvadratnye+tag2&orderby=title&order=asc/
При этом пишет что не найдено.
А вот при выборе из стандартного виджета находит сразу но только одну метку и ссылка такого плана, http://limagi1/tag/kvadratnye/
Возможно нужно по другому прописывать теги, не просто kvadratnye? Сам не разберусь с этой формой.
PS. Пользуюсь только этим скриптом дополнительных не использую, это все что было в описании для работы…
Модератор
Юрій
(@yube)
Автор
Иван
(@cotic2013)
Помогло, большое спасибо! если можно подскажите пожалуйста еще, как нужно подправить код, по отдельности выдает в поиске, а сразу 1+2 тег не как пишет нет такого… Перепробовал, не как не пойму где рыть что писать…
Как пример есть «kvadratnye->Квадратные» и «test->Тест»
<form method=get action="#" name="tagform">
<input type=checkbox name="kvadratnye">Квадратные<br>
<input type=checkbox name="test">Тест<br>
<input type=checkbox name="tag3">tag3<br>
<input type=checkbox name="tag4">tag4<br>
<input type=submit name=submit value="Начать поиск" onclick="tagsubmit(); return false;">
</form>
<script language=JavaScript><!--
function tagsubmit() {
var tags = '';
if (tagform.kvadratnye.checked) tags = 'kvadratnye';
if (tagform.test.checked) {
if (tags != '') tags = tags + '+';
tags = tags + 'test';
}
if (tagform.tag3.checked) {
if (tags != '') tags = tags + '+';
tags = tags + 'tag3';
}
if (tagform.tag4.checked) {
if (tags != '') tags = tags + '+';
tags = tags + 'tag4';
}
window.location = 'http://limagi1/tag/' + tags + '/?orderby=title&order=asc/';
}
//--></script>
На давно забытом форуме, писали что этот код рабочий, но мне кажется что то простое я упускаю и не вижу что может быть…
Модератор
Юрій
(@yube)
tag1+tag2 задает условие «и«, т.е. это выборка постов, у которых есть обе метки. По «или«, если память не изменяет, надо собирать через запятую:
http://limagi1/tag/kvadratnye,tag2/?orderby=title&order=asc
Автор
Иван
(@cotic2013)
Теперь находит, через запятую, еще раз спасибо!
Уже не удобно спрашивать, поясните пожалуйста еще!
Как можно задать что бы выводились только те где есть обе метки, а сейчас находит все статьи. Или правильно будет как сейчас?
Автор
Иван
(@cotic2013)
Люди добрые подскажите, пожалуйста, сейчас сортировка по имени, может есть order что бы выводить сразу те статьи где присутствуют сразу большее количество отмеченых тегов, а ниже 2 и в конце вообще одна метка.
Или как скрипт выше можно соединитель с поиском по сайту что бы находило только те теги что стоит отметка, а не все где есть хотябы одно слово, как сейчас…
Или этот же скрипт переделать вместо тегов, поиском по сайту вставленных слов?
Заранее спасибо!