Помогите, пожалуйста, новичку в освоении...

Главные вкладки

Аватар пользователя Jackdaw Jackdaw 17 января 2008 в 23:41

Доброго времени суток.
Огромная просьба помочь, если кто-то может сейчас в реальном времени. Второй день пытаюсь вникнуть в логику этой системы, кмс-ами никогда до этого не пользовалась. 7 лет серьезного опыта программинга на пхп. Прочитала кучу доков, но как-будто пытаюсь пробить лбом стену и у меня уже отчаянно едет крыша... Если кто-то может сейчас по асе или скайпу просто дать толчок к пониманию хотя бы стартового минимума, отзовитесь, пожалуйста...

Комментарии

Аватар пользователя alexweb alexweb 18 января 2008 в 0:07

Ммм.... а если не секрет, что можно делать на пхп 7 лет так, чтобы не не сталкиваться с написанием CMS?
Кроме того, разве отладка не помогает понять что и как работает в очередной куче кода, написанной не Вами?

Аватар пользователя alexweb alexweb 18 января 2008 в 0:11

А еще один вопрос, скорее всего риторический: почему почти все сообщения типа Хелп, Помогите, и тд. в половине случаев заканчиваются "помогите мне в аське и тд."?

Аватар пользователя Jackdaw Jackdaw 18 января 2008 в 0:20

Smile Потому что так быстрее и проще, не писать же здесь тупые вопросы по одному и получать ехидные комментарии людей, которые уже забыли, как они пытались въехать во что-то совершенно непонятное их логике...
Делать 7 лет можно много чего, от написания собственных простеньких движков и создания разнообразных сайтов до работы в крупных проектах над веб-сервисами. Всегда писала руками в нотепаде++, не признаю всяких дримвиверов, в состоянии написать 10-страничный сложный запрос на pl/sql, никогда не юзала фреймворки... Теперь, видимо, пришла расплата...

Аватар пользователя Natalie Natalie 18 января 2008 в 2:07

Попробуйте официальные доки и Setegnom.com

Вам непонятна логика системы в общем или конкретно API?

Потому что с первым у Друпала все в порядке, даже без программерских навыков (хотя потратить какое-то время на изучение придется, это точно).

Аватар пользователя Jackdaw Jackdaw 18 января 2008 в 3:30

Мне, к сожалению, непонятна именно логика системы. Я могу потратить много времени на изучение сурсов и таким образом расковырять ее, но руководство требует каких-то хоть мелких результатов вот уже сейчас... Я читала сетегном, читала официальные доки, это все кажется элементарным тем, кто в теме, это как когда научился читать слогами - в голове уже не укладывается, как этого могло не быть раньше. А я вот именно слоги никак не сложу... Мне например совершенно непонятно, почему и зачем конечная страница и админпанель - два в одном, и как мне например видеть то, что должен видеть конечный юзер, не вылогиниваясь каждый раз. И как вобще отделить контент от админки. Потому жутко напрягает то, что чертова навигацию админ панели получается вперемешку с тем меню, которое мне нужно сделать на сайте. Скорее всего я просто совершенно неправильно подхожу к созданию сайта с помощью друпала - и именно в этом мне нужна помощь. Я наверное упустила что-то важное в куче информации, пытаясь разобраться побыстрее, и теперь просто уже не могу собрать всю эту кашу в одно целое...

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

>>Мне например совершенно непонятно, почему и зачем конечная страница и админпанель - два в одном,

Не совсем понятно - что значит два в одном? Админпанель - это вполне определенная часть сайта, как по меню, так и по путям (что в Друпале одно и то же). Другое дело, что в некоторых случаях есть возможность выполнять некоторые административные задания, не заходя в админку (например, редактировать ноду). Мне это кажется удобным.

Кстати, не забывайте уточнять, что вы имеете в виду под страницей - page или node, в Друпале это разные вещи.

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

"как мне например видеть то, что должен видеть конечный юзер, не вылогиниваясь каждый раз."

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

Да, а для того, что зайти на сайт кем-то другим, воспользуйтесь другим браузером или модулем masquerade.

Аватар пользователя Jackdaw Jackdaw 18 января 2008 в 6:13

Спасибо огромное, многое встало на свои места Smile Я уперлась рогами в стену именно из-за навигации и из-за занесения по невнимательности новосозданных pages в ту же навигацию, и на этом зациклилась.
Насчет "как мне например видеть то, что должен видеть конечный юзер, не вылогиниваясь каждый раз" мне казалось, что должно быть что-то вроде превью... Я думала, что есть какой-то механизм, позволяющий увидеть страницу-результат, какой ее будет видеть обычный анонимус. Т.е. например после Вашего поста я создала отдельное меню для пользователя и скрыла для него навигацию админки, убрав за ненадобностью и левую колонку - а имея права админа я все равно буду видеть навигацию и вместо двух колонок будет три. Спасибо за подсказку насчет masquerade Smile
И еще, если несложно, можно поподробнее про разницу между page и node? Заранее спасибо Smile

Аватар пользователя andypost@drupal.org andypost@drupal.org 18 января 2008 в 7:44

>Да, а для того, что зайти на сайт кем-то другим, воспользуйтесь другим браузером или модулем masquerade.

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

Аватар пользователя Geldora Geldora 18 января 2008 в 8:41

У меня были такие же проблемы, как у автора поста, только я вообще с пхп не знакома Wink Но до сих пор помню свою радость, когда впервые ДОШЛО. А вот что именно ДОШЛО, я уже не помню... Wink Лично я разницу между пэйж и нод поняла так - первый один из списка контент тайп, а второй - это любой контент, вообще любой.

Аватар пользователя Naykon Naykon 18 января 2008 в 10:04

ну вы жжоте =))) ноде и пейдж - это просто два типа материалов, с различными настройками по умолчанию, таких типов можно создавать неограниченное количество, а нужны они для разных целей, например, чтобы каждый раз не тыркать галочки типа, помещать на главную, какой тип фильтрации, разрешены ли коментарии, и т.д., так же можно использовать типы для фильтрации в модуле вьюс, да много чего можно, если вопросы остались стучите 305929627, сайтов на друпале я уже много написал, около 3-х десятков, так что все основные моменты уже знаю, за исключением интернет магазина, а простой инфо-сайт, или даже навороченный комьюнити, типа моего www.b2k-team.ru БЕС ПРОБЛЕМ Smile

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 18 января 2008 в 10:26

ноде и пейдж - это просто два типа материалов, с различными настройками по умолчанию
Не совсем так. Действительно, можно создать различные типы материалов, с разными настройками. И даже назвать один из таких типов материалов node.

Но термин node в Drupal имеет особое значение. В идеологии Drupal любой сайт - это сеть информационных "узлов" (node), т.е. относительно самостоятельных логических инфо-блоков. Например, сообщение в форуме, изображение, новость, опрос и т.д. и т.п. - все это в Drupal является node (узлами, документами, материалами - было много споров, как грамотнее и понятнее переводить этот термин. В переводе для D5.x. я стал переводить как "материал").
Такая универсальность дает много преимуществ, в частности, возможность свободно менять структуру сайта, перемещая node из категории в категорию безо всяких изменений в самой node. Была статичная страница - стала страницей в подшивке (book), к примеру.
Нодами не являются в общем случае лишь комментарии и юзеры (но существуют модули, которые их тоже превращают в node).

Node не равна странице сайта, поскольку страница может состоять из нескольких материалов, node (страница форума, например, или страница, созданная с помощью модуля panels).

Аватар пользователя Naykon Naykon 18 января 2008 в 11:47

Полностью согласен, но в данном контексте вопрос звучал именно как тип материала, а не как страница сайта, во всяком случае, я понял именно так, и ответил соответственно своему понятию

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

О, ну раз такая тема, то внесу свою "лепту".
Итак, что мне непонятно
- что такое API и с чего его едят, т.е. когда применяет, для чего служит, как его изменять и нужно ли вобще изменять. Если нужно, то в каких случаях.
- как разместить регионы в тех местах, которые я хочу. Иными словами помогите разобраться с файлом page.tpl.php. Я читал за что отвечает каждая переменая в данном шаблоне, но не могу понять как ими пользоваться: куда вставлять, что дописывать, к чему это приводит и почему.

это из основного.
прошу не давать ссылку на не русскоязычную документацию, т.к. я тогда вобще в темный лес погружусь.
http://setegnom.com/ весь просмотрел

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

Могу попробовать помочь с пониманием первого вопроса Smile Про АПИ в википедии - http://ru.wikipedia.org/wiki/API. По определению, это инструментарий, с помощью которого Вы можете изменять функциональность приложения. Более простыми словами - это набор функций, каждая из которых выполняет определенную задачу - форматирует текст, работает с файловой системой, проверяет права, коннектится к бд и т.д. При этом Вам неважно, как функция реализована - какой код у нее внутри, Вы просто используете ее, когда Вам нужен соответствующий результат. Поэтому документацию по АПИ Вам все равно придется смотреть, потому что только там Вы найдете перечень всех доступных функций и их описание. Ну это, конечно, если Вы собираетесь программировать что-либо сами, а не использовать готовое Smile

Аватар пользователя alekseykhrebtov alekseykhrebtov 18 января 2008 в 23:10

Спасибо, более-менее понял.

Дальше хотелось бы знать в чем принципиальное отличие между node и page.
И когда стоит использовать один вид документа, а когда другой?

Аватар пользователя Jackdaw Jackdaw 19 января 2008 в 0:00

Выше vadbars уже очень здорово все расписал. Т.е. page - это страница сайта, на ней может быть одна или несколько node - элементов этой страницы, грубо говоря. Или же вся страница целиком в каком-либо организованном наборе страниц тоже может быть нодой.

Аватар пользователя RISK RISK 19 января 2008 в 10:29

Вот так попробуем:

  • Есть модуль Node.
  • Он формирует Content type (Page, Story, Poll, Forum topic).
  • Из Content type создайтся Node.

Т.е. сказать можно так:

  1. Page это Node из Content type - Page.
  2. Story это Node из Content type - Story.
  3. Poll это Node из Content type - Poll.
  4. Forum topic это Node из Content type - Forum topic.

или по-другому:

  1. «О сайте» это Node из Content type - Page.
  2. «Вышел Drupal 6 RC 2» это Node из Content type - Story.
  3. «Нужно ли вводить рекламу на сайте?» это Node из Content type - Poll.
  4. «Помогите новичку разобраться» это Node из Content type - Forum topic.

или по-другому:

  1. «О сайте» это документ типа Page.
  2. «Вышел Drupal 6 RC 2» это документ типа Story.
  3. «Нужно ли вводить рекламу на сайте?» это документ типа Poll.
  4. «Помогите новичку разобраться» это документ типа Forum topic.

или по-другому («на понимании»):

  1. «О сайте» это статическая страница.
  2. «Вышел Drupal 6 RC 2» это новостная страница.
  3. «Нужно ли вводить рекламу на сайте?» это страница с опросом.
  4. «Помогите новичку разобраться» это страница на форуме.

— здесь под страницей понимается не тип документа Page, а страница в браузере; а её характиристика статическая/новостная/на форуме — это её Content type.

Content type — выполняют:

А) Роль шаблонов из которых получают Node. Для Content type ставятся настройки по умолчанию в зависимости от цели использования. Т.е. ставишь модуль Image и он создаёт Content type - Image, с настройками удобными для фотографий.
Б) …система прав доступа в Drupal управляется модулем User, построена через Roles и завязана на Content type.

Аватар пользователя RISK RISK 19 января 2008 в 10:51

Не, соврал Smile

  • Poll это Node из Content type - Poll (но формируется не модулем Node, а модулем Poll)
  • Forum topic это Node из Content type - Forum topic (но формируется не модулем Node, а модулем Forum).

Просто Node называется всё, что получено из Content type. Кроме как из Content type, Node получить ниоткуда нельзя, поэтому каждый Node всегда имеет свой Content type.

Аватар пользователя RISK RISK 19 января 2008 в 10:56

А Node это всё называется из-за базового модуля Node. Drupal можно спокойно переименовать в Node.

PS. Drupal как известно это вовсе и не Drupal, а Dorp — деревня (как скажет vadbars, относительно самостоятельное логические инфо-определение :-))).