Переход при выборе пункта из выпадающего списка

11.11.2009
Давайте научимся создавать выпадающие списки с возможность включать в них активные ссылки. Таким образом, выбрав необходимый пункт, посетитель вашего сайта сможет перейти по ссылке, ассоциированной с этим пунктом.

Нижеприведенный способ отлично подходит для создания элемента навигации по сайту или же как способ выбора альтернативной языковой/географической версии сайта.

В начале вставим в код страницы скрипт, написанный на языке JavaScript, который будет отвечать за переход.

1
2
3
4
5
6
7
8
9
10
11
<script language="JavaScript" type="text/javascript">
<!--
function linklist(what){
var selectedopt=what.options[what.selectedIndex]
if (document.getElementById && selectedopt.getAttribute("target")=="new")
window.open(selectedopt.value)
else
window.location=selectedopt.value
}
-->
</script>

В третьей сточке у нас указывается имя функции ("linklist" в данном случае), которое можно задать произвольно, главное чтобы не странице не существовало ещё одной функции с таким же именем.

Далее вставляем сам код выпадающего списка.

1
2
3
4
5
6
7
8
9
<form name="menu">
<select name="sel" onChange="linklist(document.menu.sel)">
<option value="#">Выберите раздел для перехода</option>
<option title="Переход на главную страницу (откроется в новом окне)"
value
="http://www.redsimple.ru/" target="new">
Главная страница</option>

<option title="Переход к портфолио по сайтам" value="http://www.redsimple.ru/sites/">Сайты</option>
<option title="Переход к странице с изображениями" value="http://www.redsimple.ru/foto/">Фото</option>
<option title="Переход к архиву ссылок" value="http://www.redsimple.ru/links/">Линки</option>
</select>
</form>

Имя формы (<form name="имя_формы">) и имя списка (<form name="имя_списка" ... >) указываются произвольными, главное чтобы были уникальными. Самое важное - не напутать их в параметрах вызова нашей функции перехода. Прописывается вызов в атрибутах списка (вторая строчка):

onChange="имя_функции(document.имя_формы.имя_списка)"

В нашем случае onChange="linklist(document.menu.sel)"

Если прописать тэгу элемента (<option>)списка атрибут target="new", то ссылка будет открываться в новом окне (пятая строчка).

В атрибуте title="..." указываем всплывающую подсказку для ссылки (точно так же, как для тэга <a>).

Так же можно сделать, чтобы переход по ссылке осуществлялся не сразу, а после нажатия кнопки. Скрипт остается тем же самым:

1
2
3
4
5
6
7
8
9
10
11
<script language="JavaScript" type="text/javascript">
<!--
function linklist(what){
var selectedopt=what.options[what.selectedIndex]
if (document.getElementById && selectedopt.getAttribute("target")=="new")
window.open(selectedopt.value)
else
window.location=selectedopt.value
}
-->
</script>

А в коде списка меняем событие OnChange на OnClick

<form name="menu">
<select name="sel">
<option value="#">Выберите раздел для перехода</option>
<option title="Переход на главную страницу (откроется в новом окне)"
value="http://www.redsimple.ru/" target="new">Главная страница</option>
<option title="Переход к портфолио по сайтам" value="http://www.redsimple.ru/sites/">Сайты</option>
<option title="Переход к странице с изображениями" value="http://www.redsimple.ru/foto/">Фото</option>
<option title="Переход к архиву ссылок" value="http://www.redsimple.ru/links/">Линки</option>
<input type="button" value="Переход" onClick="linklist(document.menu.sel)">
</select>
</form>
 

Ну и конечно же смотрим, чтобы на одной странице не было функций, форм и списков с одинаковыми именами.

И ещё, визуальные редакторы Joomla режут JavaSrcipt, по этому необходимо сохранять материал с этим списком в режиме "Без редактора".
Что получилось:

Пример с переходом при выборе

Пример с переходом при нажатии кнопки

Новый поисковик Google Caffeine готов выйти в массы.

11.11.2009

Caffeine, новая версия поискового механизма Google, в ближайшем будущем станет доступна широкой аудитории. Google попросил всех желающих протестировать новый поиск в августе 2009 года. Теперь на сайте, где вебмастера могли посмотреть, как выглядит новый поиск от Google и оставить свои комментарии по поводу его качества, висит оповещение о том, что Google Caffeine будет выкладываться на основной поиск.

Это будет происходить постепенно – Google сначала выложит его на один из дата-центров; и то, какие пользователи, будут видеть новую выдачу, будет зависеть от штата и города, в котором они находятся. Со временем Google будет прибавлять количество дата-центров, и будет увеличиваться количество пользователей, которые будут получать результаты Google Caffeine.

Проект Caffeine подразумевает переработку архитектуры поиска, сокращение размера индекса Google, увеличение скорости выдачи результатов и вывод более полных данных о них. В теории, поисковая выдача при переходе на Caffeine измениться не должна, так как меняется схема обработки данных, а не критерии сортировки результатов.

В рамках Caffeine, в частности, Google переделает файловую систему. Нынешняя, Google File System, была создана в конце девяностых годов двадцатого века. Ее разработчики считали, что время отклика не так важно, как обработка пакетов данных. Новые веб-приложения Google требуют изменения приоритетов.


Стандартный SEF (ЧПУ) в Joomla 1.5

10.11.2009

Любому посетителю вашего ресурса будет приятно пройти по человеко-понятным ссылкам, нежели стандартным index.php?option=com_content&view=article&id=4&Itemid=8.

Для веб сайтов на Joomla 1.5 существует очень много разных sef-компонентов и seo-хаков, но сечас я хочу рассказать о довольно неплохом компоненте, который есть у вас сразу же после установки джумлы.

Для начала, чтобы полноценно использовать функции этого компонента, необходимо уточнить у вашего хостинг-провайдера, включен ли mod_rewrite на вашем сервере. Если нет, то необходимо попростить провайдера подключить его.

Далее идем по FTP в корень вашего сайта и переименовываем имеющийся там файл "htaccess.txt" в ".htaccess". Так же необходимо убедиться в том, что в этом файле содержаться следующие строчки:


#  mod_rewrite in use
 
RewriteEngine On

После этого идем в Панель управления вашего сайта на Joomla -> в "Общие настройки" -> закладка "Сайт" и в разделе "Установки Search Engine Optimization" выставляем следующие параметры:

Включить SEO - Да

Использовать mod_rewrite - Да

Последний параметр

Добавить суффикс к URL - Да

имеет смысл включать только если вы хотите, чтобы к адресам ваших страниц приписывался суффикс, соответствующий типу документа.
Я предпочитаю этого не делать.

Вообщем то вот и готово. Теперь ссылки вашего сайта будут иметь вид www.ваш_доме.ru/псевдоним_пункта_меню/псевдоним_материала.

Удачного теста!)


Joomla 1.5.15 - релиз безопасности.

05.11.2009

Выпущен очередной релиз безопасности — Joomla 1.5.15. В данной версии исправлено 60 ошибок, обнаруженных при тестировании Joomla 1.5.x (среди них две, связанные с безопасностью). Разработчики настоятельно рекомендуют обновиться до данной версии.


Собственная страница ошибок 404 для сайта на Joomla 1.5

01.11.2009

Ни для кого не секрет, что если пользователь неправильно вводит адрес какой-либо внутренней страницы вашего сайта, он попадает на страницу с ошибкой 404. Для Joomla 1.5 код этой страницы абсолютно неинформативен и бесполезен. Существует два варианта, как с пользой можно использовать эту страницу:

  1. Выводить какое-либо сообщение (например с контактами вашей фирмы) и форму обратной связи.
  2. Выводить автоматически генерируемую карту вашего сайта со ссылками на все разделы и материалы.

Рассмотрим оба варианта.

1. Страница со статичной информацией.

Для начала подготовим страницу, которую будем выводить вместо стандартной "Ошибка 404". Если такая страница уже существует (например раздел "Контакты" на сайте), то замечательно. Если же нет, то возможно создать страницу с контактной информацией и формой обратной связи при помощи компонента "Контакты" (этот компонент должен быть по-умолчанию установлен в Joomla 1.5).

После чего создайте ещё одно меню в "Менеджере меню" и добавьте пункт с выводом данного контакта. Если у вас включен стандартный SEF-компонент Joomla, то достаточно будет заполнить графу "Псевдоним" в настройках этого пункта меню (например "404") и созданная станица будет доступна по адресу www.ваш_сайт.ru/404/.

Ели же вы по каким-то причинам не используйте ЧПУ на вашем сайте, то данная станицы с контактами и формой обратной связи будет доступна по адресу www.ваш_сайт.ru/index.php?option=com_contact&view=contact&id=1, где после "id= " должен стоять идентификационный номер вашего контакта. Его можно посмотреть через админку в списке всех контактов (столбец "ID"). Если же контакт вы создавали впервые, то высока вероятность того, что ID=1.

Далее идем в ftp://ваш_сайт.ru/templates/system/error.php и удаляем всё из этого скрипта. Вместо этого пишем

1
2
3
4
<?php
      defined('JPATH_BASE') or die();
      echo file_get_contents(JURI::root().'/index.php?option=com_contact&view=contact&id=1');
?>

Таким образом, неправильно набрав адрес внутри вашего сайта, пользователь будет попадать на страницу www.ваш_сайт.ru/404/.

2. Страница с динамической картой сайта.

Карта сайта (или sitemap) - это страница, на которой находится список всех разделов, категорий и материалов вашего сайта на Joomla. Такую страницу необходимо иметь на своём сайте для достижения хотя бы двух целей:

  1. Удобство в навигации для посетителей.
  2. Сообщение поисковиками полного списка всех ваших материалов на сайте.

Но вручную создавать карту сайта не очень то удобно, особенно если каждый день появляется по несколько десятков новых материалов. Для выполнения этой работы для Joomla было написано достаточно много компонентов. Я же предпочитаю Xmap. Распространяется он бесплатно, существуют версии как для Joomla 1.0, так и для Joomla 1.5. скачать его можно с сайта производителя.

После установки компонента зайдите в его свойства и добавьте в список индексируемых меню все существующие меню вашего сайта. Теперь по адресу www.ваш_сайт.ru/index.php?option=com_xmap&sitemap=1 доступна HTML карта сайта (для посетителей) и по адресу www.ваш_сайт.ru/index.php?option=com_xmap&sitemap=1&view=xml&no_html=1 XML карта сайта для передачи её в поисковики. Нас же интересует первый вариант.

Теперь открываем файл ftp://ваш_сайт.ru/templates/system/error.php и удаляем всё из этого скрипта. Вместо этого вставляем следующий код:

1
2
3
4
<?php
      defined('JPATH_BASE') or die();
      echo file_get_contents(JURI::root().'/index.php?option=com_xmap&sitemap=1');
?>

Теперь любой посетитель, ошибившись при наборе адреса внутренней страницы вашего сайта, увидит список всех разделов и сможет быстро перейти в нужный.

Удачного теста! И не забывайте делать резервные копии изменяемых файлов!


Еще статьи...
<< < 1 2 3 4 5 6 7 > >>



align
cart
com_virtuemart
components
db f
default
echo
echo product
echo vm_lang
explorer
google
http www
index
index php
joomla
microsoft
option
php
php echo
php option
product
product_name
right
td td
th php
tpl
url
value
virtuemart 1
vm_lang
windows
www
адрес
будет
вашего
далее
идем
код
корзины
меню
нам
один
переход
пк
сайта
список
ссылки
текст
товара
файл

2009 2008 2007 2006 2005