Язык
Контакты
GitHub
Поддержка
Регистрация
Войти
Логин: Пароль: Запомнить:
Пользователи
Последние сообщения
Ответить
1 2

Анонсом должен быть анонс!

Ater

  • Атом-мозг
  • Юзер
  • 750
  • Репутация:15 
  • Предупреждения: 0 
  • Регистрация:
    17 Авг 2010
#11
Сашка_из_Шебекино пишет:
ещё одно поле для ввода дискрипшена?
тип того

Все мое имхо...
------
Не флуди и не да зафлудим будешь!

Ater

  • Атом-мозг
  • Юзер
  • 750
  • Репутация:15 
  • Предупреждения: 0 
  • Регистрация:
    17 Авг 2010
#12
Итак, что я предлагаю для нормальной реализации анонсов и самих материалов:

Все сказанное ниже не отменяет наработанного функуионала, а только дополняет его и расширяет. Отмена может коснуться только тегов для анонса, но это на усмотрение разработчика.

В базе:
Добавляем 3 колонки.
1 - собственно колонка самого анонса
2 - колонка метки выводить анонс в полной статье или не
3 - колонка делить на анонс и полную статью или нет (нужно для работы полей, если можно будет как то по другому то скажите как)

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

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

В структуре сайта:
Я бы добавил специальную метку для анонса, например {anons}, ну либо любую другую на усмотрение разработчика.


Принцип действия:

Вариант1
Итак допустим что у нас стоит по умолчанию что материал делится на анонс и статью и при этом анонс выводится в основной статье.
При добавлении статьи пользователь видит вот такую картину:


как мы видим пользователь всегда может отказаться от заполнения поля с анонсом (если на то будут права), и также может не выводить анонс в основном материали (опять же если будут у него на то права)

При поступлении статьи в базу анонс падает в свою колонку, статья падает в свою, при этом заполняются метки про вывод анонса в статье и про разделение на анонс и статью.

При запросе статьи из базы:
на страницу полного материала будет попадать либо сложенная статья Анонс + статья , либо только статья, в зависимости от метки вывода анонса.
На страницу краткой новости будет соответственно выводиться только из поля анонс.


Вариант 2
Стоит по умолчанию не разделять на анонс и полную статью. Пользователь видит следующую картину:


При добавлении в базу формировать тело анонса по параметрам из настройки админки (там где указано количество символов попадающих в анонс) и класть его в свою колонку. Соответственно заполняются метки, при этом метка показывать или не показывать анонс в полной статье игнорируется. (Хотя можно ее и не игнорировать, обсуждаемо) В колонку статьи записываем тело статьи без обрезанного анонса.

При выводе статьи из базы все точно так же как и в первом варианте. Анонс выводится там где надо, статья, в зависимости от заполненого параметра вывода анонса либо только статья, либо анонс + статья. Если данная настройка ибудет игнорироваться то всегда анонс+статья

Для всех случаев
При редактировании статьи соответственно опираться на то какие метки заданы были пользователем. Либо с делением на статью и анонс, либо без деления.
если с делением то показывается 2 поля,статья и анонс, и отдельно редактируется полная статья и анонс.
Если стоит параметр без деления то выводится только поле статьи в котором показывается анонс+статья. При редактировании пользователь не заметит никакого подвоха и сможет ее полностью подредактировать. При запись в базу она опять разобьется на статью и анонс.

Если пользователь захочет отделить анонс от статьи то просто нажмет кнопку и появится пустое поле анонса в которое он сможет перенести текст для анонса.


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


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


итак, кто что по этому поводу думает?

Все мое имхо...
------
Не флуди и не да зафлудим будешь!

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#13
А тебе не кажется, что текущие теги дают точно такие же возможности, но без целой кучи гимора с настройками прав и разделением полей?

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

Спасибо за подробное предложение. Вот так надо оформлять свои предложения, четко и ясно, на каждом этапе. ))

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

Ater

  • Атом-мозг
  • Юзер
  • 750
  • Репутация:15 
  • Предупреждения: 0 
  • Регистрация:
    17 Авг 2010
#14
ну тогда хоть сделай чекбокс не показывать анонс в полной статье.
просто реально иногда надо сделать анонс таким образом что бы в полной статье было ну все по другому.
соответственно обработка в таком случае будет следующим образом:

в анонсе будет выводиться так же как и сейчас.

В полной статье: при включенном чекбоксе выводить анонс в статье все так же как и сейчас.
при выключенном чекбоксе выводить анонс в статьях - выводить весь материал кроме того что в тегах.

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

Все мое имхо...
------
Не флуди и не да зафлудим будешь!
1 2
Сейчас online: 21. Зарегистрированных: 0. Гостей: 21.