[Закрыть]
 
popoff.donetsk.ua
Лишь истинно сильный и уверенный в себе человек не побоится продемонстрировать свою зависимость от других людей.
Начало | Новости | Статьи | Форум | Опросы | Карта сайта | Обо мне
popoff.donetsk.ua - Статьи - Программирование - Модули - all - all.url
Я это делаю
Персональное меню
Голосование
Деньги, либо любимое занятие? Постоянный адрес этого вопроса
Ваш возраст (не обязательно):

Введите целое число от 3 до 99.
Почему? (не обязательно):
Другие вопросы
Поиск по сайту
Реклама
Программное обеспечение любой сложности
koins.com.ua
Статистика

all.url

Постоянный адрес статьи

all.url - подсистема глобального управления гиперссылками

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

При описании гиперссылок используются следующие правила:

  • Строки, начинающиеся на url:// обрабатываются так, как если бы этого префикса не было.

    Этот префикс имеет смысл использовать, если в системе используется визуальный редактор.

    Этот префикс введён в систему для того, чтобы любые ссылки образовывали правильные самостоятельные ссылки и не изменялись визуальными редакторами путём добавления других префиксов.

    Этот префикс рекомендуется использовать всегда, когда нет другого префикса и ссылка не является ссылкой относительно корня сайта, которая начинается с /.

  • Строки, начинающиеся на http://, https://, mailto:, ftp:// и # вставляются на страницу без дополнительных преобразований. Такой вариант ссылки используется для явного указания текста гиперссылки и может быть использован для ссылки, например, на другие сайты. Ссылки, начинающиеся на # используются для добавления гиперссылок внутри текущей страницы. Гиперссылки часто могут показываться на разных страницах, поэтому будьте особенно внимательны, когда привязываете Вашу гиперссылку к какой-то конкретной странице.

  • Строки, не содержащие в себе двоеточия, являются ссылками относительно корня сайта с учётом текущего языка и набора шаблонов. Например, ссылка light при просмотре на моём сайте с языком и набором шаблонов по умолчанию перед вставкой на страницу будет всегда преобразовываться в http://popoff.donetsk.ua/light, а при просмотре, к примеру, в английском языке с набором шаблонов default - в http://popoff.donetsk.ua/en-default/light. Для ссылки на корень сайта с учётом текущего языка и шаблона следует писать так: /.

    Обратите внимание, что эти три ссылки эквивалентны: light, /light, url://light.

  • Ссылки, содержащие в себе двоеточие, являются привязанными к объектам системы. Правила описания этих ссылок приведены ниже. Результат обработки таких ссылок зависит от того, к какому объекту привязаны эти ссылки. При привязке к объектам перед двоеточием записывается имя службы, которая управляет этими объектами, а после двоеточия - идентификатор объекта внутри этой службы. Например, text:44 - в службе text (так называется служба управления статьями) ссылка на статью с идентификатором 44.

  • Ссылки, содержащие в себе двоеточие, могут содержать символ # и ссылку внутри страницы. К примеру, можно написать так: text:44#dic.name, где dic.name - это имя якоря в статье text:44, определённое на странице так: <a name=dic.name></a>.

  • Вместо двоеточие может быть поставлен пробел. Эта возможность оставлена для совместимости со старыми версиями скриптов и использовать её не рекомендуется.

В системе существуют следующие имена служб, управляющие объектами:

file.dir

Ссылка на каталог в службе управления файлами. В качестве идентификатора объекта указывается идентификатор каталога.

file.file

Ссылка на файл в службе управления файлами. В качестве идентификатора объекта указывается идентификатор файла.

forum

Ссылка на форум.

Если в качестве значения указано целое положительное число, то это значение интерпретируется как идентификатор сообщения форума.

В остальных случаях это значение интерпретируется как путь к теме форума.

Объекты forum являются устаревшими и их использование не рекомендуется.

forum.message

Ссылка на сообщение форума.

В качестве значения указывается идентификатор сообщения форума.

forum.topic

Ссылка на топик форума.

В качестве значения указывается идентификатор топика форума.

go

Ссылка на глобальный файл.

В качестве значения указывается имя глобального файла.

Глобальное имя файла - это символьное имя, которое преобразуется в ссылку. Обычно это ссылки на объекты системы, но администраторы могут добавить файлы, которые могут ссылаться куда угодно.

Глобальные имена файлов автоматически назначаются топикам и сообщениям форума и вопросам в службе опросов. В будущем глобальные имена файлов могут назначаться и другим объектам.

go.stat

Непрямая ссылка для подсчёта количества переходов по ссылке.

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

Например, ссылка:

go.stat:text:10

Будет указывать на статью с идентификатором 10 и для этой ссылки будет подсчитываться количество кликов.

Клики подсчитываются отдельно по каждому элементу заданной службы. То есть, если, например, в одном элементе ротатора у Вас будет две одинаковые ссылки, то количество кликов по ним будет учитываться как количество кликов по одной и той же ссылке. Если же эти ссылки - разные, или они одинаковые, но расположены, например, в разных элементах ротатора, то учёт кликов будет производиться отдельно.

img

Ссылка на картинку, которая была загружена при помощи службы централизованного управления загрузкой изображений.

Формат описания ссылки на объект:

img:[[service.]id.]idx

service - имя службы, в которой было загружено изображение. Если имя службы не указано, то изображение ищется внутри текущей службы.

id - идентификатор объекта, внутри которого было загружено изображение. Если идентификатор объекта не указан, то изображение ищется внутри текущего объекта.

idx - индекс картинки - порядковый номер изображения, начиная с 0. Этот номер показывается на форме загрузки изображений.

На текущий момент следующие объекты поддерживают загрузку изображений:

geo - расположение в службе управления географическими расположениями. Обычно в этих объектах загружаются географические карты расположений. В качестве идентификатора объекта указывается идентификатор географического расположения.

guide - элемент гида. Обычно здесь загружается реклама элемента гида. В качестве идентификатора объекта указывается идентификатор элемента гида.

jewel-nomen - номенклатура в программе «Ювелир». Обычно здесь загружается фотография элемента номенклатуры. В качестве идентификатора объекта указывается идентификатор номенклатуры.

news - служба новостей. Здесь загружается фотография, ассоциированная с элементом новостей. В качестве идентификатора объекта указывается идентификатор элемента новостей.

workbank.author - фотография участника в службе управления банком работ. В качестве идентификатора объекта указывается идентификатор участника.

workbank.material - фотография обложки материала в службе управления банком работ. В качестве идентификатора объекта указывается идентификатор материала.

text - служба управления статьями. В качестве идентификатора объекта указывается идентификатор статьи.

img.thn

Ссылка на иконку картинки, которая была загружена при помощи службы централизованного управления загрузкой изображений.

Формат описания ссылки на объект:

img.thn:[[service.]id.]idx[ param]

service - имя службы, в которой было загружено изображение. Если имя службы не указано, то изображение ищется внутри текущей службы. Список всех служб, которые поддерживают загрузку изображений, приведён при описании img.

id - идентификатор объекта, внутри которого было загружено изображение. Если идентификатор объекта не указан, то изображение ищется внутри текущего объекта. Перечень возможных значений этого идентификатора приведён при описании img.

idx - индекс картинки - порядковый номер изображения, начиная с 0. Этот номер показывается на форме загрузки изображений.

param - параметры иконки. Смысл этих параметров зависит от службы, в которой было загружено исходное изображение.

Ссылки на иконки изображений возможны только внутри служб, которые поддерживают загрузку изображений (список таких служб приведён при описании img) и поддерживают создание иконок для загруженных изображений.

На текущий момент следующие объекты поддерживают создание иконок для загруженных изображений:

text - служба управления статьями. В качестве идентификатора объекта указывается идентификатор статьи. В качестве параметра param может указываться 16-ричное значение цвета фона для созданной иконки. Если параметр задан, то всё изображение помещается в иконке. Пустое место на иконке при этом заполняется указанным цветом. Если параметр не задан, то вся иконка заполняется изображением. При этом изображение уменьшается по высоте иконки, если после уменьшения ширина изображения будет больше ширины иконки или по ширине иконки, если после уменьшения высота изображения будет больше высоты иконки. Часть изображения, которая не помещается на иконке, обрезается.

news

Ссылка на новость в службе новостей. В качестве идентификатора объекта указывается идентификатор элемента новостей.

protect

Ссылка должна быть защищённой.

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

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

Шифрование происходит методом замены одних символов на другие. Замене подлежат все маленькие буквы латинского алфавита, цифры и символы `./:`. Остальные символы остаются неизменными.

Не рекомендуется использовать в тексте ссылок большие буквы.

Это даёт некоторую защиту от спам-роботов, однако может создать некоторые неудобства для обычных пользователей. В частности, если JavaScript отключён, то пользователи не увидят ссылку, либо увидят неправильную ссылку.

Также, подобного рода защита не является 100% гарантией защиты и очень легко взламывается в случае, если автоматический сборщик адресов электронной был написан специально для такого способа шифрования и для такого способа замены, который был выбран для Вашего сайта.

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

Если у пользователя отключён JavaScript, то он увидит ссылку с неправильным текстом, ведущим, скорее всего, к системному сообщению «Сервер не найден...». Чтобы защищённая ссылка совсем не показывалась пользователю, для неё следует указать класс class=script.

Обратите внимание, что такие ссылки показываются не сразу, а только после полной загрузки страницы.

Пример правильно оформленной ссылки:

<a href="protect:mailto:spam@popoff.donetsk.ua" class="script">my mail</a>

Если JavaScript отключён, то эта ссылка не будет показана в браузере. Если JavaScript включён, то пользователь увидит в браузере такую ссылку:

my mail

В исходном тексте HTML-страницы будет записан следующий код:

<a href="protect:odan32rgfdo4f2f2ee0s2.i3gx0@d" class="script">my mail</a>

text

Ссылка на статью в службе управления статьями. В качестве идентификатора объекта указывается одно из двух:

- идентификатор статьи

- полный или неполный путь к статье. При указании неполного пути будет найдена статья с наиболее подходящим путём.

vote

Ссылка на опрос в службе управления опросами. В качестве идентификатора объекта указывается идентификатор опроса.

Последняя модификация: 28.12.07 00:47

Не проходите мимо! Оставьте Ваш комментарий в форуме! >>>