Все написанное ниже в равной мере относится к WP1.5.x и WP2.0. Итак, заливаю чистокровный WP, который беру тут: http://wordpress.org/download/ потому что1, даже если собираюсь пользоваться «локализованой версией», потому что2

В файл /wp-config.php вписываю все что требуется BD, тут же определяю префикс
$table_prefix = 'wp_'; (если в базе будет жить несколько WP префикс wp_ может быть только у одного).

Вот эту строку лучше пока не трогать:
define ('WPLANG', ''); с ее помощью подключают файлы языков, например для русского:
define ('WPLANG', 'ru_RU'); но при установке и первоначальной настройке от «локализованостей» лишний головняк, ее можно будет изменить позже, в любое время.

Теперь открываю файл /wp-includes/wp-db.php и ищу в нем код, где осуществляется выбор BD. Выглядит он так:
if (!@mysql_select_db($db, $this->dbh)) {

}

заменяю на:
if (!@mysql_select_db($db, $this->dbh)) :

else:
// rEd
mysql_query("SET CHARACTER SET utf8");
endif;

Все это для того, чтобы добавить первым (!) запросом к BD выбор нужной мне кодировку, а нужная мне кодировка – utf8.

Замена никак не повредит англоязычному блогу (интересно, почему до сих пор установку кодировки не включили в «авторский» код), зато я в корне решаю проблему с регистронезависимым поиском в WP, так как блог ведется на родном (русском например) языке. Выполнять этот пункт нужно ДО того как в вашем блоге появятся записи, потому что3. А комментарий (// rEd) нужен, для того чтобы4.

Создаю в корневой папке блога файл robots.txt (для того чтобы разобраться, зачем этот файл можно почитать: Стандарт исключений для роботов) пишу в него:
User-agent: *
Disallow: /wp-includes
Disallow: /wp-admin
Disallow: /wp-login.php
Disallow: /wp-register.php
Host: imho.alnet.com.ua

чтобы в результатах поиска не попадались лишние файлы.

Плагины

Для того чтобы «писать на ходу» существуют плагины «человечного ввода текста» я ставлю Textile Plugin 2.6. Здесь можно посмотреть что называется человечным вводом текста. Для того чтобы получать из WP1.5.x русские письма на русском языке существует плагин wp_mail Cyrillic. Активация его в WP2.0 заканчивается сообщением об ошибке, что не мешает плагину выполнять свои функции, за что спасибо автору, которым является Anton Skorobogatov.

| следующая запись »

Установка WordPress

Установка WordPress. Все написанное ниже в равной мере относится к WP1.5.x и WP2.0.

6 Responses to “Установка WordPress”

  1. Pepsimist Says:

    А решить подобным образом проблему с поиском ПОСЛЕ появления записей возможно?

  2. phil Says:

    А как это повлияет на уже существующие блоги?
    И действует ли как-то эта модификация, если используется версия MySQL, не поддерживающая utf8? (вопрос именно в контексте избегания проблем с русскоязычным поиском)

  3. phil Says:

    Убедительная просьба ответить, хотя-бы по почте, вопросы, заданные в теме очень важны.

  4. imho Says:

    2phil: если бы это было так просто — взять и ответить…
    Что знаю наверняка - уже существующие блоги этим методом не вылечишь (потому как в базе тексты хранятся совсем не в UTF)и сделав изменения в /wp-includes/wp-db.php получаем тексты из кракозяблов. Приводим /wp-includes/wp-db.php в исходный вид - тексты опять читаемые, поиск опять регистрозависимый.

  5. imho Says:

    Кординальное решение - собственный вариант руссификации WP основаный на win-1251 предлагает MAX - он очень аргументированно отстаивает при этом “неюникод”.

    Я бы, имея уже существующий блог, который вовремя не “привили” от регистрозависимого поиска, поступил так:
    а) Сделал бэкап базы. б) перекодировал бы полученный в результате файл в UTF-8 в) залил бы его обратно и г) поправил /wp-includes/wp-db.php

  6. phil Says:

    Тут интересная тонкость - все еще кривее чем кажется, как я понимаю - содержимое базы уже в utf-8, ибо блог изначально на utf-8, но MySQL считает, что кодировка другая. Причем считать что база в UTF-8 он не может в силу собственной старости, как я понимаю.

    Поэтому, когда я поправил wp-db.php, кракозябров у меня не полезло, но поиск, соответственно лучше работать не стал. Если я все правильно понимаю, то при моей версии MySQL 4.0.25 надеяться не на что.

Leave a Reply

Отправить комментарий через коммент клиент