Первые шаги

Аватар пользователя goodboy goodboy 12 января 2008 в 14:03

Установил Drupal 5.5

Сделал настройки, закачал темы.

Начитался статей: установил модули CCK, taxonomy_fields, cck_taxonomy, views - это и было основной ошибкой. Самое главное - не связываться с модулями, это как порочная практика использования сторонних компонентов при программировании на Delphi(CBuilder). Модулей много, настройки их сложны, описания туманны...

Хорошо, что набрел на сниппеты, поглядел Drupal API - все проще простого! Теперь только найти окошки, куда писать код - и можно что-то создать на Drupal

С Taxonomy вроде разобрался. Зачем нужно CCK - пока не понял.

Но, для импорта терминов нужно выкачивать отдельный модуль!!!! Фигасе, а без этого модуля принято вручную термины создавать? Ну и ну, мож я чего не понимаю, конечно...

Есть подозрение, что taxonomy для связанных полей(для которых есть справочник-словарь), а CCK - для свободных полей, таких как "сумма", для которых справочника терминов нет. Если догадка правильная, то хоть что-то проясняется...

Создал материал Page, поместил его на главную страницу, а в качестве текста - сниппет. Далее зашел во View(taxonomy/_fields) и стал заполнять сниппетами все поля, куда можно поместить PHP-код, все заработало как надо... Но вот в статьях пишут, что в Drupal можно что-то сделать без программирования... Врут, наверное Smile

Комментарии

Аватар пользователя SaBoNim SaBoNim 12 января 2008 в 16:29

Есть подозрение, что taxonomy для связанных полей(для которых есть справочник-словарь), а CCK - для свободных полей, таких как "сумма", для которых справочника терминов нет. Если догадка правильная, то хоть что-то проясняется...
Нет, не правильно...
Если посмотрите настройки словаря там есть галочка "свободный выбор тегов", если вы выберете ее и создадите материал, то увидите, что термины можно вводить вручную (как бы создавая на лету) - это как при создании этой записи на drupal.ru, вы написали Views, сниппеты.
А в CCK тоже есть возможность создать список заранее, и при создании материала просто выбирать из списка, или поставить переключатель на одном варианте, или флажки на нескольких ЗАРАНЕЕ созданных вариантах.
По Views есть переводы документации (пример создания табличного вида - http://setegnom.com/node/211)

Аватар пользователя seaji seaji 12 января 2008 в 16:49

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

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

Таксономия используется для классификации материалов. Что это значит?
Знаете это достаточно сложный вопрос, использовать новое поле ССК или таксономию.
Чтобы для себя ответить на этот вопрос подумайте о том, будет ли материал по смыслу завершенным без этого поля. Если нет - это ССК, если да - это таксономия.
Приведу пример.
У вас на сайте есть новости. У новости есть заголовок, текст ну и еще может быть картинка. С набором этих полей - это завершенный материал. Но еще можно классифицировать новости например по категориям - наука, техника, политика, медицина и пр. Дополнительная классификация это - таксономия.
И ключевое слово здесь ДОПОЛНИТЕЛЬНАЯ. Т.е. это информация не несет большого значения для самого по себе материала. Это уже следующий уровень информации.
Приведу обратный пример.
У вас сайт с рецептами приготовления разных блюд.
Так вот ингридиенты блюда это термины таксономии или поля ССК?
Отвечу - это поля ССК. Почему? Потому что блюдо без ингридиентов не имеет смысла само по себе. Весь смысл в ингредиентах.

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

Аватар пользователя goodboy goodboy 22 января 2008 в 21:52

seaji , спасибо, замечательное объяснение. Мне кажется, я уловил суть.
Можно ли считать поля CCK внутренними атрибутами документа(node), а поля Таксономии внешними атрибутами?

Аватар пользователя Natalie Natalie 12 января 2008 в 17:35

goodboy, вы не совсем по тому пути пошли. Сначала надо было разобраться с ядром движка, а потом уже смотреть, какого функционала вам не хватает и какие модули могут его обеспечить. А вы не разобрались даже с базовыми понятиями вроде таксономии и полей, но уже поставили views и cck. Неудивительно, что теперь вы в непонятках Smile

Аватар пользователя goodboy goodboy 22 января 2008 в 18:38

Natalie wrote:
goodboy, вы не совсем по тому пути пошли. Сначала надо было разобраться с ядром движка, а потом уже смотреть, какого функционала вам не хватает и какие модули могут его обеспечить. А вы не разобрались даже с базовыми понятиями вроде таксономии и полей, но уже поставили views и cck. Неудивительно, что теперь вы в непонятках :)

Я вообще не знал, с какой стороны подступиться к системе - поэтому ухватился за понятные для себя вещи. А с ядром и базовыми понятиями я разберусь, куда ж деваться