Intereting Posts
Может ли WordPress автоматически менять ссылки? Использует ли ресурс WP ресурс памяти при отсутствии посетителей? Отображение разных страниц в зависимости от значения cookie Просмотр / редактирование веб-сайта Multisite после истечения срока действия домена Сохранить атрибуты объекта JSON для пользовательских метабокс как получить правильную категорию сообщения в случае нескольких категорий? Любой способ назначить категории и теги ссылок на ссылки? Использование WP_Query для получения сообщений случайным образом С сегодняшнего дня Создание страницы сообщений Как переписать URL-адрес сообщения в соответствии с категорией? breadcrumb должен показать все страницы и подстраницы Обновить значения json-файла в wordpress Обновление базы данных с помощью дополнительных настраиваемых полей Шаблон страницы регистрации WordPress отображать самые популярные теги категории?

Как перемещать wp-контент (или загружать) вне каталога WordPress

Я пытаюсь переместить каталог wp-content вне каталога wordpress и поражать всевозможные странные проблемы. Несмотря на то, что http://codex.wordpress.org/Editing_wp-config.php#Moving_wp-content_folder говорит, что вы можете это сделать, кажется, что структура каталогов глубоко связана с WP-кодом. Например, я получаю сообщения об ошибках, например:

PHP message: PHP Warning: file_exists(): open_basedir restriction in effect. File(/srv/wp.content/themes) is not within the allowed path(s): (/srv/wordpress/:/tmp) in /srv/wordpress/wp-includes/theme.php on line 369 

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

Удалось ли кому-либо успешно создать каталог wp-content или, по крайней мере, загрузить каталог за пределами корневого каталога?

Solutions Collecting From Web of "Как перемещать wp-контент (или загружать) вне каталога WordPress"

Вы должны определить WP_CONTENT_DIR и WP_CONTENT_URL :

 const WP_CONTENT_DIR = '/path/to/new/directory'; const WP_CONTENT_URL = 'http://content.wp'; 

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

 /** * Add a new directory to the 'open_basedir' list. * * @link http://www.php.net/manual/en/ini.core.php#ini.open-basedir * @param string $new_dir * @return void */ function extend_base_dir( $new_dir ) { $separator = ':'; // all systems, except Win // http://stackoverflow.com/a/5879078/299509 if ( 'WIN' === strtoupper( substr( PHP_OS, 0, 3 ) ) ) $separator = ';'; $dirs = explode( $separator, ini_get( 'open_basedir' ) ); $found = array_search( $new_dir, $dirs ); // Already accessible if ( FALSE !== $found ) return; $dirs[] = $new_dir; ini_set( 'open_basedir', join( $separator, $dirs ) ); } 

Теперь назовите это так:

 extend_base_dir( WP_CONTENT_DIR );