Электронная библиотека » Виктор Ромашов » » онлайн чтение - страница 18


  • Текст добавлен: 4 ноября 2013, 21:20


Автор книги: Виктор Ромашов


Жанр: Программы, Компьютеры


сообщить о неприемлемом содержимом

Текущая страница: 18 (всего у книги 19 страниц)

Шрифт:
- 100% +
Таблицы

В этом разделе мы рассмотрим имена и назначение таблиц, которые создаются в базе данных CMS Drupal. Из-за того что каждый модуль может создавать свои собственные таблицы, общее их количество может оказаться очень большим. По умолчанию же создаются следующие таблицы (табл. 3.6).

Таблица 3.6. Стандартные таблицы CMS Drupal


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

▪ Модуль Aggregator:

– aggregator_category – список категорий, созданных для присвоения RSS-лентам сайтов; для каждой категории определяется ее имя (поле title) и описание (поле description);

– aggregator_category_feed;

– aggregator_category_item;

– aggregator_feed;

– aggregator_item.

▪ Модуль Blog API добавляет таблицу blogapi_files.

▪ Модуль Book добавляет таблицу book.

▪ Модуль Contact добавляет таблицу contact.

▪ Модуль Drupal создает таблицы client и client_system.

▪ Модуль Forum добавляет таблицу forum.

▪ Модуль Locale:

– locales_meta – список установленных языков локализации (поле name) и определение языка по умолчанию (поле isdefault);

– locales_source – список всех строк, которые были локализованы (поле source), а также путь к файлу и строка, которая локализует данную строку (поле location);

– locales_target – список всех строк, которые были переведены локализацией (поле translation), а также имя локализации, которой данная строка принадлежит (поле locale).

▪ Модуль Poll:

– poll – список созданных голосований, а также сведения о том, активны ли они (поле active);

– poll_choices – список голосов, которые были отданы тому или иному пункту голосования с определенным идентификатором (поле nid);

– poll_votes.

▪ Модуль Profile:

– profile_fields – список новых полей, добавленных к профилю пользователя с помощью данного модуля;

– profile_values – значения, которые указывали регистрирующиеся пользователи в дополнительных полях.

▪ Модуль Search создает таблицы search_dataset, search_index, search_total.

▪ Модуль Contact добавляет таблицу accesslog.

Хаки Drupal

Хак – это небольшое изменение файлов Drupal, позволяющее расширить или более точно настроить возможности данной CMS. Сейчас мы рассмотрим несколько полезных хаков. Они не только помогут вам расширить возможности Drupal, но и научат работать с ней.

Включение сжатия страниц сайта

Плохо, когда страница сайта со всем текстом и рисунками весит больше 200 Кбайт. Будьте уверены, не все посетители вашего сайта используют безлимитный высокоскоростной Интернет. Многие до сих пор используют повременной или помегабайтный доступ. Поэтому, если страницы вашего сайта будут много весить, посетители вряд ли захотят снова зайти на ваш сайт.

Таким образом, очень важно оптимизировать все изображения (уменьшать их размер). К сожалению, в CMS Drupal это единственный простой способ уменьшить размер страницы. Ведь сам код страницы вы оптимизировать не сможете, разве что только переделав тему оформления.

Однако есть еще один способ существенно уменьшить размер страниц. Это сжатие кода страниц с помощью алгоритма GZIP.

В самом начале развития Интернета все страницы передавались в обычном виде, без сжатия. Однако со временем разработчики начали задумываться над тем, как можно уменьшить размер передаваемых страниц. Поскольку к тому времени уже существовали архиваторы данных, стало абсолютно ясно, как это можно сделать – просто заархивировать страницу определенным архиватором и в таком виде передать пользователю, а уже на компьютере пользователя распаковать и отобразить.

Все современные браузеры уже давно поддерживают заархивированные GZIP-страницы и умеют автоматически распаковывать и отображать их.

Это же относится и к хостингам – практически все они позволяют автоматически сжимать передаваемые данные алгоритмом GZIP. Иными словами, вам даже не нужно будет вручную сжимать страницы сайта – это будет делать хостинг. Правда, помимо плюсов, сжатие имеет и один минус – оно повышает нагрузку на хостинг. Поэтому если ваш сайт очень популярен, включение сжатия может привести к проблемам в его работе. Но это относится только к очень популярным сайтам с большим количеством посетителей.

Осталось только одно – задействовать возможность сжатия страниц. Для этого необходимо отредактировать файл index.php, расположенный в папке CMS Drupal. Откройте данный файл в каком-нибудь простом текстовом редакторе наподобие notepad.exe (или в программе специально для создания PHP-файлов). Только не нужно открывать файл в текстовом процессоре, например программе Microsoft Word, поскольку он может автоматически заменить отдельные символы файла (например, поменять кавычки на «более правильные»), после чего ваш сайт на CMS Drupal перестанет работать.

Найдите в нижней части файла следующие строки:


elseif (isset($return)) {

// Print any value (including an empty string) except NULL or

undefined:

print theme('page', $return);

}

После это замените их следующими строками:

elseif (isset($return)) {

// Print any value (including an empty string) except NULL or

undefined:

ob_start(«ob_gzhandler»);

print theme('page', $return);

}


Все изменения заключаются в добавлении одной строки – ob_start («ob_gzhandler»);. Именно она включает сжатие страниц.

Сжатые страницы весят в 2–5 раз меньше обычных. Так что даже не задумывайтесь над тем, стоит ли включать сжатие.

Отправка сообщений по электронной почте при создании материала определенного типа

Модули Actions (раздел Управление → Настройка сайта → Действия) и Triggers (раздел Управление → Конструкция сайта → Триггеры) позволяют настроить отправку электронных сообщений при создании новой публикации. Однако проблема заключается в том, что очень часто нужно получать сообщения только при создании публикации определенного типа. Например, у вас на сайте посетителям разрешено создавать только публикации типа Анекдот, а все остальные публикации создаете лично вы. В таком случае зачем вам электронные сообщения о добавлении публикаций, которые добавляли вы сами?

С помощью небольшого хака вы сможете сделать так, чтобы сообщения приходили только при добавлении публикаций нужного вам типа. Для этого нужно изменить функцию trigger_nodeapi, определенную в файле trigger.module (он расположен в каталоге modules/trigger вашего сайта).

Просто замените строку


$result = actions_do($aid, $objects[$action_info['type']], $context, $a4, $a4);


следующим кодом:


if ($aid == 1 && $node->type!= 'myask'){}else{

$result = actions_do($aid, $objects[$action_info['type']], $context,

$a4, $a4);

}


Здесь переменная $aid содержит идентификатор действия (возможно, в вашем случае у действия будет другой идентификатор), а переменная $node->type определяет тип материала, для которого будет выполняться действие с идентификатором $aid.

Работа с поисковыми системами

После того как ваш сайт создан и выложен в Интернете, наступает еще более сложный этап его «разработки» – «раскрутка». Иными словами, вам нужно сообщить всему Интернету о том, что ваш сайт существует, чтобы привлечь к нему наибольшее количество посетителей. На первых порах вестником вашего сайта могут стать поисковые системы – на многие сайты большинство посетителей приходят именно из поисковых систем.

Поисковые системы – это самый легкий и самый дешевый способ «раскрутиться», который никогда нельзя игнорировать. Помимо него, существуют и другие способы «раскрутить» свой сайт:

▪ обмен ссылками с популярными сайтами;

▪ публикация ссылки на ваш сайт в комментариях на популярных сайтах, форумах и в блогах;

▪ регистрация на всевозможных рейтингах;

▪ создание рассылок сайта на таких популярных серверах, как http://www.subscribe.ru;

▪ и, конечно, реклама в Интернете, на радио, телевидении, газетах и просто на улице.

Мы рассмотрим «раскрутку» только с помощью поисковых систем, так как именно она на данный момент обязательна для всех владельцев сайтов. Все остальное – лишь дополнительные способы.

Регистрация в поисковых системах

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

Остается открытым вопрос, как же поисковые системы узнают о новых сайтах, которых еще нет в их индексе. В самом простом случае они узнают о новых сайтах из ссылок на других сайтах, которые уже индексируются поисковой системой. Как вы думаете, на каком-нибудь из популярных сайтов есть ссылка на ваш сайт?

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

▪ http://webmaster.yandex.ru/ – «Яндекс».

▪ http://www.google.com.ua/addurl/?continue=/addurl – Google.

▪ http://catalog.aport.ru/rus/add/AddUrl.aspx – «Апорт».

▪ http://www.rambler.ru/doc/add_site_form.shtml? – «Рамблер».

▪ http://search.msn.com/docs/submit.aspx – MSN.

▪ http://search.yahoo.com/info/submit.html – Yahoo!.

▪ http://gogo.ru/wmaster/add_site.html – GoGo.

▪ http://nigma.ru/index_menu.php?action=click_menu&menu_element=add_site – Nigma.

▪ http://alexa.com/site/help/webmasters – Alexa.

Кроме того, свой сайт можно добавить в следующие поисковые системы:

▪ http://goon.ru/cgi-bin/cat/a.cgi – Goon.

▪ http://turtle.ru/add.html – Turtle.

▪ http://43n39e.ru/add – «Вершки Рунета».

▪ http://yottos.com/AddSite.aspx – Yottos.

▪ http://scrubtheweb.com/addurl.html – Scrub The Web.

▪ http://netsearch.org/submit.html – NetSearch.

После того как вы добавите свой сайт в индекс перечисленных поисковых систем, от вас уже практически ничего не будет зависеть – можно спать спокойно.

Файл robots.txt

В некоторых случаях бывает необходимо запретить роботам поисковых систем индексировать отдельные файлы вашего сайта или содержимое всей папки. В этом случае вам может помочь специальный файл robots.txt, который нужно создать в корне своего сайта. Данный файл содержит описание того, как робот поисковой системы должен вести себя на вашем сайте. Следует, однако, заметить, что беспрекословное следование этому файлу не является обязательным для роботов поисковых систем. Конечно, роботы популярных поисковых систем обязаны обращать внимание на этот файл, а вот другие, менее популярные поисковые системы или роботы отдельных сайтов (например, спам-роботы, собирающие электронные адреса, опубликованные на страницах сайтов), могут игнорировать содержимое файла robots.txt.

Итак, каждый файл robots.txt должен начинаться со строки вида User-agent: <имя робота>. В ней указывается имя поискового робота, на которого будут распространяться дальнейшие настройки из файла. Чаще всего указывают строку User-agent: *. Иначе говоря, настройки файла robots.txt влияют на всех поисковых роботов.

Кроме того, в файле robots.txt можно встретить строку вида Crawl-delay: число. В ней определяется интервал времени в секундах, который поисковые системы обязаны делать между двумя запросами страниц вашего сайта. Рекомендуется указывать интервал более пяти секунд, иначе роботы поисковой системы в процессе индексирования сайта могут так его загрузить, что обычные посетители получить к нему доступ уже не смогут.

Еще одна наиболее популярная строка файла robots.txt – Disallow: <файл или каталог>. Именно с помощью строк данного вида (их может быть любое количество) определяются файлы и каталоги, содержимое которых будет запрещено индексировать поисковым роботам. Чтобы лучше понять формат строки Disallow и файла robots.txt, посмотрим на содержимое файла robots.txt, который по умолчанию создается при установке CMS Drupal:


User-agent: *

Crawl-delay: 10

Disallow: /database/

Disallow: /includes/

Disallow: /misc/

Disallow: /modules/

Disallow: /sites/

Disallow: /themes/

Disallow: /scripts/

Disallow: /updates/

Disallow: /profiles/

Disallow: /xmlrpc.php

Disallow: /cron.php

Disallow: /update.php

Disallow: /install.php

Disallow: /INSTALL.txt

Disallow: /INSTALL.mysql.txt

Disallow: /INSTALL.pgsql.txt

Disallow: /CHANGELOG.txt

Disallow: /MAINTAINERS.txt

Disallow: /LICENSE.txt

Disallow: /UPGRADE.txt

Disallow: /admin/

Disallow: /comment/reply/

Disallow: /contact/

Disallow: /logout/

Disallow: /node/add/

Disallow: /search/

Disallow: /user/register/

Disallow: /user/password/

Disallow: /user/login/

Disallow: /?q=admin/

Disallow: /?q=comment/reply/

Disallow: /?q=contact/

Disallow: /?q=logout/

Disallow: /?q=node/add/

Disallow: /?q=search/

Disallow: /?q=user/password/

Disallow: /?q=user/register/

Disallow: /?q=user/login/


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

Примечание

Мы рассмотрели только наиболее популярные возможности файла robots.txt. Следует понимать, что, помимо рассмотренных возможностей, данный файл обладает множеством других, изучить которые вам предлагается самостоятельно.

Файл sitemap.xml

Роботы поисковых систем могут многое, но не всё. Например, в большинстве случаев им не под силу проиндексировать страницы, ссылки на которые указаны в JS-файле или отображаются с помощью Flash. Кроме того, роботы поисковых систем теряются при обнаружении страниц, имеющих фреймы, – такие страницы поисковые роботы могут проиндексировать не полностью.

Формат файла

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

Существует два формата файла sitemap.xml. Самый простой из них – использование только одного файла sitemap.xml, который содержит все ссылки на ваш сайт. Этот способ идеален для небольших сайтов, так как содержимое одного файла sitemap.xml в большинстве поисковых систем ограничено размером (не более 10 Мбайт) и количеством ссылок, которые в нем могут находиться (не более 50 000).

Другой формат – создать файл sitemaps.xml, который будет ссылаться на другие файлы вида sitemapN.xml, а уже в этих файлах будут содержаться ссылки на страницы вашего сайта. В качестве примера посмотрим на второй способ хранения содержимого файла sitemap.xml.

Итак, содержимое файла sitemaps.xml:


<?xml version="1.0" encoding="UTF-8"?>

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<sitemap><loc>http://www.onestyle.com.ua/sitemap1.xml</loc></sitemap>

<sitemap><loc>http://www.onestyle.com.ua/sitemap101.xml</loc></

sitemap>

</sitemapindex>


Данный файл ссылается только на два файла вида sitemapN.xml, хотя вы можете ссылаться и на большее количество файлов. Каждый файл вида sitemapN.xml должен содержать ссылки на страницы вашего сайта в следующем формате:


<?xml version="1.0" encoding="UTF-8"?>

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<url><loc>http://www.onestyle.com.ua/project.php?u=29</loc></url>

<url><loc>http://www.onestyle.com.ua/project.php?u=30</loc></url>

</urlset>


Это самый простой формат файла sitemapN.xml, в котором вы указываете только адреса вашего сайта. Однако, помимо адреса, вы можете указать и дополнительные сведения о страницах: когда они были созданы, как часто их нужно индексировать, а также какой приоритет они имеют по отношению к другим страницам вашего сайта. Другой вопрос заключается в том, нужно ли это делать?

Это спорный вопрос, так как:

▪ использование дополнительных полей может в несколько раз увеличить размер файла sitemapN.xml, что скажется на трафике, загруженности вашего сайта и доступном свободном месте;

▪ поля с дополнительными сведениями являются лишь дополнительными – содержащиеся в них сведения практически никогда не берутся во внимание поисковыми системами.

Объявление файла

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

▪ http://google.com/webmasters/sitemaps/ping?sitemap= – Google;

▪ http://search.yahooapis.com/SiteExplorerService/V1/updateNotification?appid=SitemapWriter&url=http://search.yahooapis.com/SiteExplorerService/V1/ping?sitemap= – Yahoo!;

▪ http://submissions.ask.com/ping?sitemap= – Ask.com;

▪ http://webmaster.live.com/ping.aspx?siteMap= – Live Search;

▪ http://webmaster.yandex.ru/, в разделе Мои сайты – «Яндекс».

Если же у вас абсолютно нет времени на то, чтобы сообщать поисковым системам о файле sitemapN.xml, тогда сделайте хотя бы следующее (точнее, это нужно сделать обязательно). Добавьте в файл robots.txt строку вида Sitemap: <путь к главному файлу sitemap>. Например, Sitemap: http://www.onestyle.com.ua/sitemaps.xml. После этого поисковые роботы самостоятельно смогут обнаружить файл sitemapN.xml.

Слежение за индексацией вашего сайта

Каждая уважающая себя поисковая система предоставляет владельцам сайтов возможность следить за тем, как индексируются страницы их сайтов. В большинстве случаев вам предоставляется возможность просмотреть количество уже проиндексированных страниц; адреса проиндексированных страниц; адреса страниц, которые ссылаются на ваш сайт; а также сведения о том, как робот обработал файлы robots.txt и sitemap.xml и не возникло ли при этом каких-либо проблем.

Например, такая возможность предоставляется поисковыми системами Google (http://www.google.com.ua/webmasters/) и «Яндекс» (http://webmaster.yandex.ru/). Вам необходимо только зарегистрироваться в этих системах, после чего подтвердить права на сайт, который вы считаете своим. Для подтверждения прав требуется либо добавить в код главной страницы специальный тег, либо создать в корне сайта файл со специальным названием. После того как вы подтвердите права на сайт, не нужно удалять созданный тег или файл. Иначе при следующем входе вам придется подтверждать права заново.

Приложение
Дополнительные материалы

Полезные источники

Одно из преимуществ популярных бесплатных продуктов – огромное количество пользователей, которые не только применяют данный продукт в своих целях, но и с удовольствием рассказывают о нем, делятся опытом. И CMS Drupal в этом плане не исключение. В Интернете можно найти множество сайтов, посвященных данной CMS и ее возможностям. Ниже мы рассмотрим наиболее интересные из них.

▪ http://drupal.org – официальный сайт проекта Drupal. Именно с него можно скачать самую последнюю версию дистрибутива этой CMS, а также огромное количество готовых модулей, тем оформления, переводов. На сайте также создан форум для разработчиков Drupal. Правда, все это доступно только на английском языке.

В частности, обратите внимание на следующие страницы данного сайта:

– http://drupal.org/files/projects/drupal-x.x.tar.gz – ссылка для скачивания пакета установки CMS Drupal нужной вам версии;

– http://drupal.org/project/modules/ – список дополнительных модулей, отсортированных по названию;

– http://drupal.org/security/rss.xml – RSS-лента с последними новостями, связанными с безопасностью CMS Drupal;

– http://drupal.org/taxonomy/term/14/0/feed – RSS-лента со сведениями о новых модулях, доступных на сайте;

– http://drupal.org/taxonomy/term/29/0/feed – RSS-лента со сведениями о новых переводах, доступных на сайте;

– http://drupal.org/taxonomy/term/15/0/feed – RSS-лента со сведениями о новых темах, доступных на сайте;

– http://drupal.org/planet – здесь можно узнать, кто над чем сейчас работает;

– http://drupal.org/videocasts – видеоматериалы по работе с Drupal;

– http://drupal.org/security – здесь можно подписаться на анонсы по безопасности.

▪ http://drupal.bz – данный сайт посвящен CMS Drupal и рассказывает о ней с точки зрения потребителя и пользователя (не разработчика).

▪ http://drupal.ru – сайт русскоязычного Drupal-сообщества. На нем доступно множество статей о CMS Drupal, рассчитанных как на начинающих пользователей, так и на разработчиков.

▪ http://drupal.by – сайт белорусского Drupal-сообщества.

▪ http://setegnom.com – очень полезный сайт, содержащий переводы множества статей с сайта http://drupal.org.

▪ http://drupaler.ru – этот сайт собрал на своих просторах огромное количество переводов как для самой системы Drupal, так и для сторонних модулей, разработанных для нее. Здесь любой желающий может разместить свой перевод для любого проекта, относящегося к CMS Drupal. Доступны переводы на следующих языках: русский, белорусский, болгарский, казахский, латвийский, литовский, немецкий, польский, сербский, украинский, эстонский.


Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | Следующая
  • 0 Оценок: 0

Правообладателям!

Это произведение, предположительно, находится в статусе 'public domain'. Если это не так и размещение материала нарушает чьи-либо права, то сообщите нам об этом.


Популярные книги за неделю


Рекомендации