Wordpress multisite общая база данных с постами, страницами?

Добрый день ! Есть 1 подсайт который по сути будет иметь другой шаблон с функциями для людей с проблемами зрения. Как можно дублировать весь контент с основного сайта на подсайт. Сработает ли такой способ - в конфигурационном файле подсайта указать таблицы бд основного сайта? И даже если сработает, то где находится конфигурация? Я вот найти не смог, спасибо!
  • Вопрос задан
  • 1477 просмотров
Решения вопроса 1
dimasmagadan
@dimasmagadan
Не сработает. Вы делаете не правильно.

Что вам нужно сделать, это поставить один блог, с двумя шаблонами.
Один шаблон будет выводить для людей с проблемами зрения, второй для всех остальных.
Для переключения между шаблонами повесить функцию на template_redirect.
В функции смотрим, если есть какая-то кука, или если есть $_GET['swithc'], то показываем другой шаблон.

Но, если вы так категорично настроены на использование сети сайтов, можете воспользоваться switch_to_blog(), restore_current_blog() и тп.

Алгоритм будет такой: при добавлении нового поста добавляем в основной блог, затем переключаемся на второй, дублируем в него же, переключаемся обратно.
И точно так же при всех изменениях - добавлениях комментариев, редактировании постов и тп.

Но, как писал выше, этот вариант мало того, что неправильный, так он еще и сложнее в реализации.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
arizona
@arizona
а что я, собственно, здесь делаю?...
Насколько мне известно, штатно это сделать нельзя.
У меня получилось грубым переназначением страниц wp_options && wp_site в ядре на моменте загрузки мультисайта.
Ответ написан
Комментировать
IT-means-lucky
@IT-means-lucky
mozgovitui@gmail.com
Wordpress Multisite по-умолчанию работает с одной базой данный. Но таблицы имеют вид wp_1_posts, wp_2_posts, wp_3_posts и так далее.

База данных в файле wp-config.php
  • DB_NAME — имя БД
  • DB_USER — имя пользователя
  • DB_PASSWORD — пароль пользователя
  • DB_HOST — адрес/имя сервера БД

Примечание:
Теоретически, это возможно сделать просто прописав на втором сайте точно такое же подключение как и на первом.

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

Еще примечание:
На первом сайте в админ панели Wordpress, Tools>Export>All Content(или только Posts)

На втором сайте в админ панели Wordpress, Tools>Import>Wordpress Importer
Что касается новых постов, кажется есть плагин для расшаривания контента в сети мультисайта
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы