0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 348 Просмотров
*

Леон

  • Давно я тут
  • 277
  • 4
Здравствуйте. Можно ли такое реализовать и в в каком направлении двигаться.
Имеются 40 сайтов (на поддоменах). Один из них будем считать "главным" (домен).

Задача в том, чтобы некоторые материалы размещенные на главном сайте выводились на всех остальных сайтах.

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

Сейчас, я размещаю материал на одном сайте, копирую код материала и вставляю его на все остальные. Но все равно нужно зайти в каждую админку и создать материал, выбрать категорию, вставить код и сохранить. Это отнимает много времени.

Может есть какие-то скрипты или компоненты для этих дел?
*

Леон

  • Давно я тут
  • 277
  • 4
Re: Вывод материалов из другой базы
« Ответ #1 : 03.12.2015, 00:07:41 »
Так как категории и пункты меню на сайтах одинаковые (даже id, были сделаны на одном шаблоне и раскопированы) хочу попробовать реализовать это скриптом.

Сделать php файл с формой создания материала, в которой будет заполняться заголовок, категория, дата создания и сам текст материала, затем данные будут подставляться в скрипт создания материала:

Код
INSERT INTO `s1_content` (`id`, `asset_id`, `title`, `alias`, `introtext`, `fulltext`, `state`, `catid`, `created`, `created_by`, `created_by_alias`, `modified`, `modified_by`, `checked_out`, `checked_out_time`, `publish_up`, `publish_down`, `images`, `urls`, `attribs`, `version`, `ordering`, `metakey`, `metadesc`, `access`, `hits`, `metadata`, `featured`, `language`, `xreference`) VALUES
(0, 811, 'Заголовок', 'alias', '', '', 1, 104, '2015-10-19 18:20:29', 612, '', '2015-10-19 18:20:29', 0, 612, '2015-10-19 18:20:29', '2015-10-19 18:20:29', '0000-00-00 00:00:00', '{}', '{}', '{"show_title":"","link_titles":"","show_tags":"","show_intro":"","info_block_position":"","show_category":"","link_category":"","show_parent_category":"","link_parent_category":"","show_author":"","link_author":"","show_create_date":"","show_modify_date":"","show_publish_date":"","show_item_navigation":"","show_icons":"","show_print_icon":"","show_email_icon":"","show_vote":"","show_hits":"","show_noauth":"","urls_position":"","alternative_readmore":"","article_layout":""}', 1, 1, '', '', 1, 4, '{"robots":"","author":"","rights":"","xreference":""}', 0, '*', '')

Скрипт выполняется и данный материал размещается на сайте. Циклом будет происходит подключение к каждой нужной базе и выполняться скрипт.

Может кто уже пытался сделать что-то подобное, стоит ли заморачиваться?





Находил на этом форуме примерный текст php файла, но он почему-то не работает:
В корне сайта создал file.php
Код
<?php
$db = mysql_connect("localhost","имя","пароль");
mysql_select_db("имя базы" ,$db);

/*составляем запрос:*/
$result = "INSERT INTO `s1_content` (`id`, `asset_id`, `title`, `alias`, `introtext`, `fulltext`, `state`, `catid`, `created`, `created_by`, `created_by_alias`, `modified`, `modified_by`, `checked_out`, `checked_out_time`, `publish_up`, `publish_down`, `images`, `urls`, `attribs`, `version`, `ordering`, `metakey`, `metadesc`, `access`, `hits`, `metadata`, `featured`, `language`, `xreference`) VALUES (0, 811, 'Заголовок', 'alias', '', '', 1, 104, '2015-10-19 18:20:29', 612, '', '2015-10-19 18:20:29', 0, 612, '2015-10-19 18:20:29', '2015-10-19 18:20:29', '0000-00-00 00:00:00', '{}', '{}', '', 1, 1, '', '', 1, 4, '{'robots':'','author':'','rights':'','xreference':''}', 0, '*', '')";
 
$db->setQuery($result); //выполняем запрос
if ($db->query()) {
//проверяем, правильно ли всё сделали
echo 'это спарта, блеать!';
}
?>

При выполнении, подключение проходит, но после выдает ошибку:
Код
Fatal error: Call to a member function setQuery() on resource in /var/www/leonkennedi/data/www/ds1.bkobr.ru/l.php on line 8

8-я строка это: $db->setQuery($result); //выполняем запрос
« Последнее редактирование: 03.12.2015, 00:14:32 от Леон »
*

b2z

  • Support Team
  • 7462
  • 742
  • Разраблю понемногу
Re: Вывод материалов из другой базы
« Ответ #2 : 03.12.2015, 14:50:57 »
Поищите на форуме программное создание материала. Ну и наверное это плагином можно как-то сделать. Только триггер нужный надо как-то передать, что типа этот материал надо раскопировать.
*

Леон

  • Давно я тут
  • 277
  • 4
Re: Вывод материалов из другой базы
« Ответ #3 : 04.12.2015, 23:02:49 »
Да сложнова-то это все, сделал вот такой велосипед)


Логика такая, php скрипт по очереди проверяет, если отмечен первый чекбокс публикует материал на первом, отмечен второй публикует на втором....и выводит список сайтов и категорий где он его опубликовал.

Если закрыть глаза на примитивность кода и все костыли, работает отлично. Сначала нужно разместить новость на одном сайте, затем скопировать исходный код и вставить в поле на форме.
« Последнее редактирование: 04.12.2015, 23:06:45 от Леон »
*

Леон

  • Давно я тут
  • 277
  • 4
Re: Вывод материалов из другой базы
« Ответ #4 : 08.12.2015, 21:43:43 »
Подскажите. Как при программном добавлении материала, получить ID этого материала?

*

robert

  • Профи
  • 4075
  • 376
Re: Вывод материалов из другой базы
« Ответ #5 : 08.12.2015, 21:56:19 »
Код: php-brief
$last_inserted_id=$db->insertid(); // по Jooml'овски 
// или
$last_inserted_id=mysqli_insert_id($connection);
cразу после выполнения команды INSERT.

P.S. Забыл скобки.
« Последнее редактирование: 08.12.2015, 22:12:16 от robert »
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема отображения модулей на шаблоне proto

Автор Artefact

Ответов: 10
Просмотров: 176
Последний ответ 17.08.2017, 18:29:40
от Artefact
[Решено]Изменить внешний вид пагинации

Автор pavel2950

Ответов: 1
Просмотров: 105
Последний ответ 17.08.2017, 15:31:24
от pavel2950
Кто запускал image recycle кроном?

Автор pavelrer

Ответов: 23
Просмотров: 298
Последний ответ 14.08.2017, 17:16:10
от dmitry_stas
Поддомены в папках основного домена

Автор Dmitriy5023

Ответов: 4
Просмотров: 146
Последний ответ 08.08.2017, 01:40:49
от Филипп Сорокин
Как убрать текст на главной?

Автор m03mug08

Ответов: 4
Просмотров: 139
Последний ответ 05.08.2017, 14:59:41
от Missile