https://help.superhosting.bg/change-site-url-address-wordpress.html
  • bg

Хостинг, Домейни, Cloud, Виртуални сървъри (VPS), Managed VPS, SSL сертификати

Ръчна промяна на URL адреса (домейна) на WordPress сайт

WordPress
change site url, wp url, wordpress address, wordpress url, wordpress domain, промяна на адреса на wordpress

Преди да преминете към промяна на URL адреса на вашия WordPress сайт, трябва да имате предвид как и къде точно е записан той в базата данни. Така ще можете да прецените дали искате промяната да се извърши автоматично или вие собственоръчно ще промените адреса, в настройките и базата данни на WordPress.

info-iconПри автоматичната промяна на адреса, през WordPress Manager by SuperHosting, можете, само с няколко клика, да смените адреса. Например:
от http://myoldsite.com -> http://mysupersite.bg
от http://mysitename.com/blog -> http://blog.mysitename.com
от http://mysupersite.com -> https://mysupersite.com

info-iconТази инструкция е само за промяна на URL адреса в WordPress и базата данни. Тук не са описани стъпки за преместване на файловете и базата данни на WordPress сайт. В случай че искате да преместите целия сайт в друг/нов хостинг акаунт, вижте още:
Преместване на WordPress от един хостинг акаунт в друг
Преместване на сайт от Blogger или wordpress.com

Как и къде се записва URL адреса на сайта в WordPress? връзка към този раздел

В таблица wp_options

Записи в базата данни, съдържащи url адреса на WordPress сайтаСтандартно WordPress записва URL адреса на сайта в базата данни, в две определени таблици. За основната настройка на адреса, информацията се записва в таблица wp_options, с опциите "home" и "siteurl". Тези две опции се визуализират в административния панел -> Настройки, с имена "WordPress Адрес (URL)" и "Адрес на сайта (URL)".

WordPress Адрес (URL) - адрес, на който реално се намират системните файлове на WordPress, например http://mysuperblog.com/wordpress;
Адрес на сайта (URL) - адрес на сайта, така както искате да се изписва в уеб браузъра, например http://mysuperblog.com;

info-iconПромяна на тези два записа може да се извърши или през админ панела -> Настройки или директно с редакция в базата данни.

В таблица wp_posts

Уникални адреси в WordPressЗа всяка една страница, публикация и файл, системата WordPress създава и ползва уникален адрес, който се записва в таблица wp_posts, в колона guid (Globally Unique Identifier).

Тези адреси не се променят, съдържат името на домейна и служат за глобален идентификатор на дадения елемент.

WordPress различава отделните статии, страници и други пост елементи по този уникален адрес. Той не се променя дори при редакция на url адреса на страницата.

Ако редактираме статия, с уникален адрес http://mysuperblog.com/?p=1, и й променим уеб адреса, например от /this-is-old-post.html на /this-is-new-post.html, за обикновения потребител и търсачките това ще изглежда като съвсем друга страница. За WordPress и RSS четците обаче, това ще е същата страница, защото уникалният й идентификатор, пазещ се в базата данни в guid колоната, не се е променил (http://mysuperblog.com/?p=1).

Когато са активирани "хубавите" адреси, при достъп до уникалния идентификатор, WordPress ще направи автоматично пренасочване към уеб адреса на страницата.
http://mysuperblog.com/?p=1 -> http://mysuperblog.com/this-is-new-post.html

Уникалните идентификатори се ползват основно от четците на RSS новини, за да различават коя статия вече е свалена и коя е нова.

info-iconВажно: Промяна на записите в колона GUID е силно непрепоръчително, най-малкото след промяната им, всички потребители, абонирани за RSS новите, ще получат наново всички съобщения. При промяна на URL адреса на сайта, промяна на записите в GUID не се препоръчва. Все пак, ако промяната е наложителна, може да се извърши с редакция на данните в базата данни.

Сериализирани данни в базата данни връзка към този раздел

Когато url адресът на сайта е записан като обикновен текст в базата данни, промяната му може да се извърши, като само се смени стария с новия адрес. Когато обаче адресът е записан в сериализирани данни, само смяна на текста ще доведе до проблемна работа на зависимия плъгин, джаджа или тема.

Сериализацията е метод за съхранение на обекти, така че да може да се запазят заедно с параметрите им. При PHP системите информацията се преобразува в/от сериализирани данни чрез функциите на PHP serialize() и deserialze(). По този начин информацията се записва в базата данни във вид, в който PHP ще може да разбере и обработи. Този начин за съхранение на данни в базата данни се използва от самия WordPress, от плъгини, теми, джаджи и други.

В зависимост от функциите на даден плъгин, той може да си записва URL адреса на сайта в базата данни. Често може да се видят записи от плъгини в таблиците wp_options, wp_postmeta и много други. Когато плъгините записват адреса обаче, той най-често е съпроводен с някакви параметри, използвани от самия плъгин.

В тези случаи записите в базата данни имат подобен вид:

a:1:{s:14:"wordpress.home";s:22:"http://mysuperblog.com";}

a:2:{i:0;s:0:"";s:1:"x";s:39:"http://mysuperblog.com/images/image.png";}

Тези записи съдържат сериализирани данни, което означава, че при промяна на броя символи в URL адреса, ще трябва да се промени и предхождащия го параметър (s:xx:).

Ако адресът се променя например от http://mysuperblog.com на http://mynewsitename.com, последната част в посочените записи ще трябва да се промени от:

s:22:"http://mysuperblog.com"

s:39:"http://mysuperblog.com/images/image.png"

на:

s:24:"http://mynewsitename.com"

s:41:"http://mynewsitename.com/images/image.png"

Ако само се замени стария (mysuperblog.com) с новия домейн (mynewsitename.com), плъгинът, който ползва тези записи, ще спре да функционира коректно/изобщо.

По принцип на един нов WordPress сайт е напълно възможно, безпроблемно, да се промени адресът само с промяна на настройките през администрацията.

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

info-iconВажно: Когато се променя URL адреса на сайта, промяната на записите със сериализирани данни е необходима. Това може да се извърши чрез редакция на данните в базата данни.

Промяна на URL адреса в базата данни връзка към този раздел

Има няколко начина, чрез които можете да извършите смяната на стария, с новия адрес в базата данни. Тук ще видите само начините, които включват обработката и на сериализираните данни. Начинът чрез SQL заявка, за търсене и замяна на текста в цялата базата данни, ще бъде пропуснат. Както и другия начин - сваляне на SQL файл с информацията от базата данни и замяната на адреса в него. Към момента съществуват други, малко по-автоматични и надеждни начини, за да се извърши промяната коректно.

info-iconВажно: Смяна на адреса, чрез търсене и замяна в цялата база данни, може да доведе до повреждане на записите със сериализирани данни. Това от своя страна, ще се отрази на плъгините или джаджите, които ползват тези записи и може да спрат да функционират коректно.

WP-CLI

Промяната на адреса в базата данни може да се извърши изключително бързо, лесно и коректно, с инструмента WP-CLI.

Примерна команда за WP-CLI, чрез която може да се смени адресът, като записите в колоната guid ще бъдат пропуснати:

wp search-replace 'myblog.com' 'superblog.com' --skip-columns=guid

Ако използвате системно инсталирания WP-CLI в хостинг акаунта, тогава командата ще изглежда така:

wp-cli search-replace 'myblog.com' 'superblog.com' --skip-columns=guid

Командата ще обработи и сериализираните данни в базата данни.

В командата search-replace на WP-CLI се използват възможностите на следния инструмент: Search-Replace-DB.

Плъгин

Промяна на данни в базата данни може да се извърши и през плъгин за WordPress. Ето няколко примерни плъгина: Better Search Replace, Search & Replace и WP Migrate DB.

Тези плъгини поддържат важната функционалност за обработка на сериализираните данни.

Промяна на URL адреса чрез конфигурационен файл връзка към този раздел

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

Файл wp-config.php

В конфигурационния файл на системата (wp-config.php) може да се зададе ръчно адреса на сайта. Например:

define('WP_HOME','http://mysupersite.com');
define('WP_SITEURL','http://mysupersite.com');
http://mysupersite.com - заменете с адреса на сайта;

Този начин за задаване на адреса е подходящ, ако сайтът е съвсем нов и в базата му данни все още няма други записи с адреса. При използване на този начин за задаване на адреса, съответните опции ще бъдат деактивирани в админ панела -> Настройки.

Файл functions.php

Файлът functions.php се ползва от темата на сайта. В него можете да добавите два реда, точно след отварящия PHP таг <?php:

update_option( 'siteurl', 'http://mysupersite.com' );
update_option( 'home', 'http://mysupersite.com' );
http://mysupersite.com - заменете с адреса на сайта;

След като запишете файла и заредите сайта, записите в таблица wp_option (siteurl и home) ще се презапишат. Този начин за задаване на адреса няма да обнови останалите записи в базата данни.

500px270px
SuperHosting.BG
    WordPress
  • Активиране на Redis в WordPress (с Redis Object Cache)
    В WordPress може да бъде активирано кеширане с Redis, чрез ползване на допълнителен плъгин. Има различни плъгини, които дават възможност за ползване на Redis в WordPress, два от които са... »
  • Активиране на Redis в WordPress (с W3 Total Cache)
    В WordPress може да бъде активирано кеширане с Redis, чрез ползване на допълнителен плъгин. Бележка: Преди да активирате Redis във вашия сайт, уверете се, че Redis е активиран в cPanel ->... »
  • Инсталация на WP-CLI
    WP-CLI е инсталиран на всички сървъри за споделен Linux хостинг, при СуперХостинг.БГ. В cPanel -> WordPress Manager by SuperHosting -> WP-CLI можете да видите дали WP-CLI е активиран за хостинг... »
  • Активиране на SSL - WordPress Manager by SuperHosting
    През WordPress мениджъра можете, с един клик на мишката, да инсталирате SSL сертификат и да го конфигурирате за работа с вашия WordPress сайт. Преди да е възможно да инсталирате SSL сертификат,... »
  • Нова инсталация - WordPress Manager by SuperHosting
    През меню Нова инсталация на WordPress в WordPress мениджъра, можете да инсталирате нов WordPress сайт. Инсталацията се извършва бързо и лесно, само с няколко клика на мишката. Настройки на сайта Попълнете основната... »
Всички права запазени © 2005-2017 , www.superhosting.bg