Регистрация
Вход через соцсети
Восстановление пароля

Привязка новости к поддоменам.

Новый топик
28.08.2006, 12:50
Ответить | Цитировать
CryAngel
CryAngel

Зарегистрирован:
2006-07-27
Сообщений: 5

Вот такой вопрос возник:
Имеется домен и некоторое количество поддоменов. И, само собой, разделы новостей на каждом субдомене и основном домене. Хочется (даже необходимо) сделать так, чтоб можно было централизованно (например на основном домене) публиковать новость, и при добавлении выбирать на каких поддоменах она будет показываться.
Часть решения задачи я уже вижу, собственно:
1. альтернативная форма
2. вывод в форму списка поддоменов с возможностью выбора нескольких.
3. сделать выборку по большому счету тоже мелочь.

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

Я только начинаю разбираться с неткатом, и плохо знаю идеологию. Помогите разобраться?
28.08.2006, 15:50
Ответить | Цитировать
Andrew

Зарегистрирован:
2004-04-30
Сообщений: 134

У меня такой механизм есть на одном из проектов. Реализовано всЈ просто.

1. В шаблоне - переменные (чекбоксы):
Код:
$f_catalogue_1
$f_catalogue_2
$f_catalogue_3

По умолчанию они все включены.

1. В системных настройках шаблона:
Код:
$ignore_catalogue = true; 
$ignore_sub = true;
$ignore_cc = true;

Далее в выводе обрабатываются показы по обычной схеме:
Код:

".opt($f_catalogue_1 AND $current_catalogue==1,"Шаблон вывода на первом сайте")."
".opt($f_catalogue_1 AND $current_catalogue==1 OR $f_catalogue_2 AND $current_catalogue==2,"Шаблон вывода на первом и втором сайтах")."
".opt($f_catalogue_1 OR $f_catalogue_2 OR $f_catalogue_3,"Показываем на всех сайтах")."


В общем, дальше как угодно...

...жизнь прекрасна, когда правильно подобраны антидепрессанты...
29.08.2006, 11:53
Ответить | Цитировать
CryAngel
CryAngel

Зарегистрирован:
2006-07-27
Сообщений: 5

Да... Такое обдумывалось тоже. Но при моих условиях (больше тридцати поддоменов с заранее неизвестным их числом), такая реализация становится несколько напряжной.. (:
Теоретически, можно к таблице новостей добавить текстовое поле, в альтернативной форме добавления генерить список доменов, который, ессесно, будет возвращать массив выбранных айдишников. В действии после добавления (если я правильно понимаю идею), этот массив serialize, чтоб получить строку айдишников вида "1,13, 24, 32...", и хранить ее в текстовом поле. Но это все-таки весьма и весьма кривой путь. Неужели мастера нетката не подскажут новичку более прямой путь?
30.08.2006, 02:19
Ответить | Цитировать
Andrew

Зарегистрирован:
2004-04-30
Сообщений: 134

Погодите! Не всЈ сразу улыбка
Вы по каким критериям хотите сортировать новости для включения на том или ином поддомене?
При добавлении новости, как вы сообщите еЈ принадлежность к конкретному домену? Автоматически хотите?

...жизнь прекрасна, когда правильно подобраны антидепрессанты...
30.08.2006, 12:19
Ответить | Цитировать
CryAngel
CryAngel

Зарегистрирован:
2006-07-27
Сообщений: 5

"Бравушки!"(с) (((:

Собственно, я собирался создать дополнительное поле типа список через nc_list_select() содержащее в себе все поддомены. Список будет типа multiple. Соответственно возвращает он массив id выбранных поддоменов. (: вот этот массив где-то надо и хранить. (: Вот. (:
03.09.2006, 20:03
Ответить | Цитировать
Гость

Зарегистрирован:
1970-01-01
Сообщений: 665

Как вариант, у новости создайте текстовое поле, где через запятую будут хранится ID доменов, на которых должна показываться новость. Надеюсь, как из списка сформировать такую строку и поместить ее в это поле вы знаете? А дальше про отображении новости простоставить условие, например,
$query_where="a.NewsDomain LIKE '%$id,%'";
гда $id- каким-либо образом сформированный ID текущего домена.
198 196 2006-09-03 20:03:38 8710
Описание проекта