Перемещение WordPress на новый сервер. Перенос базы данных в WordPress с плагинами и без

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

Перенос файлов и базы сайта на Вордпресс из одного домена в другой

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

1. Создаем и сохраняем файлы сайта, выполнить это можно через Файловый менеджер:
Пройдите в корневой каталог старого домена выберите все файлы из корневого каталога и создайте архив. Сохраненный архив скачиваем на Ваш компьютер. Еще для скачивания файлов можно воспользоваться .

2. Экспортируем дамп базы данных. Для этого проходим в phpMyAdmin, выделяем базу в левом списке и нажимаем сверху на кнопку Экспорт

Еще: Архивы файлов и базы сайта в Макхосте можно сделать автоматически из меню Резервные копии раздел Создать резервную копию. Файлы будут помещены в каталог private

Теперь имея исходные файлы Вашего сайта можно перейти ко второму этапу: это перенос данных в новый домен и настройка. Советую сделать их копию и сохранить отдельно, на случай 3. Переходим в корневой каталог нового домена и производим загрузку архива. Выполнить это опять же можно как через файловый менеджер панели управления хостинга, так и через FTP. Файл можно распаковать в файл-менеджер
4. Производим импорт sql дамп в базу данных через phpMyAdmin. Для этого, авторизовавшись в phpMyAdmin требуемой базы выбираем базу в левом списке и затем нажимаем в верхней панели на кнопку Импорт

5. В конфигурационном файле сайта wp-config.php нового домена пропишите информацию для подключения к базе данных.

Изменение домена в настройках Вордпресс

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

Смена домена в Вордпресс через phpMyAdmin

Заходим в phpmyadmin базы данных, к которой подключен Ваш сайт. Обязательно выбираем базу в левом списке и нажимаем кнопку SQL, как показано на скриншоте

Поочередно или все три сразу скопируйте и выполните запросы что указаны ниже, исправив параметры

UPDATE wp_options SET option_value = REPLACE(option_value, "http://старый-домен.ru", "http://новый-домен.ru") WHERE option_name = "home" OR option_name = "siteurl"; UPDATE wp_posts SET guid = REPLACE(guid, "http://старый-домен.ru","http://новый-домен.ru"); UPDATE wp_posts SET post_content = REPLACE(post_content, "http://старый-домен.ru", "http://новый-домен.ru");

Важно! Прописывать нужно домен без слеша / в конце, как это указано в примере.
Запрос не выполнится если у вас префикс в таблицах не wp_ , а другой.
Если например у вас префикс pref_ , то в коде запроса пропишите его: UPDATE pref_posts SET…

Смена домена в Вордпресс в sql-дампе через текстовый редактор

Другим способом обновления информации в базе данных является ручная замена ссылок со старого домена на новый. Авторизуйтесь через phpMyAdmin в базе данных старого домена и выполните экспорт, если еще сделалм. Текстовым редактором откройте полученный файл sql и выполните поиск с заменой все упоминания старого домена на новый. После обновления информации выполните импорт дампа в базу на хостинге, очистив её предварительно от старых таблиц.

На этом перенос и настройка завершены.

Алгоритм следующий:

  • Выбираете нужную базу данных.
  • Кликаете по пункту меню «Экспорт» в верхнем меню.
  • Определяете способ экспорта. Учитывая то, что все настройки по умолчанию сохраняются, можно использовать «Быстрый» вариант. «Обычный» я выбираю только, если нужно сжать файл.
  • Проверьте чтобы были выделены все таблицы базы WordPress для переноса.
  • Если указан «Обычный» вариант, то можно определить компрессию при экспорте.
  • В самом низу страницы кликаете «Ок».
  • В итоге приложение создаст дамп БД и предложит сохранить его на компьютере. Все настройки, как видите, устанавливаются изначально, и в 99% случаев ничего менять не нужно.

    Процесс импорта еще проще. Допустим, у вас уже имеется пустая БД сайта, созданная в cPanel, куда требуется перенести всю информацию из прошлой. Порядок действий:

  • Заходим в PhpMyAdmin и выбираем новую БД.
  • В верхнем меню кликаете по пункту «Импорт».
  • После нажатия на кнопку «Choose File» выбираете на своем компьютере SQL файл для импорта.
  • Жмете «Ок» внизу страницы.
  • После успешного завершения процедуры увидите соответствующее сообщение, а справа под названием новой БД отобразится список созданных таблиц. На этом миграция wordpress базы завершена. После возвращаетесь к остальным этапам , если вы им занимались.

    Плагины переноса базы данных в WordPress

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

    Важно! Все три плагина, умеют работать с сериализованными данными (serialized data) и делать корректную замену информации в БД (с учетом длинны строки), например:

    s:11:"hello world" станет s:9:"new world"

    s:11:"hello world" станет s:9:"new world"

    При выполнении SQL и правке напрямую через PhpMyAdmin могу быть ошибки.

    Изначально позволял только вносить правки в БД, но в последних версиях разработчики значительно расширили его функции. Теперь вы также сможете скачивать дамп и восстанавливать базу, менять домен, префикс. Новый интерфейс сделали вообще отличным. В статьи чуть более детально расскажу о модуле, хотя здесь все предельно просто. Скачиваний — 100к+, оценка — 4.4.

    Этот инструмент может использоваться не только при миграции WordPress базы, но и всего сайта. позволяет переносить медиа файлы, плагины, темы. Также вы можете запустить процедуру поиска и редактирования данных в БД. Отличительной особенностью является быстрая работа (дабы не нагружать хостинг провайдера), а также отсутствие необходимости установки дополнительных PHP расширений. Решение работает даже с PHP v5.2, в то время как предыдущее требует минимум PHP v5.4. Загрузок более 300 тысяч, оценка — 4.8.

    Выполняет основные задачи по переносу базы данных в WordPress: экспорт дампа, поиск и замена инфы, сохранение SQL файлов на компьютере. Более 200тыс. скачиваний, оценка — 4.7. Бесплатной версии, в принципе, хватает, хотя конечно в PRO вас ожидаю более крутые фишки. Импортировать БД придется через PhpMyAdmin как я рассказывал в первом разделе.

    Использование плагина Search and Replace

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

    Итак. после Search and Replace и активации, все его функции находятся в одноименном пункте меню раздела «Инструменты». Здесь 4 основных направления:

    • Backup Database — создание бэкапа.
    • Search & Replace — поиск и замена информации.
    • Replace Domain URL — смена домена.
    • SQL Import — импорт.

    В первом и последнем пунктах всего по одной кнопке «Экспорт/Имопрт», но, по сути, у вас есть все необходимое для полноценной миграции WordPress базы и сайта. Единственное нужно помнить, что импортируются данные в текущую, подключенную к проекту БД.

    Переходим в раздел Replace Domain URL. Фактически в нем предусмотрена возможность замены старого домена на новый.

    Эта фишка не избавит вас от остальных шагов в алгоритме но, как минимум, упростит задачу переноса базы данных в WordPress. Кроме того, вы можете поменять префикс таблиц, что тоже пригодится.

    Вкладка Search & Replace помогает заменять информацию в БД.

    • Первым делом определяете старые и новые значений, после этого отмечаете таблицы, где должен производиться поиск и замена.
    • По умолчанию опция «Dry Run» включена — это значит, что действия будут происводиться в «тестовом режиме».
    • Если снять галочку, то появится 2 опции на выбор — импорт SQL запроса для внесения правок в БД или же непосредственно выполнение данного действия.

    То есть, по сути, вы можете сделать: 1) тестовый прогон задачи, 2) реальную замену данных 3) получить SQL запрос, а после внедрить его через PhpMyAdmin или 4-тую вкладку модуля. Отличная гибкость!

    Итого. Надеюсь информации по переносу базы данных в WordPress вам хватит дабы самостоятельного провести эту процедуру. Сложного, в принципе, ничего нет, но при работе с БД всегда нужно быть предельно аккуратными — как минимум, создавайте бэкапы перед началом работы. Все три плагина отлично справляются со своей задачей, но Search and Replace мне лично нравится больше всего — простой, гибкий, без лишних деталей.

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

    Сегодня я расскажу о переносе сайта на WordPress с хостинга на хостинг или c хостинга на денвер, а так же на новый домен или в другую папку.
    Содержание статьи:

    Почему возникает проблема переноса WordPress сайта

    Рано или поздно каждому из нас приходится столкнуться с переездом, для этого существует ряд причин. Самая распространенная из них – недовольства хостингом, когда терпеть уже нет сил, начинаешь думать о смене хостинг-провайдера. Хотя в этом случае проще оставить заявку в техподдержку на перенос вашего сайта (любой приличный хостинг предоставляет такую услугу бесплатно). Мне приходилось менять хостинг сотню раз, пока однажды, наконец, не повезло, теперь я пользуюсь хостингом и вам советую.

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

    Да мало ли какие причины заставили вас заняться переносом сайта на вордпресс. Лично мне понадобилось развернуть локальную версию сайта у себя на денвере (читайте ), потому что работать с локальным сайтом быстрее и удобнее. На нем можно экспериментировать с настройками блога и плагинами, не боясь за работоспособность сайта. Поэтому я советую каждому иметь локальную версию, пусть будет.

    Перенос WordPress на другой хостинг 1. Скачиваем файлы сайта и базу данных со старого хостинга

    Способ №1:

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

    Чтобы попасть в эту папку, можно зайти по FTP (я использую программы Total Commander или File Zilla) или через файловый менеджер хостинга (этот способ удобнее, как мне кажется). Скачайте полученные архивы к себе на компьютер. Распакуйте базу данных.

    Если по какой-то причине вы не смогли сделать бэкапы, существует второй способ:

    Далее зайдите в раздел управления базами данных вашего хостинга, выберите phpMyAdmin. В колонке слева выберите название вашей базы данных из списка. Перейдите на вкладку Экспорт (Export) и щелкните Ок(Go). Сохраните сгенерированный файл.

    Итак, дамп БД в виде файла с расширением.sql и архив со всеми файлами блога находятся на нашем компьютере и готовы к переносу на другой хостинг.

    2. Перенос данных с компьютера на новый хостинг

    В разделе «базы данных» нового хостинга добавьте нового пользователя БД и новую БД, придумайте ей пароль и запомните его. У меня это выглядит так:

    Внимание! Если вы так же меняете доменное имя, то сейчас необходимо выполнить пункт « », затем вернитесь и продолжайте по порядку.

    Откройте phpMyAdmin, найдите в списке слева вашу базу данных, перейдите на вкладку Импорт (Import). Закачайте ранее скачанный на компьютер дамп базы данных с разрешением.sql и нажмите ОК (Go).

    Теперь залейте архив с файлами на ftp и разархивируйте его. Следите, чтобы в итоге файлы оказались в правильной папке, на моем хостинге это папка public_html, так же она может называться httpdocs, www или иначе, в зависимости от хостинга. Проверьте, чтобы эта папка была пустой, прежде чем распаковывать в нее архив.

    3.Настройка соединения с базой и установка прав

    Найдите в корне сайта файл wp-config.php. Поменяйте в нем данные подключения к базе данных на новые:

    /** Имя базы данных для WordPress */ define("DB_NAME", "имя_вашей_базы_данных"); /** MySQL имя пользователя */ define("DB_USER", "имя_пользователя_базы_данных"); /** MySQL пароль базы данных */ define("DB_PASSWORD", "пароль_к_базе_данных");

    Установите права (атрибуты) 777 для папки wp-content/uploads и всех вложенных папок. Это делается по ftp или в файловом менеджере:

    Привязка вашего домена к новому хостингу

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

    • Узнайте у нового хостера его DNS сервера. Обычно они написаны в письме, отправленном вам на почту при регистрации хостинга.
    • Зайдите в личный кабинет своего регистратора доменов — сайт, где вы покупали домен. Я пользуюсь 2domains.ru и расскажу, как это делается там. Найдите раздел «Управление DNS-серверами» и измените DNS-сервера на новые:

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

    Если вы не переезжаете на новый домен, для вас урок окончен. Если сайт не заработал, посмотрите .

    Перенос WordPress на другой домен, папку

    Если помимо хостинга, вам нужно перенести сайт на другой домен, придется столкнуться с некоторыми сложностями. В отличие от большинства CMS, в вордпрессе все пути прописаны абсолютными ссылками (это неприятный минус системы) и нам предстоит бороться с ними вручную. Давайте по порядку:

    1. Работа с базой данных

    Когда вы скачали дамп базы данных со старого хостинга, надо открыть ее в редакторе (я пользуюсь Dreamweaver) и заменить все упоминания о старом домене на новые:

    Есть еще один способ: когда вы импортируете базу данных, зайдите на вкладку SQL совершите три запроса:

    UPDATE wp_options SET option_value = REPLACE (option_value, "https://old_domain.ru", "https://new_domain.ru") WHERE option_name = "home" OR option_name = "siteurl";

    UPDATE wp_posts SET guid = REPLACE (guid, "https://old_domain.ru", "https://new_domain.ru");

    UPDATE wp_posts SET post_content = REPLACE (post_content, "https://old_domain.ru","https://new_domain.ru");

    2. Изменения в.htacces и robots.txt

    Найдите такие файлы в корневом каталоге сайта, найдите в них упоминания имени вашего старого домена и замените на новое.

    3. Изменения в файлах сайта

    Замечу, что этот пункт не обязательный. Если у вас все заработало, то его можно пропустить. Иногда бывает, что в теме ворпресс тоже закрадываются абсолютные ссылки на старый домен и их нужно заменять.

    Можно распаковать архив с файлами вашего сайта и выполнить поиск по всем этим файлам на наличие в них старого домена. Аналогично работе с базой, смените старые ссылки на новые. Ура, с переносом wordpress на другой домен покончено.

    Перенос сайта в другую папку

    Если вам нужно перенести блог в другую папку (например, domain.ru/blog), внесите следующие изменения в.htaccess (изменения выделены жирным):

    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /blog /
    RewriteRule ^index\.php$ — [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /blog /index.php [L]
    # END WordPress

    Возможные ошибки, связанные с переносом WordPress блога

    На случай, если ваш сайт не заработал, привожу примеры типичных ошибок. Если вашей ошибки нет в списке, оставьте комментарий, я с радостью дополню этот список:)

  • Error establishing a database connection. Такая ошибка случается, если неверно введены данные вфайле wp-config.php.
  • Открылась страница с установкой WordPress. Подобная ситуация могла возникнуть из-за ошибки импорта базы данных. Попробуйте удалить все таблицы базы и заново импортировать дамп.
  • Вы видите страницу вашего хостинг-провайдера с приветствием. Причиной может стать то, что вы не очистили папку public_html (httpdocs), прежде чем распаковать в нее архив. Удалите файл index.html.
  • Forbidden. You don"t have permission to access / on this server. Возможно, вы залили файлы сайта в неправильную папку.
  • У многих вебмастеров и владельцев сайтов может возникнуть ситуация, когда нужно сайт перевести с одного домена, на другой. необходимо сайт, работающий на движке WordPress, перенести на новый домен. Т.е. суть данного действа заключается только в изменении имени домена, все содержимое же, равно как и структура ссылок, остается прежним. При этом не маловажный момент - сохранение показателей тИЦ и PR.

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

    Есть один немаловажный момент: при переносе на новый домен, нам теперь необходимо поддерживать 2 домена — старый и новый, и перенос этот осуществляется в 2 шага:

    1) копируем все скрипты WP-сайта и БД со старого домена на новый
    2) делаем 301 редирект со старого домена на новый

    Перенос скриптов

    Есть несколько путей выполнения первого пункта переноса, для разных вебмастеров будут удобнее разные методы. Итак:

    №1

    Самый оптимальный способ, если мы переносим сайт на одном хостинг-аккаунте:

  • заходим в админ-панель сайта на страницу «Настройки - Общие»
  • в полях «Адрес WordPress (URL)» и «Адрес сайта (URL)» укажите URL нового домена и подтвердите изменения, нажав на кнопку «Сохранить изменения»
  • Готово. Теперь WordPress после сохранения настроек перебрасывает Вас на новый домен с уже прописанными настройками.

    №2

    Этот способ подходит, если мы переносим скрипты и БД в другой аккаунт хостинга или на другой хостинг:

  • копируем скрипты WordPress на новый домен
  • копируем SQL-дамп и открываем его в текстовом редакторе, если он не очень большой, то все пройдет более-менее просто
  • нужно заменить все вхождения старого адреса сайта на новый, например, http://domain.ru заменить на http://newdomain.ru, и сохраните этот sql-дамп
  • загрузите дамп в базу данных на сервере, например, через PHPMyAdmin
  • Готово. Сайт на WordPress работает по новому адресу. Но делать нужно аккуратно, так-как можно что-нить поломать в SQL-дампе.

    №3

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

  • копируем скрипты WordPress и SQL-дамп на новый домен/хостинг/аккаунт
  • зайдите в phpMyAdmin и выберите базу данных нужную базу данных
  • нажмите на вкладку «SQL» и поочередно выполните следующие 3 запроса
    UPDATE wp_options SET option_value = replace (option_value, "http://domain.ru" , "http://newdomain.ru" ) ;

    UPDATE wp_options SET option_value = replace(option_value, "http://domain.ru", "http://newdomain.ru");

    UPDATE wp_posts SET guid = replace (guid, "http://domain.ru" , "http://newdomain.ru" ) ;

    UPDATE wp_posts SET guid = replace(guid, "http://domain.ru","http://newdomain.ru");

    UPDATE wp_posts SET post_content = replace (post_content, "http://domain.ru" , "http://newdomain.ru" ) ;

    UPDATE wp_posts SET post_content = replace(post_content, "http://domain.ru", "http://newdomain.ru");

  • Готово. Теперь сайт будет открываться по новому адресу.

    Создание 301 редиректа

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

    1 2 3 Options + FollowSymLinks RewriteEngine on RewriteRule (.* ) http:// newdomain. ru/ $1 [ R= 301 , L]

    Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1

    На этом, пожалуй, и все. Процедуру переноса сайта WordPress на новый домен можно считать оконченной.

    Несколько слов относительно тИЦ и PR сайта. С реализованным 301 редиректом эти показатели со временем передадутся новому домену, но будут ниже, так как редирект добавляет к параметрам сайта. Главное преимущество в том, что 301 редирект передаст все поведенческие факторы новому домену, а над позициями в поиске нужно работать всегда.

    Сейчас, поддерживая около 17% сетевого контента, WordPress стремительно становится наиболее предпочитаемой CMS для среднестатистического пользователя. Но что делать с сайтами, созданными с устаревшей CMS, или без нее вообще? Означает ли переход на WordPress то, что вам придется начать все сначала и потерять уйму времени, энергии и денег, которые вы вложили в этот веб-сайт? Нет!

    Перенос сайта (включая дизайн) на WordPress гораздо проще, чем вы думаете. В этом уроке мы покажем процесс переноса на примере нашего проекта. Мы также рассмотрим некоторые вопросы, с которыми вы возможно столкнётесь, и найдём на них ответы.

    Подробнее, об этом уроке

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

    Цели

    Данный урок призван помочь вам со следующим:

    Предположения

    Я надеюсь, что вы имеете начальное предоставление о работе с WordPress. Опыт работы с WordPress может быть полезным, но не является необходимым. Я также предполагаю, что у вас есть веб-сайт и дизайн, который вы хотите перенести на wordpress.

    Первые шаги
  • Оцените веб-сайт . Внимательно просмотрите страницы на вашем существующем веб-сайте и определите тип контента (стандартные страницы, фотогалереи, страницы ресурсов и т.д.), обратите внимание на любую информацию, которую можно посчитать важной.
  • Подготовьте среду . Настройте WordPress и приготовьтесь к импорту.
  • Импортируйте контент . Перенесите и организуйте ваш контент через утилиту импорта, вручную (для небольшого количества контента, когда утилиты недоступны) или через настраиваемый процесс переноса.
  • Перенесите дизайн . Встройте свой существующий дизайн в предустановленную тему WordPress.
  • Проверьте веб-сайт и начинайте . Внимательно проверьте результат импорта, подправьте, где необходимо, установите редиректы URL и начинайте!
  • С этим планом в голове давайте начнём прорабатывать каждый шаг подробно.

    Начните с плана

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

    Импортируемый контент
    • как много контента необходимо импортировать (количество страниц, изображений)
    • можно ли ваш контент перенести вручную, или вам необходима утилита
    • если вам необходима утилита, то существует ли она
    • может ли контент определен в обычные «посты» или «страницы», или необходима настройка
    • должен ли дополнительный контент располагаться на определенных страницах
    • изменится ли структура URL. Если да, то необходимо ли перенаправление со старых URL-адресов
    Существующая функциональность
    • включает ли веб-сайт сторонние сервисы (данные и т. д.)
    • необходимо ли перенести формы (контактные формы, формы для заявлений и т. д.)
    • есть ли ограничения контента (например, только для зарегистрированных пользователей)
    • продает ли веб-сайт продукцию (виртуальную или реальную)
    • необходимо ли перенести отдельные администраторские настройки
    Рабочий пример

    Мой брат решил пожертвовать свой сайт для примера: его проект продает постеры и открытки компании вегетарианской еды. Он построил сайт на простом HTML, с вставками PHP базового уровня для шапки и нижнего колонтитула. Ниже представлен скринкаст, где я изменяю этот сайт, чтобы вы поняли процесс работы. Наслаждайтесь!

    Установка WordPress

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

    После того, как wordpress настроен и запущен, вы можете начинать работу!

    Для нашего примера, мы установили wordpress на тот же хостинг, в директорию /wp для продолжения процесса переноса.

    Настройки и плагины

    С установленным wordpress нам остается сделать минимальные поправки:

    • Обновите постоянные ссылки . Кликните «Настройки->Постоянные ссылки» , чтобы внести изменения. В большинстве случаев я просто изменяю постоянные ссылки на «postname» .
    • Обновите пользователей . Я создал аккаунт андимистраторского уровня для себя и для любого администратора или редактора, что необходимы для клиентов и партнеров. Я также убираю дефолтное имя пользователя «admin» , если оно существует.

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

    • Управление формами . Перенос форм так, как они есть может превратить все в хаос. Простое создание форм с нуля гораздо проще. Моим фаворитом является gravity forms . Другие варианты — это formidable и contact form 7 .
    • Управление SEO . SEO — очень деликатное явление. Смысл моей работы заключается в создании контента для людей, а не для поисковых систем. Поэтому, существует адекватный подход к SEO, поддерживаемый экосистемой wordpress. И если на вашем старом сайте есть пользовательские мета-описания, необходимо их перенести без потерь. Для этого поможет wordpress SEO .
    • Множество языков . Если ваш сайт поддерживает несколько языков, у WordPress есть решение. Мой выбор — плагин WPML . Еще одним решением может стать qTranslate .
    • Безопасность . Безопасность на WordPress — это хорошо знакомая мне тема. Возрастающая популярность WordPress сделало его неплохой целью для различного рода атак. Сам WordPress редко является проблемой, в основном она кроется в плохо охраняемой хостинговой среде и устаревших или плохо разработанных плагинах. Для большинства своих проектов я использую регулируемые хостинги WordPress, которые предлагают неплохие стандарты безопасности. В ряде опций можно назвать WPEngine , ZippyKid , Pagely и Synthesis . В добавок в регулируемому хостингу обратите внимание на плагины безопасности, такие как Better WP Security или WordFence.
    • Бэкапы . Если вы выбрали управляемый хостинг, то бэкапы обычно включены. Если вы сами делаете бэкап или вы хотите дополнительный слой защиты для данных, то есть отличные варианты, как например, VaultPress, CodeGuard, BackupBuddy, BackWPup .
    Импорт контента

    Итак, мы запустили и настроили WordPress, теперь самое время перенести весь ваш контент.

    Если у вашего старого сайта есть CMS, вам может быть доступна утилита. Начните искать скрип для переноса контента в Кодексе. Ели есть совпадение — здорово! Следуйте инструкциям и принимайтесь за работу. Если всё хорошо, то вы перенесёте свой сайт без каких-либо проблем.

    Если вашей CMS нет в списке или у вас нет CMS и у вас менее 100 страниц, тогда пригодится ручной перенос. Копируйте и переносите контент, записывая старые URL.

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

    В нашем случае, мы перенесли контент вручную и заменили существующую навигацию меню WordPress. Вы сможете посмотреть процесс в этом скринкасте.

    Перенести дизайн

    Теперь настало время перенести на WordPress наш дизайн. Если вы хотите обновить внешний вид сайта, тогда стоит приглядеться к множеству отличный тем WordPress в официальном хранилище и сторонних магазинах, например ThemeForest и Creative Market. В нашем случае, представим, что вы полностью довольны дизайном.

    Оценка дизайна

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

    Работа с исходным кодом

    Следуя своему опыту, могу сказать, что наиболее простой способ переноса дизайна — это работа с исходным кодом в браузере. Хотя доступ в хостинговой среде может быть полезно (особенно при работе с изображениями и скачиваемыми файлами), однако способы построения веб-сайтов настолько различаются, что вам придется переделывать оригинальную архитектуру, чтобы добиться чего-либо полезного.

    Прямая работа с исходным кодом сэкономит ваше время, покажет скрытые полезные функции и предоставит вам все, что нужно. Я пользуюсь браузером Google Chrome.

    Создание пользовательской темы

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

    Большинство моих проектов переноса начались с последних версий предустановленных тем WordPress. Недавно я удалил исходную тему, чтобы создать мою тему, которую я буду использовать в нашем примере и, которую вы можете сами использовать. Давайте начнем работу!

    Скачайте копию (zip) шаблона для переноса или продолжайте со своей темой, на выбор.

    Стиль страницы.

    Нашим первым шагом будет перенос стилей со старого сайта. В большинстве случаев это не сложнее, чем поиск в исходном коде соответствий на.css:

  • Откройте style.css.
  • Замените детали в теме (имя, URL, описание и т. д.) на ваши собственные.
  • Вставьте стили со старого сайта.
  • Заметка по поводу картинок

    Если вы переносите стиль страницы, найдите и обновите любую информацию об изображениях. В общем, мне нравится держать все изображения в папке /images/ в директории темы. Чаще всего необходимо менять расположение изображений в оригинальной CSS, и я удостоверился, что поменял все ссылки и шаблоны соответственно.

    Заголовок

    Следующим шагом будет создание заголовка для нашей новой темы. Нашей целью будет совместить структуру текущего кода с шаблонами WordPress. Вот что нам стоит сделать:

    • Скопируйте HTML структуру старого сайта.
    • Замените статическое меню на меню, поддерживаемое WordPress.
    • Используйте тэг WordPress title и оставьте wp_head на месте.
    • Вставьте другие важные теги из старого заголовка.

    Давайте взглянем на код!

    Оригинальный HTML Vegan Food Pyramid posters, postcards and wallpapers Vegan Food Pyramid Подогнанный заголовок (header.php) try{Typekit.load();}catch(e){} Объяснение

    Одной из проблем переноса является определение того, стоит ли улучшать код по мере продвижения. У нашего проекта есть разделы, которые можно улучшить, но мы решили оставить все как есть. Большинство из вас будет работать с переносом дизайна, который не был предназначен для улучшений.

    Если время и возможности позволяют, я советую улучшить код . Или же свыкнитесь с мыслью, что с сайтом на WordPress внести изменения будет гораздо проще.

    Давайте проработаем изменения, которые мы внесли.

    • Тип документа . Убедитесь, что вы перенесли тот же самый тип. В этом случае оригинальный html уже имеет доктайп HTML5 (относительно редкий случай на старых сайтах). Используя современный доктайп в коде, написанном для старого кода вы можете испортить шаблон.
    • Мета-теги . Я обычно переношу большую часть метатегов так, как они и есть, заменяя их в WordPress. Исключение в нашем случае составляет ссылка на файл стилей, вставляемая автоматически через wp_enqueue_style в файле functions.php .
    • Скрипты . Скрипты могут быть запутанными. Если скрипт находится на каждой странице (например, трекинговый скрипт, или скрипт шрифта), тогда необходимо разместить его в файле заголовка или нижнего колонтитула. Если необходимо, чтобы он появлялся лишь в отдельных местах, то подойдут теги условий. Лучше всего добавьте все скрипты в заголовок через wp_enqueue_script . Если вы готовы принять вызов, то я советую вам этот способ.
    • wp_head . Оставьте внизу тега в файле header.php . WordPress также использует wp_head, чтобы расставить скрипты и файлы стилей, используемые в теме и в плагинах, что вы установили. Без wp_head большинство плагинов просто не будут работать.
    • Body_class . Обратите внимание на использование тега . WordPress использует это, чтобы предоставить ряд полезных классов к тегу пока вы присматриваете страницу. В нашем примере они не используются. Ваши должны иметь уникальные ID или классы на каждой странице, в этом случае вам нужно создать произвольные функции используя теги условий, чтобы добавить соответствующие классы для каждой страницы.
    • Меню WordPress . Переход на меню WordPress является одним им самых сложных задач в переносе. Он будет у нас довольно прямолинейный. У нас есть простое меню, которые использует класс active (сгенерированый через PHP), чтобы показать, какую страницу посещает пользователь. Функция wp_nav_menu очень гибкая и предлагает встроенную функциональность, чтобы обрабатывать текущее состояние элемента в меню. Я обновил условия в файле стилей на active и изменил их, чтобы они использовали эквивалент, сгенерированный wp_nav_menu , который является current-menu-item . Смотрите скринкаст о переносе контента, чтобы понять, как настраивать меню на нашем примере.

    Вот и готова оболочка. Давайте приступил к следующему шагу.

    Подвал

    Перенос подвала обычно обходится без проблем. Как и в случае с шапкой, нам необходимо объединить части оригинального исходного кода. Давайте займемся этим.

    Оригинальный HTML

    © 2013 VeganFoodPyramid.com

    Подогнанный футер (footer.php)

    © VeganFoodPyramid.com

    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src="" + gaJsHost + "google-analytics.com/ga.js" type="text/javascript"%3E%3C/script%3E")); try { var pageTracker = _gat._getTracker("UA-6992755-1"); pageTracker._trackPageview(); } catch(err) {} Объяснение

    Некоторые подвалы сложно перенести (например, со сложными меню и виджетами), но в большинстве случаев это довольно просто. В нашем случае мы объединили HTML с нашим шаблоном подвала, оставляя обращение wp_footer . Мы также изменили ссылку на дату, чтобы использовать PHP и быть уверенными, что он обновляется каждый год.

    Домашняя страница

    Одна из проблем переноса — это то, что существует куча способов выполнить эту работу. Хорошим примером может служить домашняя страница, потому что она обычно наиболее отличается от остальной части сайта. Самый простой способ обычно самый верный. Я решил разместить весь контент с домашней страницы прямо в шаблоне. Изменять ее придется редко и это всегда можно будет сделать, изменяя шаблон.

    Давайте посмотрим на код без заголовка и футера, который мы уже перенесли.

    Оригинальный HTML Poster $30 each Buy Postcards $50 for 50

    Includes free shipping worldwide

    Buy Подогнанная главная страница /images/Vegan-Food-Pyramid-New.jpg">