Друпал

Случаят Larry Garfield

BSDM и Друпал: Как тези на пръв поглед нямащи нищо общо понятия, разтърсиха Друпал общността  и изместиха вниманието от проблемите на Друпал 8.

В последните седмици една полемика, предизвикана от отстраняването на едно от големите имена в проекта Друпал Larry Garfield, повдигна много въпроси, относно начинът, по който се вземат решенията в общността. Поводът за неговото отстраняване е принадлежността му към т.н. „Общество на Гор“, вдъхновено от научно-фантастичните романи на John Norman „Хрониките на Гор“.

Историята не е лесно да бъде резюмирана, защото трябва да се задоволим с публикациите на двете страни. Всичко започва с публикацията на Dries Buytaert, който уведомява общността, че отстранява Larry Garfield от общността заради факти, които касаят личния му живот и нямат нищо общо с професионалната му кариера. Последва отговор от Larry Garfield в личния му блог. Последвалите събития лавинообразно въвлякоха огромна част от Друпал общността, която застана зад Larry.  80 контрибутори на проекта, между които доста известни имена, публикуваха миналата седмица отворено писмо, в което призовават да се ревизира решението.

Ситуацията поставя един много интересен въпрос за развитието на проекти с отворен код, като Друпал. За управление на такъв проект от жизнено важно значение е поддържането на приобщаваща и гостоприемна общност, за да се даде възможност за набиране на сътрудници и доброволци, участващи в проекта. По този начин образът на тази общност е ценен актив, който трябва да бъде запазен.

Да се надяваме, че ще се намери разумно решение на проблема, което да задоволи всички заинтересовани страни.

Модул QuickTabs (видео)

 Модулът Quicktabs ви позволява да създадете блок от табове с определено съдържание.

Например:

 quicktabs

 

Можете да включите в табовете блокове, nodes, Views или съществуващи Quicktabs.

Необходими модули

Предварителна подготовка

  • Разполагаме с чиста инсталация на Друпал 7 и за удобство е инсталиран модулът Module Filter.

  • След активиране на допълнителните модули, генерираме с модула Devel демо съдържание – 50 статии с коментари, публикувани в рамките на една година, като
    отиваме на "Configuration => Development => Generate content" (admin/config/development/generate/content).

Създаване на Quicktabs

  1. Създаване на Quicktab и параметри на Quicktab Instance
    Отиваме на "Structure => Quicktabs => Add Quicktabs Instance" (admin/structure/quicktabs/add)

  2. Създаване на Quicktab - 1 от блокове
    Създаваме първия таб блок от 2-та съществуващи след инсталацията на Друпал блока: „Последно съдържание“ и 'Последни коментари“. Разглеждаме различните възможности за представяне на табовете. В раздела „Блокове“ намираме новосъздадения от нас блок и можем да го настроим.

  3. Създаване на Quicktab - 2 от съществуващи нодове
    Следващият таб блок създаваме от съществуващи нодове. За целта използваме две произволни статии и "Accordion" , като начин на представяне. Табовете са 2 с имена : „За нас“ и „За контакт“. Показваме разликите при наличие и при липса на посочен таб по подразбиране (default tab).

  4. Създаване на Quicktab от Views
    Създаваме view от заглавията на последните статии и датата на публикуване с формат таблица. Заменяме първия таб (Последни статии) на Quicktab – 1 с новосъздаденоте view.
    Вторият таб си остава с блока за Последни коментари.
    Добавяме като трети таб вграденото view “Архив“.
    Използваме вградения речник за таксономия TAG. Прибавяме 2 таксономични термина: политика и спорт. Редактираме 4 от статиите, като задаваме таговете, които създадохме.
    Създаваме view с параметър таксономичния термин. Създаваме нов Quicktab - 3 (Рубрики)  с 2 таба: политика и спорт от създаденото view, като използваме параметрите.
    Добавяме Quicktab -3 като четвърти таб (Рубрики) на Quicktab - 1, който създадохме по-горе.

 

За повече подробности проследете видео урока.

Можете да изтеглите пълната инсталацията на  видео урока. Следвайте инструкциите за инсталиране.

Достъп до готовия сайт: username:admin, password:admin.

Възможности за потребителите на Друпал 6 след появата на Друпал 8!

На 13 февруари 2008 г. стартира Drupal 6. Политиката на Общността е да се поддържа само настояща и предишна стабилна версия. (което води до прекратяване на поддръжката на Drupal 4.7).

Създаване на многоезичен сайт (видео)

Да се направи сайт на английски език, който е вграден в стандартната инсталация на Друпал е сравнително лесно. Често се налага сайтът да е на друг език, например български и не е необходимо да се добвя друг език, т.е. сайтът е едноезичен.

Друпал 7 предлага 2 метода създаване на многоезичен сайт:

  • Content Translation = по един нод за всеки език
  • Entity Translation = един нод с превод за всеки език

Необходими модули:

Node translation

Entity translation

 Locale – вграден в ядрото

 Locale – вграден в ядрото

 Content translation - вграден в ядрото

 Entity Translation

 Internationalization

 Title

 Variable

 Entity API

 

 Internationalization

 

 Variable

 

 Localization Update

 

 Language Icons

Разлики между двата метода:

Node translation

Entity translation

 Валиден само за нод

 Валден за всяка единица

 По един нод за всеки език

 Една единица (entity) с превод за всеки език

 Използва вграденото поле „Title”

 Изисква модула Title

 Филтър за език във Views

 Изисква пач за да филтрира

 Работи с XML sitemap

 XML Sitemap не може да фитрира езика

 Преводът на блокове не е автоматичен

 Модул Bean за блокове

 По един запис в менюто за всеки език

 Един запис в менюто за всички езици

 

Първият метод е по-популярен, тъй като е подобен на този в предишната версия - Друпал 6. Вторият е по-малко използван, но трябва да имаме предвид, че това ще е методът за многоезичен сайт на Друпал 8.

Как да направим многоезичен сайт? Ще разгледаме пример с 2 езика:български (основен) и английски. Могат да се прибавят още езици по същия начин. Ще ползваме метода Node Translarion.

  1. Започваме с чиста инсталация на Друпал. Нямаме създадено съдържание, за да избегнем проблеми със съществуващо съдържание, което е с неутрален език. Ако имаме предварително създадено съдържание ще трябва да се погрижим да го приведем в съответния език и да променим URl-а със съответния префикс. Или да ползваме Node export module (http://drupal.org/project/node_export),ако имаме доста въведени страници.
  2. Активираме модулите Locale и Content translation.
  3. Сваляме и инсталираме и модулите i18n и Variable.
  4. По желание можем да инсталираме и модулът Transliteration, който ще нормализира (Unicode->US-ASCII) линковете към съдържанието на нашия сайт и ще ги направи по-разбираеми в случай на „постване на линка“ в социалните мрежи, имейл и др.
  5. На admin/config/regional/language прибавяме нов език в случая Български език.
  6. Добавяме префикс за всеки от езиците на admin/config/regional/language/edit/
    за Английски – en
    за Български – bg (всъщност без него, защото това ще е нашият език по подразбиране)
  7. Активираме Language switcher блока.
  8. Активираме Multilingual support, with translation за всеки  тип съдържание.
  9. Посочваме кои Variables ще превеждаме, като не забравяме и Началната страница.
  10. Настройваме в admin/config/system/site-information: Името на сайта,Слоган, Началната страница и т.н.
  11. Активираме блокът с езиците
  12. Посочваме кои типове съдържание ще превеждаме: страници, статии
  13. Превеждаме основното меню и не забравяме да активираме превод на елементите на менюто
  14. Създаваме по един блок за всеки език и настройваме показването им
  15. Създаваме View от статиите и го превеждаме
  16. Премахваме статиите от първа страница и  на тяхно място поставяме View – то от статиите

Необходими модули за видео урока:

Local - core, Content Translationcore,I18n -  Internationalization,Variable,Pathauto,Token,Transliteration,View,+C Tools, Views Translation 

Файл с превод на интерфейса на  български език: BG.PO

За повече подробности, проследете видео урока.

 

Многоезичен сайт в Друпал 7 - част 1

Многоезичен сайт в Друпал 7 - част 2

 

 

Можете да изтеглите пълната инсталацията на  видео урока. Следвайте инструкциите за инсталиране.

Достъп до готовия сайт: username:admin, password:admin.

 

Впечатления от DrupalCamp – София 2013

С голямо закъснение преглеждам бележките си от 16-17 ноември 2013г., когато се проведе дългоочаквания трети DrupalCamp – София. Благодаря на организаторите – събитието беше организирано много добре, а срещите с участниците и лекторите много очаквани и приятни. Е, не можахме да видим на живо Robert Douglass, но все пак имаше онлайн презентация  на „Keynote - Drupal Commerce“. Ето няколко полезни линка към проекта „Rooms”:

https://drupal.org/project/rooms

http://bachkoorholland.nl/nl

С голям интерес очаквах „70+ мулти езични сайта на една Drupal7 инсталация“ - туристическа платформа за Дания, на която вървят най-посещаваните сайтове за туризъм в Дания.  Проектът е на Propeople  и си заслужава да проследите презентацията: https://www.youtube.com/watch?v=GRyCu48JTt4.

И не на последно място една много симпатична (не мога да намеря по-подходящо определение) сесия: „Drupal през очите на WordPress разработчик“. По думите на Владимир Василев –„ Целта на лекцията е не конфронтация, а представяне на един чужд за повечето hardcore Drupal разработчици поглед върху това какво представлява любимият им CMS, какви проблеми има той, как са решени в друг популярен проект с отворен код, какъвто е WordPress и как всеки от вас би могъл да помогне за това Drupal да стане още по-добра система за управление на съдържанието.“ Разбира се бяха посочени предимствата на Друпал и не ни беше спестено състоянието на българския превод.

За останалите сесии не намирам материали в интернет, а не бих искала да ги преразказвам, но все пак искам да отбележа сесията „Data migration with Feeds modules suite“ на Propeople, която е свързана с работата по датския проект. За повече информация по този, наистана огромен проект можете да посетите сайта на Propeople: http://wearepropeople.com/clients/copenhagen-municipality.

В заключение искам да кажа, че макар и не особено многобройно, българското друпал общество съществува. Е, добре би било това да се вижда и от сайта му: http://drupalbg.org, където ако поставиш въпрос за помощ, някой веднага ще се отзове, но не видях и една дума за събитието. Дори и банер нямаше.

Как да направим инсталацията на Друпал на български език

На сайта http://drupalBG.org  има инсталация на български език, но тя е много остаряла (Друпал 7.9). В началото на 2014 излезе версия 7.26.

Можем сами да направим актуална инсталация на Друпал 7.26 на български език. За целта е необходимо да разполагаме с последната версия на Друпал – 7.26, която можем да свалим от сайта на Друпал: http://ftp.drupal.org/files/projects/drupal-7.26.zip  и файлът bg.po, който съдържа превод на интерфейса на Друпал на български език. Файлът можете да свалите от ТУК или от http://drupalBG.org .

Следваме действията, необходими за инсталация на Друпал:

  1. Разархивираме  drupal-7.26.zip в директория htdocs.
  2. Применуваме директорията drupal-7.26 с подходящо име  - mysitename
  3. Създаваме база данни с име “mysitedb”.
  4. В директорията на Друпал :... htdocs\mysitename\profiles\standard\translations записваме файлът bg.po.
  5. Продължаваме със стандартната процедура за инсталация на Друпал: http://localhost/mysitename
  6. Избираме профил: стандартна инсталация и език: български език и инсталацията продължава на български език.
  7. Новият сайт е с активиран модул Local, добавен е  български език и файлът bg.po е импортиран.  Остава да изберете езика по подразбиране.

 

Забележка: Често се получава грешка по време на импорта на български език:

 инсталл-еррор

  • Можете да игнорирате грешката. Това означава, че не всички стрингове са импортирани и след създаване на сайта да повторите импорта през администраторския интерфейс: .../admin/config/regional/translate/import
  • Можете да ползвате инструкциите описани в http://maria.momtchev.com/как-да-се-справим-с-грешката-fatal-error-maximum-execution-time-30-seconds-exceeded
  • Можете да увеличите времето от стандартните 30 сек, преди да започнете инсталацията, като ползвате Notepad и добавите във файла .htaccess (htdocs\mysitename\.htaccess) следните редове:

php_value max_execution_time 0


 

От тук можете да изтеглите:

Друпал 7.26 с вграден български език – drupal-7.26-bg.zip

Български превод на Друпал – bg.zip

Как да получаваме съобщение при публикуване на коментар

Изпращането на съобщение при публикуване на коментар на сайта може да стане по различни начини. Съществуват подходящи модули: Rules Module, Comment Notify.

Ако инсталирате Comment Notify потребителите ще имат възможност да проследяват дискусията.

С модула Rules ще можете да конфигурирате спам филтър за определени думи и изрази с помощта на "Textual Comparison".

Тук ви предлагам едно съвсем леко решение за изпращане на съобщения с модула Trigger, който е част от ядрото на Друпал, но не е активиран по подразбиране.

1. Активираме модула Trigger.

2. На  Администрация » Конфигурация на сайта » Система »Действия (Configuration > System > Actions) създаваме ново  Действие (Create an Advanced Action) - Изпрати имейл (Send e-mail...).

3. На Конфигурацията попълваме

  • Заглавие ( Label): Изпрати съобщение на администратора на сайта когато се публикува коментар
  • Получател (Recipient): siteowner@example.com - адреса на получателя
  • Тема (Subject): Нов коментар на сайт: example.com
  • Съобщение: (Message) - например:

[comment:node:title]
[comment:node:url]

From: [comment:name]

[comment:body]

Можете да ползвате и други варианти с помощта на tokens.

4. Свързване с модула Trigger:

На Администрация » Структура » Тригери (Administration»Structure»Triggers) изберете създаденото по-горе действие: "Изпрати имейл" в полето "След запис на нов коментар". Трябва да сте в таб "Коментари", който не е избран по подразбиране.

trigger

5. Тествайте промените, като напишете тестов коментар на сайта.

 


Страници