Мы будем Вам признательны, если Вы поддержите проект Open SLAED и используя Ваши возможности, разместите наш пресс-релиз на страницах своих сайтов, проектов, форумов, блогов. Текст пресс-релиза, возможно, видоизменить под Ваш формат, не искажая смысл. Пресс-релиз можно взять на данной странице.
Объём сохраняемой текстовой информации в базе данных имеет определённые ограничения. Для того, что бы не перегружать базу и тем самым не влиять отрицательным образом на скорость работы, системой устанавливаются стандартные размеры для текстовых полей с максимальной длиной 65535 символов.
В некоторых случаях, при публикации больших текстов с содержанием более 65535 символов, есть необходимость увеличить размер сохраняемой информации до максимума.
Для этого войдите в: Панель администратора >> База данных >> Запрос в базу данных
Выполните следующий пакет запросов:
Типы полей и их размеры
BLOB, TEXT - Максимальный размер 65535 символов.
MEDIUMBLOB, MEDIUMTEXT - Максимальный размер 16777215 символов.
LONGBLOB, LONGTEXT - Максимальный размер 4294967295 символов.
Иногда возникает необходимость перенаправления определённого посетителя, допустим пришедшего с определённого сайта или определённой страны, на определённую страницу. Данную потребность, возможно, реализовать стандартными средствами системы. В качестве примера, ниже мы рассмотрим несколько вариантов.
Перенаправление посетителя пришедшего с определённого сайта
1. Войдите в панель управления системой, отдел: Панель администратора >> Редактор
2. В файл внедрения в шапку системы: config_header.php
Добавляем следующую запись:
$reflink - Отвечает за адрес нужного нам сайта
Заместо: slaed.net укажите свой домен.
$metlink - Отвечает за страницу, куда будет перенаправлен посетитель
Заместо: news.html укажите необходимую страницу или сайт.
Перенаправление посетителя из определённой страны
1. Войдите в панель управления системой, отдел: Панель администратора >> Редактор
2. В файл внедрения в шапку системы: config_header.php
Добавляем следующую запись
$userlang - Отвечает за нужную нам страну
Название страны не должно быть произвольным и должно соответствовать стандартам использования класса. Правильность написания той или иной страны можно проверить в переменной $COUNTRY_NAMES файла: function/geo_ip.php
$metlink - Отвечает за страницу, куда будет перенаправлен посетитель
Заместо: news.html укажите необходимую страницу или сайт.
Если вы заходите на наш сайт со своего домашнего компьютера, то в этом нет никакой необходимости. Наоборот, каждый раз, когда вы будете обращаться к страницам нашего сайта, система автоматически опознает вас. Другое дело если вы входите на сайт с «чужого» компьютера, например, в Интернет-кафе, то вам обязательно нужно сделать выход в конце работы. Будьте внимательны! Посторонние люди могут получить полный доступ ко всем вашим данным и смогут выступать от вашего имени. Я рекомендую в таких случаях просто удалять “Cookies” в конце работы, используя функцию браузера.
Представляю Вашему вниманию новую версию системы SLAED CMS 4. Данная версия является первым представителем четвёртого поколения системы. Основными отличительными чертами данной версии является полный переход на открытый исходный код, это значит, что технология кодирования Zend больше применятся, не будет. Произведён полный переход системы с учётом всех стандартных модулей в режим работы Register globals: Off, что в свою очередь значительным образом повышает уровень безопасности. Уже сегодня произведена полная модификация всех участков системы для стабильной работы в будущем, на новой версии PHP 6. Не смотря на это, система так же стабильно работает на версии PHP 5. Значительным образом модифицировано оформление системы, над этим работал наш партнер, студия профессионального дизайна „Centroarts“, которые привели всю систему к общему виду и предали ей свой уникальный стиль. С более детальной информацией Вы можете, ознакомится в подробном просмотре.
• Модификации подверглась функция сессий посетителей проекта, переписана логика удаления более не присутствующих посетителей. Сокращен глобальный запрос в базу данных, снижена время генерации страниц. Таким образом, ядро системы делает всего два запроса в базу данных.
• Модифицирована функция определения даты последнего посещения сайта пользователем. Теперь запись последнего визита обновляется при покидании сайта пользователем не зависимо от того, вышел пользователь или нет.
• Написана новая функция определения и отслеживания посетителей проекта. Используется технология AJAX с внедрением в блок информации пользователей и блок наблюдения администратора. Теперь Вы можете производить обновление информации без перезагрузки всей страницы одним кликом мышки.
• Исправлена недоработка в системе блокировке при добавлении блокируемого адреса. Ошибка возникала в случае, если Вы не указывали причину блокировки.
• Значетельным изменения подверглась административная часть модуля магазина, исправлены неточности. Модифицированы и сокращены некоторые функции, улучшена визуальная часть.
• Модифицирована партнерская часть модуля магазина, доработаны некоторые компоненты, модифицирована визуальная часть.
• В связи с изменениями магазина системы, внесены корректировки и модификации в пользовательский модуль. Доработаны некоторые участки, улучшена визуальная часть. Функции и визуальная часть модифицированы для лучшего интуитивного восприятия процессов.
• Добавлена новая функция свёртывания и развёртывания окон, которая запоминает установленное Вами положение. Данная функция внедрена повсеместно, там, где в этом есть необходимость.
• Модифицирован файловый каталог системы, добавлено дополнительное текстовое поле для подробного просмотра. Удалена фильтрация и сокращения текста при общем просмотре модуля.
• Модифицирован каталог сайтов системы, добавлено дополнительное текстовое поле для подробного просмотра. Удалена фильтрация и сокращения текста при общем просмотре модуля.
• В конфигурациях системы добавлена возможность установки количества отображаемого материала в модулях панели администратора системы.
• Модификации подвергся новостной модуль системы, добавлены дополнительное поля для сохранения IP адреса разместившего новость, что даёт возможность более точно отследить автора. Добавлено поля для идентификационного номера, в случае если новость добавлена зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в новостях автоматически. Если автор статьи не является зарегистрированным пользователем сайта, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• Реализована новая функция определения географического местонахождения посетителей проекта. Страна посетителя определяется по его IP адресу. Из всех IP адресов существующих в мире, система способна распознать 98% провайдеров и их стран, откуда, с какой страны пришел посетитель. В зависимости от установки, местонахождение посетителя может отображаться как флаг, название или как код страны. В конфигурациях системы предусмотрена возможность отключения данной функции, в случае если в ней нет необходимости.
• Определители географического местоположения посетителей в виде флагов установлены в блоки наблюдения посещаемости сайта администратором, а так же в пользовательском информационном блоке, в профиле пользователя при его просмотре.
• Произведена полная смена графических элементов системы на формат PNG 24, который поддерживает постепенную прозрачность. Это даёт нам возможность использования стандартных графических элементов системы в тёмных и любых других темах оформления.
• Внедрена новая функция определения стандартных графических элементов системы, что даёт возможность создания уникальных компонентов для каждой темы оформления. Система автоматически определяет, если в теме такие графические элементы присутствуют, использует их, если нет, использует стандартные.
• Изменены две функции, отвечающие за оформление используемые, как правило, в модулях системы. Старое название: OpenTable(); CloseTable(); Новые названия: open(); close(); Работоспособность модулей в которых используется старый вариант не пострадает, модули будут работать как обычно.
• Название всех файлов, модулей скриптов системы приведены к общему виду, теперь в названиях используется только нижний регистр. Функционал старых модулей, файлов и скриптов не пострадает.
• Добавлена возможность редактирования основного почтового шаблона системы, который используется для отправки исходящей почты, осведомлений и сообщений.
• Полностью модифицирован отдел администраторов системы, добавлена возможность автоматического осведомления с отправкой пароля и логина на E-Mail, при создании нового администратора.
• Модифицированы все модули основной панели администратора для работы в безопасном режиме Register globals: Off.
• В отделе «База данных» основной панели администратора добавлена возможность работы с базой данных непосредственно через систему. Теперь Вы можете произвести нужные вам запросы, удалять, модифицировать или добавлять таблицы.
• При входе пользователя в собственный профиль на сайте, реализован анализатор ошибок с последующим отображением, в случае ввода неправильного логина или ошибочного секретного кода.
• Реализована новая функция подсказок в полях, где используется имя пользователя. Функция работает на базе технологии AJAX, производит поиск по базе пользователя в автоматическом режиме по ходу ввода букв имени в строку. Это значительно сокращает поиск и помогает, в случае если вы не помните точно полного имени пользователя. Данная возможность используется в системе повсеместно, где в этом есть необходимость.
• Глобальным образом переработана система пунктов, добавлены новые модули, и действия за которые происходят начисление. Проработан сам модуль, языковые константы, функции.
• Модифицирован модуль топ пользователей. Добавлен подробный просмотр персональной информации пользователя при наведении курсора, на его ник.
• В панели управления пользователями установлена возможность обнуление значения всех пунктов пользователей системы. Активация подсчётов пунктов пользователей перенесена в отдел конфигураций пользователями.
• Модифицирована функция загрузки файлов в модуле альбома, теперь производится переименование файла, в случае если файл имеет в названии буквы русского алфавита, или в названии используется верхний регистр.
• Модифицирована функция определения размера загружаемых файлов в модуле альбома. Если размер не был определён при загрузке, он будет определён автоматически при первичном редактировании поступивших файлов администратором.
• Модификации подвергся каталог файлов системы, добавлено поля для идентификационного номера, в случае если новость добавлена зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в файлах автоматически. Если автор файла не является зарегистрированным пользователем сайта, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• В модуле каталога файлов, при редактировании добавлен автоматический перенос загруженных ранее файлов посетителями проекта, а так же уже существующих файлов. Перенос возможен в основную директорию, а так же в директории входящие в основную.
• Модификации подвергся модуль вопросов и ответов, добавлены дополнительное поля для сохранения IP адреса разместившего вопрос, что даёт возможность более точно отследить автора. Добавлено поля для идентификационного номера, в случае если новость добавлена зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в вопросах и ответах автоматически. Если автор вопроса и ответа не является зарегистрированным пользователем сайта, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• Модифицированы некоторые функции, отвечающие за оформление компонентов, участки темы оформления, а так же CSS классы стилей. Теперь у вас есть возможность уникального оформления рейтинг-баров персонально для каждого модуля. Более широкая возможность оформления ссылок на страницы (Pagelinks), а так же кнопок ББ редактора.
• Модификации подвергся модуль анекдотов, добавлены дополнительное поля для сохранения IP адреса разместившего анекдот, что даёт возможность более точно отследить автора. Добавлено поля для идентификационного номера, в случае если новость добавлена зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в анекдотах автоматически. Если автор анекдота не является зарегистрированным пользователем сайта, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• Добавлена возможность предпросмотра анекдота при публикации пользователем. Визуально модифицирован код функции конфигурации административной части модуля анекдотов.
• Модификации подвергся модуль каталог сайтов. Добавлено поля для идентификационного номера, в случае если новость добавлена зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в каталоге сайтов автоматически. Если автор сайта не является зарегистрированным пользователем, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• Модификации подвергся каталог медиа файлов, добавлены дополнительное поля для сохранения IP адреса разместившего релиз, что даёт возможность более точно отследить автора. Добавлено поля для идентификационного номера, в случае если релиз добавлен зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в медиа каталоге автоматически. Если автор релиза не является зарегистрированным пользователем сайта, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• Модификации подвергся модуль статей, добавлены дополнительное поля для сохранения IP адреса разместившего статью, что даёт возможность более точно отследить автора. Добавлено поля для идентификационного номера, в случае если статья добавлена зарегистрированным пользователем сайта. Так образом ник пользователя, в случае его смены, изменится в модуле статей автоматически. Если автор статьи не является зарегистрированным пользователем сайта, переход к профилю при нажатии на ник более не возможен. Таким образом, возможность просмотра профиля есть только для зарегистрированных авторов.
• Модифицирован модуль поиска с учётом новых возможностей определения и работы с пользователями. Изменён способ вывода найденной информации, теперь она выводится с применением шаблона оформления темы, что даёт возможность изменения оформления персонально для каждой темы оформления.
• Установлены и интегрированы в систему два дополнительных HTML Редактора (Spaw 2, FCKeditor) с возможностью загрузки и управлением файлов в стандартной директории системы. Выбор редактора производится в настройках системы.
• Модифицировано ЧПУ системы, модифицированы стандартные правила для универсального использования, добавлены новые правила для модуля поиска.
• Модифицирован транслятор RSS каналов. Добавлены новые возможности, подкорректирован вывод информации. Используемые переменные приведены к общему виду. Добавлены новые правила ЧПУ, которые преобразуют все каналы вещания.
• Реализована возможность уникального использования основного шаблона персонально для каждой категории. Это значит, что Вы можете производить смену главного шаблона не только в зависимости от модуля, но и в зависимости от категории.
• Значительно модификации подвергся модуль установки и обновления системы. Облегчена возможность подключения в случае использования другой базы данных, не MySQL. Полностью обновлена визуальная часть, приведена к общему виду и стилю системы.
• Написана новая тема оформления панели администратора системы, а так форма входа и установки администратора. Исправлены некоторые неточности, модифицированы функции основного и второстепенных администраторов. Панель администратора и все её компоненты для более удобной их модификации дизайнером, вынесены в HTML шаблоны. Административный отдел приведён к общему стилю.
• Модифицирован модуль обратной связи учётом возможности отображения администраторов в зависимости от языка использования.
Новую версию можно будет приобрести, начиная с 20.03.2008 в магазине нашего проекта. Обновление для актуальных пользователи версий 3.1, 3.2, 3.3, 3.4, 3.5 Pro выйдет немного позже. Более детальная информация по обновлению будет опубликована в отделе для клиентов.
Вышла в свет русская версия Internet Explorer 7. Обозреватель Internet Explorer 7 обеспечивает, улучшенную навигацию благодаря вкладкам, поиск в Интернете прямо из панели инструментов, расширенные возможности печати, легкое обнаружение, чтение и подписку на каналы RSS и многие другие возможности.
Упрощенная работа пользователей
Рабочее окно обозревателя Internet Explorer 7 реорганизовано, чтобы сделать его заметно проще и удобнее, а также убрать все ненужные элементы. Эти улучшения максимально увеличивают область экрана, предназначенную для отображения веб-страниц, что упрощает выполнение ежедневных задач при работе в Интернете.
Расширенные возможности печати
Обозреватель автоматически настраивает масштаб печатаемой страницы таким образом, чтобы ее размеры не превышали размеров бумаги, на которой эта страница будет напечатана. Обозреватель Internet Explorer 7 также обеспечивает многостраничный просмотр печати с возможностью настройки полей и изменения размера текста для предотвращения обрезки документа, а также функцией печати только выделенного текста.
Строка мгновенного поиска
Поиск в Интернете с помощью выбранной поисковой системы теперь можно осуществлять из строки поиска на панели инструментов, что исключает необходимость иметь несколько отдельных панелей инструментов. Поставщика услуг поиска можно выбрать из выпадающего списка. Также можно добавить других поставщиков услуг.
Центр избранного
Центр избранного обеспечивает легкий и быстрый доступ к избранному, группам вкладок и истории просмотра, а также подписке на RSS-каналы. Его можно развернуть при необходимости или закрепить на месте для более простого доступа.
RSS-каналы
Обозреватель автоматически обнаруживает RSS-каналы на веб-узлах и сообщает об этом с помощью значка на панели инструментов. Один щелчок мышью по значку позволяет просмотреть и при необходимости подписаться на RSS-канал веб-узла, а впоследствии получать уведомления об обновлении содержимого. Читайте RSS-каналы прямо из обозревателя, ищите важные сообщения и осуществляйте фильтрацию с помощью поисковых запросов или категорий, относящихся к конкретному веб-узлу.
Просмотр веб-страниц с помощью вкладок
Просматривайте несколько веб-узлов в одном окне обозревателя. Переключайтесь между веб-узлами с помощью вкладок в верхней части окна обозревателя.
Быстрые вкладки
Обозреватель обеспечивает легкий выбор и навигацию по вкладкам благодаря отображению эскизов всех открытых вкладок в одном окне.
Группы вкладок
Вкладки можно сгруппировать и сохранить в логические категории, что позволяет открывать несколько вкладок одним щелчком мыши. Определенную группу вкладок можно назначить домашней. Таким образом, вся группа вкладок будет открываться каждый раз при запуске обозревателя Internet Explorer из меню «Пуск».
Настройка масштаба страниц
Увеличивайте текст и графику на отдельных страницах, чтобы сконцентрироваться на определенном содержимом или сделать содержимое более доступным для людей с ослабленным зрением.
Все, изложенное мной, является плодом более чем 3-летнего опыта в области оптимизации сайтов и практических наблюдений. Таким образом, мои рекомендации будут носить в большей степени субъективный практический характер, чем теоретический. Сразу предупреждаю, что все мои советы актуальны для владельцев серьезных тематических ресурсов, а не всяких дурацких развлекательных порталов, цель которых – привлечь абы кого, чтобы только заработать баннерные показы или накрутить счетчик.
Продвижение сайта - Заголовки
Итак, я открываю серию статей, посвященных продвижению интернет-сайта в сети. Все, изложенное мной, является плодом более чем 3-летнего опыта в области оптимизации сайтов и практических наблюдений. Таким образом, мои рекомендации будут носить в большей степени субъективный практический характер, чем теоретический. В моих статьях я не буду тратить время на всякие системы накрутки счетчиков, обмена посетителями и прочую подобную фигню. Продвижение в моем случае прежде всего означает оптимизацию страниц сайта под поисковые роботы + различные советы и тонкости из практики. Надеюсь, вам будет интересно и кому-нибудь мои советы даже помогут в увеличении целевой аудитории, посещающей ваш сайт.
Будем считать, что вы хорошо владеете программированием на HTML и знаете, для чего нужны различные тэги и куда их пихать, поэтому на технической стороне я не буду заострять внимание. Говоря о заголовке, я имею в виду содержание страницы от тэга ‹HEAD› до тэга ‹/HEAD›. Напомню, что структура стандартной страницы представляет из себя примерно следующее:
Как раз о верхней части страницы и пойдет речь в этой статье, т.е. подробно о тегах TITLE и META.
TITLE
Надеюсь, вы уже догадались, что TITLE – это титул страницы. Пользователь видит его в верхней части окна браузера. Тэг TITLE прежде всего имеет важное значение при оптимизации страницы под поисковые машины. Все без исключения поисковые роботы обрабатывают значение TITLE и в соответствии с его содержанием формируют перечень ключевых слов и фраз страницы. Таким образом, титул должен отражать реальное содержание страницы или сайта. Однако при заполнении этого параметра многие совершают следующие ошибки:
Начинают перечислять перечень ключевых слов. Современные поисковые роботы стали гораздо сообразительней, чем раньше и в большинстве случаев им удается распознать, что в титуле написана белиберда, а не четкое и внятное содержание страницы. Это может привести к тому, что поисковик проигнорирует титул при индексации;
Вбивают текст размером с первый том "Капитала" Карла Маркса. Дело в том, что поисковые роботы серьезно относятся к содержимому тэга TITLE, но обычно индексируют первые 25-50 символов. Таким образом, оставшаяся писанина только напрасно увеличивает объем страницы и время загрузки;
Перегружают титул спецсимволами (запятыми, кавычками, тире и пр. знаками). Спецсимволы в TITLE не индексируются поисковыми роботами, так что их использование лучше свести к минимуму, или вообще постараться обойтись без них;
Пишут содержание TITLE прописными (заглавными) буквами. Многие поисковики этого не любят. Так что лучше их не злить понапрасну и писать нормально. От того, что вы напишете титул прописными, заметней для поисковика вы не станете!
В общем, рекомендую перед заполнением тэга TITLE как следует подумать, о чем ваш сайт и выразить его тематику в 2-3 веских словах в виде словосочетания.
META
О тэге META у нас будет разговор серьезный. Прежде всего необходимо понять, что META-тэги являются важной составляющей в странице и их правильное использование может как поднять популярность страницы, так и оказать обратное воздействие.
META-тэги делятся на две группы: контролирующие отображение страницы браузером и служащие ценной информацией для поисковых машин. Первая группа тэгов вводится следующим образом:
‹META HTTP-EQUIV="параметр" CONTENT="значение"›
Я не буду заострять внимание на этом виде META-тэга, т.к. моя задача – рассказать, как сделать страницу доступной, а не как сделать, так, чтобы она правильно отображалась браузером. Но чтобы вы поняли, для чего нужны эти META-тэги, приведу несколько примеров их использования:
Указывает, в какой кодировке должна выводиться страница (в данном случае: windows-1251). Также возможны значения (в поле CHARSET): koi8-r, iso-8859-5, iso-8859-1 и т.д.
Указывает типы переменных, содержащихся на странице (в данном случае: текст и JavaScript™). Возможные значения: text, javascript, php и т.д.
‹META HTTP-EQUIV="pragma" CONTENT="no-cache"›
или
‹META HTTP-EQUIV="no-cache›
или
‹META HTTP-EQUIV="cache-control" CONTENT="no-cache"›
или
‹META HTTP-EQUIV="expires" CONTENT="wed, 2 mar 1996 00:00:05 GMT"›
Запрет на кэширование браузером страницы. Тэг актуален в том случае, если содержимое страницы часто меняется. В этом случае браузер будет при каждом обращении к странице заново ее кэшировать.
Сообщает браузеру язык, на котором написана страница (в данном случае: английский и русский). Возможно указать и один язык (например, только "ru") или несколько через запятую. Сразу скажу, что этот тэг актуален только для очень старых браузеров, а новые на него внимания не обращают, так что лучше его избегать.
Принудительно осуществляет переход на указанную страницу через определенное количество секунд (в данном случае: переход на страницу "http://yandex.ru/index.html" через 5 секунд).
Существует еще с десяток META HTTP-EQUIV тэгов, но, на мой взгляд, они бестолковые и не оказывают существенного влияния на отражение страницы. Или предназначены для устаревших версий браузеров, которые практически уже не используются. Советую не увлекаться такими тэгами и обратить внимание прежде всего на первый пример, выдающий кодировку документа – он является обязательным; остальные же используйте только по необходимости!
Второй тип META-тэгов вводится следующим образом:
‹META NAME="параметр" CONTENT="значение"›
Эти META-тэги никак не влияют на отображение страниц сайта, но играют важную роль в предоставлении информации поисковым роботам и указывают на алгоритм индексирования. В общем, служат чем-то вроде паспорта для страницы. Поскольку известно, что основная доля трафика генерируется поисковыми роботами, необходимо отнестись с полным сурьезом к заполнению значений этих тэгов. Ниже я привожу примеры значений с необходимыми комментариями:
‹META NAME="description" CONTENT="..."›
В поле CONTENT вы должны ввести краткое описание документа. Ни в коем случае не строчите трактат длинной в жизнь и не перечисляйте ключевые слова! Правильным будет написание небольшого предложения длинной до 200-250 символов, в котором повествуется, о чем ваш сайт (страница) и что на нем можно найти. Избегайте большого количества спецсимволов, слов из прописных букв и бессмыслицы (например, "Это чумовой сайт! Все сюда!"). Содержание параметра DESCRIPTION часто отражается в результатах поиска и вносится в базу данных поисковика. Так что чем точнее и лаконичней будет сформулировано описание сайта, тем лучше!
‹META NAME="keywords" CONTENT="..."›
В поле CONTENT вы должны внести через запятую (!) перечень ключевых слов и фраз, в соответствии с которым будет строиться запрос поисковым роботом. Только не надо вносить весь словарь Ожегова и/или Даля! Во-первых, поисковики обычно обрабатывают только первые n-цать символов в строке CONTENT (в среднем до 500). Во-вторых, ключевые слова и фразы должны отражать реальное содержимое страницы. В противном случае поисковый робот отсекает ненужное и часть содержимого KEYWORDS просто зазря засоряет страницу. Существует расхожее мнение, что сейчас поисковые роботы практически не уделяют внимания значению параметра KEYWORDS. Действительно, в процессе эволюции поисковики стали меньше обращать внимания на ключевые слова, потому что многие нехорошие люди занимались банальным поисковым спамом и вносили в KEYWORDS совсем не то, что было отражено на странице. Тем не менее, актуальность этого META-тэга еще до конца не утрачена и заполнять его все-таки рекомендуется.
Сообщает поисковому роботу частоту обновлений содержимого. В соответствии с этим страница может быть статичной (static), т.е. обновления происходят время от времени, редко или совсем не происходят; или динамичной (dynamic), которая обновляется часто (например, страница новостей). В поле CONTENT необходимо записать только одно из значений ("static" или "dynamic"), в соответствии с характером страницы. Некоторые "умники" пытаются обдурить поискового робота, объявляя статичную страницу динамичной, в надежде на то, что ее рейтинг повысится. Поисковик очень быстро вычисляет таких мошенников, отслеживая дату изменения файла страницы и характер изменений ее содержимого. В итоге можно отправиться в бан-лист, из которого путь будет не так прост. Чтобы этого не произошло, постарайтесь либо писать правду, либо вообще не употреблять этот параметр. Без него поисковик тоже в состоянии разобраться, какая эта страница и как часто ее переиндексировать.
‹META NAME="revisit-after" CONTENT="..."›
Тэг почти аналогичен предыдущему и указывает, через какой промежуток времени поисковик должен переиндексировать страницу. Опять-таки лучше не дразнить поискового робота и указывать реальное значение. Если у вас не лента новостей с ежедневным, еженедельным или прочим регулярным обновлением, то лучше этот параметр вообще не использовать. Если все-таки возникла такая необходимость, то значения поля CONTENT могут быть такими: day (пример: 1 day), days (пример: 7 days), week (пример: 1 week), weeks (пример: 2 weeks), year (пример: 1 year), years (пример: 5 years). Выражать промежуток времени можно различными значениями, но только одним из них. Например, 1 год можно записать как "1 year" или "365 days", или "52 weeks". Но недопустимо употребление сразу нескольких значений. Например, "1 year 2 weeks 3 days"!
‹META NAME="robots" CONTENT="..."›
Это очень важный тэг, который указывает поисковику, каким образом ему необходимо индексировать страницу. Возможные значения поля CONTENT:
index, follow – индексировать страницу и все ссылки на ней
index, nofollow – индексировать страницу, не индексировать ссылки
noindex, follow – не индексировать страницу, а только ссылки
noindex, nofollow – не индексировать страницу, не индексировать ссылки
all – равнозначен index, follow
none – равнозначен noindex, nofollow
Если вам все равно, как поисковый робот будет индексировать содержимое страницы, то лучше вообще этот параметр не использовать, т.к. в этом случае поисковик определит наиболее оптимальный и эффективный способ индексации. Если вдруг вам необходимо запретить на индексацию часть содержимого страницы, а другую оставить, то необходимо поместить запрещенный для поисковых роботов блок в тэг ‹NOINDEX›...‹/NOINDEX›. В этом случае META-тэг с параметром "robots" использовать не надо.
Существует еще целая куча META-тэгов подобного вида, всесторонне описывающая содержимое страницы, включая данные о ее создателе, генераторе, классификации и т.п. Отталкиваясь от практического опыта могу заметить, что ничего, кроме, засорения страницы и увеличения ее объема, они по сути не делают. Так что лучше ограничиться использованием вышеуказанных тэгов, которые являются основополагающими.
Итак, мы рассмотрели с вами основные требования к написанию заголовка страниц таким образом, чтобы их успешно и правильно индексировали поисковые роботы. Если вы все сделаете правильно, то уже через некоторое время (от 2 недель до месяца) вы заметите, что поисковые роботы стали лучше вас видеть и посетители стали лучше вас находить. Закрепляя вышесказанное, хочу привести пример, как может выглядеть идеальная для поисковика страница:
‹HTML›‹HEAD›‹TITLE›Справочник по META-тэгам‹/TITLE›
Прежде чем перейти к описанию интеграции модулей, хотелось бы заметить, что в системе могут быть использованы различные модули, блоки и скрипты, не только из похожих по принципу построения систем, но и совершенно не похожих. Не смотря на то, что оригинальные модули и блоки используют стандартные функции, это не является основным фактором в их работе. В системе могут работать модули, совершенно не используя основные функции ядра. В некоторых случаях потребуются только не большие изменение в коде интегрируемого модуля, блока или скрипта.
В данном примере мы рассмотрим способ ручной интеграции модулей одной из самых популярных систем построения сайтов PHP-Nuke. Программу, написанную специально для нашей системы, для автоматической интеграции модулей PHP-Nuke в SLAED CMS Вы можете скачать на нашем проекте в каталоге файлов.
Прошу учитывать, что старые варианты использования кода в модулях PHP-Nuke могут незначительно отличаться от описанных в данной статье.
1. В самом верху изменяем способ защиты для модулей от стороннего доступа.
Старый вариант: if (!eregi("modules.php", $_SERVER["PHP_SELF"])) {
die ("You can"t access this file directly...");
}
Новый вариант: if (!defined("MODULE_FILE")) {
Header("Location: ../../index.php");
exit;
}
2. Старые модули PHP-Nuke используют соединение с базой по средствам переменной $dbi. Наша система использует соединение с базой по средствам переменной $db, по этой причине необходимо изменить все переменные $dbi на $db.
Меняем все глобальные переменные $dbi в функциях, на новые $db. Если это необходимо, указываем переменную $db как глобальную.
Старый вариант: global $prefix, $dbi;
Новый вариант: global $prefix, $db;
Изменяем структуру запроса в базу данных.
Старый вариант: $result = sql_query("SELECT id, name FROM ".$prefix."_categories WHERE id=$id", $dbi);
Новый вариант: $result = $db->sql_query("SELECT id, name FROM ".$prefix."_categories WHERE id=$id");
Как вы заметили, удалена переменная $dbi в конце запроса и добавлена переменная $db в начале. Это нужно проделать со всеми запросами.
В запросах необходимо изменить:
sql_fetch_array на $db->sql_fetchrow sql_query на $db->sql_query sql_fetch_row на $db->sql_fetchrow sql_num_rows на $db->sql_numrows sql_free_result на $db->sql_freeresult
Если появляются вопросы по поводу запросов или правильности их написания, смотрим файл function/mysql.php
В некоторых модулях используются прямые запросы в базу данных в обход файла классов соединения с базой. В таком варианте запросы не подсчитываются. При желании вы так же можете изменить запросы подобного рода.
В запросах необходимо изменить:
mysql_fetch_array на $db->sql_fetchrow mysql_query на $db->sql_query mysql_fetch_row на $db->sql_fetchrow mysql_num_rows на $db->sql_numrows mysql_free_result на $db->sql_freeresult
В функциях не забываем указывать переменную $db как глобальную.
3. В некоторых модулях производится соединение с файлом конфигурации которое нужно заменить.
Старый вариант: include("config.php");
Новый вариант: include("config/config.php");
4. В некоторых модулях используется переменная основного адреса сайта, которую нужно заменить.
Старый вариант: $nukeurl
Новый вариант: $conf['homeurl']
Не исключено что в последствии возникнет необходимость использования параметров основных конфигураций системы. Для этих целей рекомендуется прописать в глобальные, переменную $conf, отвечающую за основные настройки, которые хранятся в файле config/config_global.php
5. В некоторых модулях используются функции темы OpenTable2() и CloseTable2() которые нужно заменить.
Старый вариант: OpenTable2();
Новый вариант: OpenTable();
Старый вариант: CloseTable2();
Новый вариант: CloseTable();
6. В стандартных модулях в начале скриптов используется соединение с файлом mainfile.php.
Необходимо удалить: require_once("mainfile.php"); или include("mainfile.php");
7. Во всех скриптах нужно произвести поиск и изменить стандартные ссылки modules.php на index.php.
Старый вариант: modules.php
Новый вариант: index.php
8. Во всех скриптах нужно произвести поиск и удалить стандартные цветовые переменные в глобальных, и заменить их в коде.
Старый вариант: bgcolor="$bgcolor1"
Новый вариант: class="bgcolor1"
Старый вариант: bgcolor="$bgcolor2"
Новый вариант: class="bgcolor2"
Старый вариант: bgcolor="$bgcolor3"
Новый вариант: class="bgcolor3"
Старый вариант: bgcolor="$bgcolor4"
Новый вариант: class="bgcolor4"
Данная информация пригодится более опытным пользователям системы для отслеживания ошибок в работе сервера и системы. Не для кого не секрет что наша система построения сайтов способна отслеживать стандартные ошибки 400, 401, 403, 404, 500, 503 и вести соответствующую статистику в лог файлах. Но немногие знаю о том, что система способна регистрировать не только стандартные, но и все возможные ошибки. Для того, что бы активировать регистрацию новых ошибок, необходимо добавить в основной файл: .htaccess соответствующую запись.
Допустим, у Вас появилась необходимость отследить ошибку 504, которая отвечает за время прохождения шлюза.
Открываем файл: .htaccess
После:
Добавляем:
Этого достаточно для того, что бы система начала фиксировать соответствующую ошибку в случае её появления. Просмотреть файл статистики ошибок, а так же загрузить его к себе на компьютер Вы сможете на главной странице отдела безопасности панели администратора системы. Ниже мы рассмотрим все существующие ошибки и их значения.
Коды первого класса Они не посылаются клиентам.
100 Continue - Начальная часть запроса принята, и клиент может продолжать передачу запроса.
101 Switching Protocols - Сервер выполняет требование клиента и переключает протоколы в соответствии с указанием, данным в поле заголовка Upgrade.
Коды второго класса Возникают, когда запрос успешно принят и понят сервером.
200 OK - Пользователю не посылается.
201 Created - Объект создан.
202 Accepted - Информация принята.
203 Non-Authoritative Information - Информация, не заслуживающая доверия.
204 No Content - Нет содержания.
205 Reset Content - Восстановить исходное содержание.
206 Partial Content - Частичное содержание.
Коды третьего класса Сообщают о перенаправлении. Для того чтобы выполнить запрос, нужны еще какие-то действия.
300 Multiple Choices - Несколько вариантов на выбор.
301 Moved Permanently - Ресурс перемещен на постоянной основе.
302 Found - Ресурс временно перемещен.
303 See Other - Смотрите другой ресурс.
304 Not Modified - Не изменился.
305 Use Proxy - Следует использовать прокси-сервер.
307 Temporary Redirect - Временное перенаправление.
Коды четвертого класса Сообщают об ошибках клиента. Проблема связана не с сервером, а с работой системы и запросами посетителей.
400 Bad Request - Некорректный запрос.
401 Unauthorized - Нет разрешения.
402 Payment Required - Требуется оплата.
403 Forbidden - Доступ запрещен.
404 Not Found - Ресурс не найден.
405 Method Not Allowed - Недопустимый метод.
406 Not Acceptable - Неприемлимый запрос.
407 Proxy Authentication Required - Необходима регистрация.
408 Request Time-out - Время обработки запроса истекло.
409 Conflict - Конфликт.
410 Gone - Ресурса больше нет.
411 Length Required - Необходимо указать длину.
412 Precondition Failed - Не выполнено предварительное условие.
413 Request Entity Too Large - Запрашиваемый элемент слишком велик.
414 Request-URI Too Large - Идентификатор ресурса слишком длинный.
415 Unsupported Media Type - Неподдерживаемый тип ресурса.
416 Requested range not satisfiable - Диапазон не может быть обработан.
417 Expectation Failed - Время ожидания истекло.
Коды пятого класса Сообщают об ошибке на сервере. Система к этим ошибкам не имеет отношения.
500 Internal Server Error - Внутренняя ошибка сервера.
501 Not Implemented - Функция не реализована.
502 Bad Gateway - Дефект шлюза.
503 Service Unavailable - Служба недоступна.
504 Gateway Time-out - Время прохождения через шлюз истекло.
Наболевший вопрос который уже ни раз поднимался и еще будет подниматься не только на нашем форуме но и в интернете. Часто на серьезных интернет проектах возникает необходимость создания нескольких сотен поддоменов. Создание их вручную займет не мало времени. Но есть способ сделать все намного проще.
Для того чтобы все настроить нажно проделать всего три шага:
Настроить зону в named-е
Настроить вхост в apach-е
Сделать правило через mod_rewrite
1. Первым делом нам нужно добавить “A” запись в фаил зоны: * 14400 IN A 192.168.0.1
Где * будет означать, что запись будет резолвить абсолютно любой поддомен, 14400 время обновления зоны и 192.168.0.1, это ip адрес куда будут направленны поддомены.
PS.: Стоит учитывать что named обрабатывает записи последовательно и любая запись добавленная после * не будет обработана.
2. Теперь переходим к конфигурировании веб сервера. Тут все проще, достаточно добавить директиву ServerAlias и все будет работать.
ServerAlias*.domen.ru
ServerAlias *.domen.ru
Где * будет означать что вхост обрабатывает все поддомены и все они будут направлены в один и тот же DocumentRoot, а domen.ru это наш домен.
PS.: Апач так же как и named читает конфигурационный фаил последовательно, поэтому любой поддомен добавленный ниже не будет обработан сервером.
3. Нам осталось создать правила mod_rewrite чтобы поддомен был направлен в папку домена. Создаем .htaccess следующего содержания:
Теперь любая папка например http://domen.ru/slaed/ будет доступна по адресу http://slaed.domen.ru/
Но такой вариант не всегда приемлем, и иногда нужно чтобы поддомены находились в вложенной папке скажем в http://domen.ru/sub/slaed/. Для этого делаем другой .htaccess:
Практически все панели управления позволяют сделать подобные вещи через внутренние интерфейсы, так что проблем быть не должно.
Прежде чем перейти к описанию интеграции модулей, хотелось бы заметить, что в системе могут быть использованы различные модули, блоки и скрипты, не только из похожих по принципу построения систем, но и совершенно не похожих. Не смотря на то, что оригинальные модули и блоки используют стандартные функции, это не является основным фактором в их работе. В системе могут работать модули, совершенно не используя основные функции ядра. В некоторых случаях потребуются только не большие изменение в коде интегрируемого модуля, блока или скрипта.
В данном примере мы рассмотрим способ ручной интеграции модулей одной из самых популярных систем построения сайтов PHP-Nuke. Программу, написанную специально для нашей системы, для автоматической интеграции модулей PHP-Nuke в SLAED Вы можете скачать на нашем проекте в каталоге файлов.
Прошу учитывать, что старые варианты использования кода в модулях PHP-Nuke могут незначительно отличаться от описанных в данной статье.
1. В самом верху изменяем способ защиты для модулей от стороннего доступа.
Старый вариант: if (!eregi("modules.php", $_SERVER["PHP_SELF"])) {
die ("You can"t access this file directly...");
}
Новый вариант: if (!defined("MODULE_FILE")) {
Header("Location: ../../index.php");
exit;
}
2. Старые модули PHP-Nuke используют соединение с базой по средствам переменной $dbi. Наша система использует соединение с базой по средствам переменной $db, по этой причине необходимо изменить все переменные $dbi на $db.
Меняем все глобальные переменные $dbi в функциях, на новые $db. Если это необходимо, указываем переменную $db как глобальную.
Старый вариант: global $prefix, $dbi;
Новый вариант: global $prefix, $db;
Изменяем структуру запроса в базу данных.
Старый вариант: $result = sql_query("SELECT id, name FROM ".$prefix."_categories WHERE id=$id", $dbi);
Новый вариант: $result = $db->sql_query("SELECT id, name FROM ".$prefix."_categories WHERE id=$id");
Как вы заметили, удалена переменная $dbi в конце запроса и добавлена переменная $db в начале. Это нужно проделать со всеми запросами.
В запросах необходимо изменить:
sql_fetch_array на $db->sql_fetchrow sql_query на $db->sql_query sql_fetch_row на $db->sql_fetchrow sql_num_rows на $db->sql_numrows sql_free_result на $db->sql_freeresult
Если появляются вопросы по поводу запросов или правильности их написания, смотрим файл function/mysql.php
В некоторых модулях используются прямые запросы в базу данных в обход файла классов соединения с базой. В таком варианте запросы не подсчитываются. При желании вы так же можете изменить запросы подобного рода.
В запросах необходимо изменить:
mysql_fetch_array на $db->sql_fetchrow mysql_query на $db->sql_query mysql_fetch_row на $db->sql_fetchrow mysql_num_rows на $db->sql_numrows mysql_free_result на $db->sql_freeresult
В функциях не забываем указывать переменную $db как глобальную.
3. В некоторых модулях производится соединение с файлом конфигурации которое нужно заменить.
Старый вариант: include("config.php");
Новый вариант: include("config/config.php");
4. В некоторых модулях используется переменная основного адреса сайта, которую нужно заменить.
Старый вариант: $nukeurl
Новый вариант: $conf['homeurl']
Не исключено что в последствии возникнет необходимость использования параметров основных конфигураций системы. Для этих целей рекомендуется прописать в глобальные, переменную $conf, отвечающую за основные настройки, которые хранятся в файле config/config_global.php
5. В некоторых модулях используются функции темы OpenTable() и CloseTable() которые нужно заменить.
Старый вариант: OpenTable(); или OpenTable2();
Новый вариант: open();
Старый вариант: CloseTable(); или CloseTable2();
Новый вариант: close();
6. В стандартных модулях в начале скриптов используется соединение с файлом mainfile.php.
Необходимо удалить: require_once("mainfile.php"); или include("mainfile.php");
7. Во всех скриптах нужно произвести поиск и изменить стандартные ссылки modules.php на index.php.
Старый вариант: modules.php
Новый вариант: index.php
8. Во всех скриптах нужно произвести поиск и удалить стандартные цветовые переменные в глобальных, и заменить их в коде.
Старый вариант: bgcolor="$bgcolor1"
Новый вариант: class="bgcolor1"
Старый вариант: bgcolor="$bgcolor2"
Новый вариант: class="bgcolor2"
Старый вариант: bgcolor="$bgcolor3"
Новый вариант: class="bgcolor3"
Старый вариант: bgcolor="$bgcolor4"
Новый вариант: class="bgcolor4"