Drupal Blogs, Pictures, and more on WordPress

Syndicate content
Feed of posts on WordPress.com tagged "drupal"
Updated: 59 min 49 sec ago

My Progress with Drupal

10 hours 37 min ago

I volunteer for my local church as webmaster.  For several months I have been working with a Drupal installation, which is on the verge of being rolled out. (note: the links to the South Bay Bible Fellowship Drupal installation are temporary so please don’t bookmark them – yet).

As I had posted back in October, I had set up a very simple podcasting script, which I have edited further to meet my own needs. I then set up a Feedburner account to assist in publishing the podcast. I set up a blog for the pastor to post his thoughts, and website visitors will be able to leave comments to encourage dialog. I included an AddThis button so that people will be able to share posts using other social networking sites.

I also envision having a “Youth” section where the youth leaders can blog, and perhaps including a forum where the kids can chat.

Drupal is an extremely flexible content management system, and I am very excited for this opportunity to explore its capabilities.

Categories: Drupal talk

Drupal sites

November 28, 2009 - 20:22

Галлерея сайтов созданных на Drupal (link)

Примеры некоторых работ:

Categories: Drupal talk

Drupal Frustrations

November 28, 2009 - 19:23

I love Drupal. Up until the point when I’m banging my head against the computer desk, unable to find the tutorial I need to show me how to use something.

I’m at that point.

Blasted Views module. All I want is to create a view for the homepage of my Drupal site, so that I can display some news updates. That’s it. That’s all I really want. Why is that too much to ask for? The stupid thing  just refuses to cooperate with me.

This is the point where I feel like I’m just b.s.ing my way through this.

Alright. I’m off to go look for a tutorial that actually makes sense.

Categories: Drupal talk

Amazing Flash Work-Must see

November 28, 2009 - 07:08

 http://fc01.deviantart.com/fs13/f/2007/077/2/e/Animator_vs__Animation_by_alanbecker.swf

                                                  Guys look at the above link .

Its real amazing work everything is perfect in that flash work

 

Categories: Drupal talk

Drupal, Wordpress and Joomla! wins open source CMS award

November 28, 2009 - 05:33

This is neat.  Drupal is cool but has a steep learning curve.  I think WordPress (with plug-ins) is best for most people.  Click here to read.

Categories: Drupal talk

Plan for a weekend :|

November 27, 2009 - 11:37

Công việc tối nay:

- Xem lại báo cáo nhân viên + tài liệu training(xem thật kỹ)

Thứ 7: Làm best praticse, + kết hợp bài tập :| + Xem lại SQL (quên mất tiu rồi)

Chủ nhật: review lại kiến thưc HTML cơ bản

Hix, lớn rồi phải cẩn thận, ko được vội vàng, hấp tấp . Phải suy nghĩ thật kỹ càng trước khi trả lời. Ko thì nv nó cười cho xấu hổ :( Áp lực càng ngày càng nặng nề

Categories: Drupal talk

See you at "Do It With Drupal"?

November 25, 2009 - 06:15
I’m attending Do It With Drupal 2009 in New Orleans from December 9 through 11, to cover it fo
Categories: Drupal talk

A new display for my personal website

November 25, 2009 - 05:19

Done! Here is the new display of my personal website: Frog n’Cie.com. I kept the frog and the slogan and add a logotype with my domain name. Have a look:

My host is PHPnux, one of the cheaper on Internet with a great quality of service. The contract includes 1GB disk space, 1 domain name, 1 MySQL database, PHP 4 and PHP 5, statistics, e-mails, and a great customer support for only 18 euro/year! It’s perfect! I can access to my files with FTP and manage all my account via a customized tool. But all is in french!

Something sounds wrong in this display… is it too dark? or less energizing? Let me know your feeling by adding a comment.

Categories: Drupal talk

Your Drupal On Memcached

November 25, 2009 - 04:29

The first post on how to run big drupal has got to be on memcached. It is only one aspect of managing high volume with drupal, but it is the critical one. If you don’t think you need memcached then you don’t need to be reading this blog. If you desperately need to be reading this blog because you can’t keep you site up, you need memcached.

Memcached is a distributed caching system that is the lifeblood of most major sites on the internet. It is certainly the lifeblood of any Web 2.0 site that encourages user interaction and is therefore truly dynamic. I won’t go into the details of how memcached works and what makes it so good, suffice to say the clientele speaks for itself.

Drupal has a good emphasis on caching and future posts will go deeper into the mechanics of how Drupal manages caching. By default however, all the caching is managed in mysql. This may seem counter-intuitive since typically caching is used to avoid going to the database, but if you think about it this makes sense. The caching mechanism simply denormalizes the data and sticks it into cache tables. In this way you get all the goodness of separating data from presentation, something which drupal excels at, but you don’t get all the resource sucking JOINs. MySql is fast, and this works fine for most drupal sites, but not big drupal sites.

For big drupal sites the database will always be your first bottleneck. Of course once you start using memcached and optimize your mysql you will find new bottle necks, but this is your first one. Drupal has a module for mostly anything and this includes a pretty good memcache module for swapping out the mysql caching. You will need to patch the caching mechanism as well to get the most out of this, but there’s a module for that too. Here a few more hard earned lessons on the setup.

Use multiple memcached daemons per server. Drupal conveniently breaks up the caching by object types to store them in different mysql tables, you’ll want use this same mechanism to break up your memcached traffic as well. Each daemon can run on a different port with different memory settings. You can combine some, but the biggest ones you’ll want to run separately, particularly your page cache, node cache, menu cache, path cache, block cache and probably your views cache (though earlier versions of drupal only cache view query syntax, not view data). The advantage to doing this is that you can manage your cache sizes more granularly and most importantly measure your cache effectiveness. If you lump all your cache buckets together it is much more difficult to measure your hit rates and traffic volume, which is critical for tuning. We use cacti to measure and monitor memcached, but that’s a future post.

Use separate memcached servers. It is tempting to run you memcached daemons on your apache servers, but resist that temptation. When traffic spikes, you need to know if it is your apache or memcache that is causing the high loads (hint: it’s apache). Also, if your apache servers start getting backed up under load it will slow down your memcached, which will take down your whole farm. So by separating your memcached servers you will be less likely to get into a cascading load issue. More on that in future posts as well. Finally, as with separate daemons, separate servers will help you tune and diagnose your setup.

Scale your servers to meet your needs. Even pre-launch you can get a decent idea of how much memory and how many servers you’ll want. Generally these servers don’t need much CPU. The amount or RAM necesary will depend on your application. Do the math! I cannot emphasize this enough and will continually go back to it in this blog because it is something that is consistently left out. How much memory do you need? Look at your object sizes in the mysql cache tables and add them up. (hint: probably not a lot). You don’t need to be exact, you just need to get it within the correct order of magnitude. We typically run 3:1 apache servers to memcached servers. When we separated the servers out on mylifetime.com it made a tremendous difference.

That’s it for now. Future posts will cover mysql optimization, apache optimization, diagnostic tools and monitoring packages, and much more, all with drupal specifically in mind.

Categories: Drupal talk

Синхронизация Drupal-сайтов с помощью migraine

November 24, 2009 - 13:26


Синхронизация developement и production серверов в Drupal — занятие нелёгкое. Даже в 6 версии не хватает простого способа переноса и восстановления контента. В модуле CCK есть нужный функционал, но одним custom-контентом сайт обычно не ограничивается. Код модулей и ядра можно синхронизировать с помощью систем контроля версий, но что делать с базой?

На этот счёт есть разные подходы – начиная от обновления контента руками (годится для сайтов где контента немного) до дампа+восстановления всей базы целиком. Последний способ хорош, когда большой сайт надо отзеркалить 1 в 1. Но что если нам надо только перенести контент (созданные ноды, словари, alias’ы, таблицы с контентом модулей) при этом оставив конфигурацию прежней? Например, мы пробуем различные конфигурации на dev-сервере, и хотим синхронизировать контент с production-сервером. При полном дампе наши настройки будут просто перезаписаны настройками с сервера. А если нам надо перенести изменённую и протестированную конфигурацию с developement на production?

Для этих целей в компании Shearer Software был написан migraine – небольшой python-скрипт. Он отдельно синхронизирует контент и конфигурацию, умеет находить diff-ом несоответствия в структуре таблиц и сам разбирается с таблицами, в которые данные должны вставляться инкрементно.

Установка и настройка

Migraine настраивается с помощью ini-файла и путём редактирования скрипта (думаю, в будущем все изменяемые опции будут перенесены в файл настроек). В ini-файле нужно указать сервер, пользователя и пароль к двум базам данных – test и production. Можно не указывать пароли, тогда migraine будет каждый раз спрашивать их при запуске. Даём скрипту права на выполнение:

chmod +x migraine.py

Создаём в каталоге с migraine папку database и в ней ещё две: test_dump и prod_dump. У python должны быть права на чтение и запись в эти папки.

После этого запускаем сам скрипт (вначале на dev-сервере):

python migraine.py --config=migraine.ini

При запуске без параметров действия migraine сохраняет backup обеих баз, после чего его можно сохранить в репозиторий на всякий случай :) Если migraine встретит незнакомые таблицы, она выведет их список на экран. После этого надо открыть скрипт migraine.py и вписать таблицы в один из четырёх разделов:

  • config_tables: таблицы конфигурации. Они будут скопированы с dev на production
  • content_tables: таблицы с контентом. Будут скопированы с production на dev
  • temp_tables: временные таблицы. Они будут проигнорированы, но в будущих версиях могут очищаться
  • cache_tables: кеш-таблицы. Будут очищены
  • config_tables: таблицы конфигурации. Они будут скопированы с dev на production
  • sequence_tables: таблицы последовательностей. Они синхронизируются особым образом
  • ignored_tables: эти таблицы будут проигнорированы, никаких действий с ними производиться не будет
Использование

Чтобы перенести контент на тестовый сервер, надо запустить скрипт с ключом --migrate-to-test:

python migraine.py --dump-prod --config=migraine.ini
python migraine.py --migrate-to-test --config=migraine.ini

Обратите внимание, при каждом запуске надо явно указывать файл настроек. Чтобы перенести конфигурацию на production-сервер, надо запустить скрипт так:

python migraine.py --dump-test --config=migraine.ini
python migraine.py --migrate-to-prod --config=migraine.ini

Первая строка сохраняет дамп таблиц в каталог database/test_dump и database/prod_dump. Вторая обновляет базу данных из этих таблиц. Если production- и developement-сайты находятся на разных машинах, можно просто добавить эти каталоги в CVS вместе с кодом модулей.

В документации указано что с ключом --no-action migraine просто перечислит действия с базой, не выполняя их, но в последней версии этот ключ не распознаётся.

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

Рекомендованный алгоритм синхронизации

Сами авторы migraine рекомендуют следующий алгоритм синхронизации:

  • Зайдите на тестовый сайт по SSH
  • Убедитесь что изменения кода и возможные апгрейды модулей зафиксированы в VCS
  • Сохраните копию базы тест-сервера командой python migraine.py --dump-test
  • Внесите получившиеся файлы в систему контроля версий
  • Если production-сервер находится на другой машине, копируйте дамп базы туда (cvs/svn update должно быть достаточно)
  • В меню Admin / Site Maintenance на production переведите сайт в режим обслуживания (Maintenance)
  • Сохраните дамп базы production командой python migraine.py --dump-prod. Этот дамп будет бэкапом на случай если что то пойдёт не так.
  • Если PHP-скрипты изменялись, обновите их на production-сервере из репозитория
  • Запустите update.php на production-сервере, если модулям необходимо изменить что нибудь в схеме таблиц для контента (это могут быть например только что установленные модули).
  • Перенесите конфигурацию на production: python migraine.py --migrate-to-prod. Если миграция не срабатывает из за несовпадения схем CCK, повторите на production те же действия с типами контента, что и на test, и попробуйте ещё раз).
  • Очистите кеш CSS: rm /files/css/*
  • При желании можно опять сделать дамп базы production-сервера и закомиттить в систему контроля версий - как контрольную точку после успешной синхронизации
Categories: Drupal talk

Top Sites in Kenya

November 24, 2009 - 12:12

The fiber optics connections to Asia(Seacom and TEAMS) finally arrived in Kenya. Question is, what technologies are used by the websites that receive the highest hits? I decided to do some digging, and here is a quick snapshot of the results based on Alexa:

Site Server Side Lang. CMS CSS Javascript Daily Nation - - YAML framework Mootools
plugin_js @Home Portal Kenya PHP Joomla - Mootools Standard Media PHP - Dynamic Drive DHTML code library - Capital FM PHP - - Prototype
Scriptaculous
Mioplanet News Ticker
Google Maps integration PataUza PHP - - - Safaricom PHP - - - Haiya PHP Drupal - jQuery

Clearly, PHP currently rules on the server side, possibly because of its cost implications and the availability of quality CMS with which it easily integrates. I expect to see more of ASP and Ruby based sites as the developer community grows.

Exploitation of available Javascript utilities is limited, with jQuery and Mootools being used to add a few effects for the menus. I would expect more sites to have AJAX to enrich the user experience using such libraries as Ext Js or even Prototype.js.

As far as the duel between Adobe Flex and Microsoft Silverlight is concerned, no front runners have emerged so far.

Categories: Drupal talk

Why Open Source is Good for You

November 23, 2009 - 16:46

Many ‘Old-School’ companies cling to the — of intellectual property like a security blanket. In the digital age, consumers are sick of it and have all the tools available to get what they want for free when they want it. That’s why it just makes sense to ‘give away’ software to the people that want it. There’s always the consumer who wants more, therefore the Upgrade model will always work.

For those who don’t know, open source software is the tech industry’s real version of the free trial. It allows consumers and businesses to use software that a company creates for free through a general public license (http://ping.fm/rYmnK). That means anyone who wants to can use the product for their own personal or commercial use. The business model usually attached to it is that a company offers a free version of its software and provides paid upgrade options that include more features. Usually the free version has all you’ll ever need to create a great website or program, but every now and then the upgrades are REALLY COOL!

I use open-source software on a regular basis for my business. We create website based on open-source software like Joomla!, WordPress, and Drupal all the time because it SAVES CLIENTS MONEY!! It’s easier for me to sell a client on a $5,000 website that uses much of the same technology as thousands of other websites out there than to create a completely custom app every time (would cost well over $30,000 for even the cheapest of sites).

Not only can I get more bang for my clients’ bucks, but I can also provide them with low cost security and usability upgrades in the future without spending my company resources to build them. It allows us to focus on what makes us valuable to consumers and focus on web design and marketing. Leave the software development to the, well, software developers!

I’ve only described why it works for me (selfish I know). There are many reasons why it can work for the software developers as well. Let’s talk awareness – give something away for free and people find out. They post it all around the web, blogs and news sites pick it up and talk about it. It can even show up on Tech TV shows, the local news, and huge conferences attended by many of the industry’s elite. People love the ‘generosity’ of developers who offer open source, and the more demanding consumer will always pay for the upgrade.

As a business model it makes sense for the developer, the re-seller, and ultimately the end user. It saves money for the latter two and provides good will (and free marketing) for the former. With the amazing amount of choices in the market today, it just makes sense to let the product speak for itself. After all, “if you build it [and give it away for free] they will come”!

Categories: Drupal talk

Gỡ bỏ các dấu tiếng Việt trong URL

November 23, 2009 - 10:27

Ghi lại để nhớ cái tội ngu cả buổi chiều ngồi đọc code để tìm ra cái điều mà nó đã được mô tả trong hướng dẫn sử dụng của nó. Ngu vãi!!!!

1. Dùng module Pathauto

2. Bật tính năng Transliterate prior to creating alias

3. Hiệu chỉnh nội dung tập tin i18n-ascii.txt chứa trong thư mục module pathauto – thêm vào các nguyên âm mang dấu tiếng Việt

——– bắt đầu ———

à = “a”
á = “a”
ả = “a”
ã = “a”
ạ = “a”

ă = “a”
ằ = “a”
ắ = “a”
ẳ = “a”
ẵ = “a”
ặ = “a”

â = “a”
ầ = “a”
ấ = “a”
ẩ = “a”
ẫ = “a”
ậ = “a”

À = “a”
Á = “a”
Ả = “a”
à = “a”
Ạ = “a”

Ă = “a”
Ằ = “a”
Ắ = “a”
Ẳ = “a”
Ẵ = “a”
Ặ = “a”

 = “a”
Ầ = “a”
Ấ = “a”
Ẩ = “a”
Ẫ = “a”
Ậ = “a”

đ = “d”
Đ = “d”

è = “e”
é = “e”
ẻ = “e”
ẽ = “e”
ẹ = “e”

ê = “e”
ề = “e”
ế = “e”
ể = “e”
ễ = “e”
ệ = “e”

È = “e”
É = “e”
Ẻ = “e”
Ẽ = “e”
Ẹ = “e”

Ê = “e”
Ề = “e”
Ế = “e”
Ể = “e”
Ễ = “e”
Ệ = “e”

ì = “i”
í = “i”
ỉ = “i”
ĩ = “i”
ị = “i”

Ì = “i”
Í = “i”
Ỉ = “i”
Ĩ = “i”
Ị = “i”

ò = “o”
ó = “o”
ỏ = “o”
õ = “o”
ọ = “o”

ô = “o”
ồ = “o”
ố = “o”
ổ = “o”
ỗ = “o”
ộ = “o”

ơ = “o”
ờ = “o”
ớ = “o”
ở = “o”
ỡ = “o”
ợ = “o”

Ò = “o”
Ó = “o”
Ỏ = “o”
Õ = “o”
Ọ = “o”

Ô = “o”
Ồ = “o”
Ố = “o”
Ổ = “o”
Ỗ = “o”
Ộ = “o”

Ơ = “o”
Ờ = “o”
Ớ = “o”
Ở = “o”
Ỡ = “o”
Ợ = “o”

ù = “u”
ú = “u”
ủ = “u”
ũ = “u”
ụ = “u”

ư = “u”
ừ = “u”
ứ = “u”
ử = “u”
ữ = “u”
ự = “u”

Ù = “u”
Ú = “u”
Ủ = “u”
Ũ = “u”
Ụ = “u”

Ư = “u”
Ừ = “u”
Ứ = “u”
Ử = “u”
Ữ = “u”
Ự = “u”

ỳ = “y”
ý = “y”
ỷ = “y”
ỹ = “y”
ỵ = “y”

Y = “y”
Ỳ = “y”
Ý = “y”
Ỷ = “y”
Ỹ = “y”
Ỵ = “y”

———————– kết thúc ———————–

Categories: Drupal talk

A Drupal Backup Script

November 22, 2009 - 16:28

I maintain a drupal codebase that hosts multiple sites. I’ve been shamefully lax in getting regular backups of those files and databases, until today. Here is a pretty basic bash script that will create a bzip2 archive of the drupal codebase (including site-specific dirs), and then create mysqldump exports of each site’s database and gzip those files. This particular script requires that the drupal install directory be named “drupal”, but you can change this easily enough to suit your needs.

This does require a ~/.drupalsites file that contains the needed database login info (suggest chmod 600). Like I said, nothing too clever.

#!/bin/bash
DATESTAMP=`date +%Y%m%d`
SITESFILE=${HOME}/.drupalsites
# SITESFILE contents are in the following format:
# SITENAME:DBNAME:DBUSER:DBPASSWD
DRUPALDIR=/path/to/drupal
BACKUPDIR=${HOME}/backups/${DATESTAMP}

mkdir -p ${BACKUPDIR}

# Backup the drupal codebase
echo -n "Backing up ${DRUPALDIR} ... "
cd ${DRUPALDIR}/../
tar -cjpf ${BACKUPDIR}/drupal_${DATESTAMP}.tar.bz2 drupal
echo "Done."

cd ${BACKUPDIR}

# Backup MySQL Databases
cat $SITESFILE | while read line; do
        #echo $line
        line=(${line//:/ })
        echo -n "Backing up MySQL db ${line[1]} ... "
        DUMPFILE=${line[0]}_${DATESTAMP}.sql
        mysqldump -u ${line[2]} -p${line[3]} ${line[1]} > ${DUMPFILE}
        gzip ${DUMPFILE}
        echo "Done."
done

echo "Backup completed, all files are in ${BACKUPDIR}."

This script runs fine from cron, I have it scheduled for a weekly run. I then plan to rsync this to my home server for an offsite copy, even though the hosting service provides backups as well.

Categories: Drupal talk

Smarty vs PHPTemplate trong Drupal

November 22, 2009 - 13:45

PHPTemplate : <?php print $whatever; ?>

Smarty: <li>{$link}</li>

Người viết CSS ko cần biết PHPTemplate, sử dụng Smarty đòi hỏi người viết CSS phải biết Smarty cơ bản vì:

Sau khi biên dịch Theme sẽ tạo ra 1 file trong thư mục drupal/theme/engine/smarty/template_c . File đó sẽ có tên *.tpl.php. Vì vậy, đòi hỏi người làm CSS phải biết các tag(thẻ) trả về trong file *.tpl.php từ đó mới định nghĩa được file *.css cho Theme



Categories: Drupal talk

Exportando un sitio Drupal

November 21, 2009 - 23:35

Hace unos días me vi en la necesidad de exportar desde mi servidor local al servidor de desarrollo on-line (dado que el trabajo es en equipo) un sitio desarrollado con el gestor de contenidos Drupal , para continuar el trabajo en grupo desde un único servidor, evitando así que el sitio evolucione de forma dispar en el servidor local de cada miembro del equipo de desarrollo. Investigando en la red he encontrado poca información y muy dispersa, de forma que me pareció útil ponerla toda junta en un único post.

1. La base de datos

Lo primero que necesitaremos será exportar la base de datos de nuestro servidor local. Lo podemos hacer con phpMyAdmin. Seleccionamos la base de datos de nuestro Drupal en el servidor local, hacemos click en la pestaña “Exportar”. En la pantalla que se nos muestra hemos de asegurarnos que la casilla de verificación de “Datos” esté marcada y hemos de marcar también la casilla de verificación “Enviar (genera un archivo descargable)”, así podremos almacenarlo como un archivo con la extensión “.sql”.

Una vez hemos exportado la base de datos de nuestro servidor local, hemos de importarla en nuestro servidor de destino (ya sea de desarrollo o de producción). Para ello utilizaremos nuestro gestor de base de datos, en nuestro caso será otra vez phpMyAdmin. Primero creamos la base de datos con el nombre que queramos, y una vez creada ya podemos importar el archivo .sql que generamos en la exportación anterior. Una vez realizado esto, ya tenemos nuestra base de datos de Drupal en nuestro servidor de destino.

2. Estructura de directorios

Una vez tenemos la base de datos, hemos de exportar la estructura de directorio que conforma el Drupal desde nuestro servidor local a nuestro servidor de destino. Para ello bien podemos hacerlo comprimiendo todo el sitio en un archivo .zip o sin comprimir con el tiempo de transferencia que eso conlleva. En cualquiera de los dos casos, como resultado final hemos de tener el directorio descomprimido en el directorio de publicación de nuestro servidor de destino (htmlpublic, public, /var/www/, o como se llame en nuestro servidor…). Hemos de asegurarnos que el directorio sites/default de nuestro Drupal tenga permisos de escritura por parte del servidor web.

3. Configuración del servidor web

Si intentamos acceder al sitio Drupal en nuestro nuevo servidor, es posible que podamos ver la página de inicio sin problemas, pero desde que intentamos navegar por él veremos que las secciones no son accesibles. Esto se debe a que no está configurado adecuadamente el servidor web, dado que Drupal por defecto utiliza la url limpia (es decir, los parámetros pasados por url no se ven de la forma ?variable=valor&variable2=valor2, sino de la forma /variable/valor). Por lo tanto, hemos de configurar nuestro servidor para que permita el uso de urls limpias. En estas líneas explicaremos cómo configurarlo en caso de que tengamos acceso a los archivos de configuración del servidor con permisos de administrador. Para ello accedemos con permisos de edición al archivo:

/etc/apache2/sites-available/default

En este archivo, hemos de sustituir en el siguiente código:

Options Indexes FollowSymLinks MultiViewsAllowOverride NoneOrder allow,denyallow from all

La línea

AllowOverride None

ha de ser sustituida por

AllowOverride All

De esta forma nuestro servidor ya podrá reconocer las url limpias. Una vez salvados los cambios, reiniciamos el servidor web y nuestra exportación estaría concluida. A partir de ahora podremos utilizar nuestro sitio Drupal sin problemas y con todas las garantías de que no evolucione de forma independiente en el servidor local de cada desarrollador del equipo.

Categories: Drupal talk

Drupal

November 21, 2009 - 13:07

Drupal é um Sistema de Gerenciamento de Conteúdo (CMS, de Content Management System) rápido e com muitos recursos. Já vem com módulos para criação de Blog, Fórum de discussão, matérias (com feeds RSS criados automaticamente) e páginas de internet. Ainda é possível criar sites de comércio eletrônico, classificados, bate-papo, wikis, leitores de RSS e muitas outras ferramentas, bastando apenas usar as dezenas de módulos gratuitos disponibilizados no sítio. Temas para mudar o visual e traduções também estão disponíveis gratuitamente pela comunidade.

A ferramenta Drupal é escrita em PHP e funciona em qualquer sistema operacional (Windows, Linux, entre outros) e servidores web (Apache, IIS).

 

O nome Drupal deriva da palavra “druppel” do holandês, que significa cair (“drop” em inglês). O criador Dries Buytaert pensou no cair da chuva, gotas. Dries na verdade queria a palavra “dorp” (“vila” em holandês, numa referência a comunidade de usuários), mas quando foi procurar o domínio, digitou errado e achou que soava melhor ainda. O projeto começou em 2000. O mascote azul em forma de gota chama-se Drupalicon.

DOWNLOAD:

http://ftp.drupal.org/files/projects/drupal-6.3.tar.gz

DEMO:

Portal: http://www.opensourcecms.com/cms/drupal/

Administrador: http://www.opensourcecms.com/cms/drupal/admin.html
Usuário: admin
Senha: demo

Módulos:

O core do Drupal foi bem projetado com um sistema de ganchos conhecido como hooks, ou callbacks, que permite que módulos insiram funcionalidades dentro do Drupal.

Módulos incluídos no core do Drupal liberam usuário para:

* Criar, revisar e categorizar conteúdo
* Buscar conteúdo
* Postar comentários
* Participar de fóruns
* Votar em enquetes
* Trabalhar em colaboração escrevendo projetos
* Criar e visualizar páginas de perfil pessoal
* Comunicar entre si ou com outros administrados de websites
* Mudar o visual do site através do gerenciador de temas
* Construir menus de navegação de vários níveis
* Usuários do mesmo site podem navegar com seus idiomas locais
* Prove leitor de notícias RSS feeds
* Registrar e gerenciar contas de usuários
* Criar granularmente regras para usuários dando permissão para funcionalidades específicas do site
* Usar regras de acesso para proibir acessos específicos através dos usuários, emails, e endereços IPs.
* Prove estatísticas e relatórios para administração
* Gerenciamento de cache e throttling, técnica utilizada para desabilitar recursos quando o site estiver com alto tráfego
* Construir específicas regras para filtros de conteúdo
* Sistema de URL amigável que permite lembrar facilmente (ex: “www.mysite.com/products” melhor que “www.mysite.com/?q=node/432)

O Drupal possui centenas de módulos gratuitos escritos pela própria comunidade, como:

* e-commerce systems
* Workflow features
* Photo galleries
* Organic groups
* Google sitemaps
* Amazon Items
* Mailing list management
* Integration with CVS

 

Fonte: Plugmasters

Categories: Drupal talk

About Content Management System And Relation With Your Business Needs

November 20, 2009 - 01:18

If your web site contain a huge number of pages and corresponding level of difficulty in keeping track of all of them, your organization rely on constant and regular web site changes, often with several people working on it and your web site contributors lack sufficient knowledge in HTML and also you need to editorially review each new page before publication. When you are using a CMS will save a lot of time, hassle and money in the long run.

A Content Management System, or CMS for short, is a collection of procedures used to manage work flow in a collaborative environment. These procedures can be manual or computer based. Or in other word, CMS is an administrative software system that allows its users, often unskilled in HTML and web development, to update, edit and create new pages on their website.

In a CMS data can be defined as almost anything – documents, movies, pictures, phone number, scientific data, etc. CMSs are frequently used for storing, controlling, revising, and publishing documentation. Content that is controlled is industry-specific. (Entertainment content differs from the design of a fighter jet). There are various terms for systems (related processes) that do this. Examples include: Web Content Management, Digital Asset Management, Digital Records Management, Electronic Content Management (and others). Synchronization of intermediate steps, and collation into a final product are common goals of each.
Basic of a CMS

A typical CMS works like these; a web design layout is designed and developed. Usually this entails a logo/banner at the top, standard navigation menus across the top, down the left side, and/or at the foot of the page, and a ‘blank’ area where content is inserted, this layout format is then converted into a master template for all subsequent pages. During the process of this conversion, the CMS admin backend is integrated and tested. Web content producers are given access and instructions on how to add text and images to web pages automatically. Most CMS are usually very intuitive and easy to operate. and each generated page is saved onto a database, for future editing or deletion. More elaborate CMS can perform unique functions (such as archiving, built-in search engines, and mod rewrites), but basic functionality is still related to easy creation and editing of web pages.

Types of CMS

  • Proprietary CMS
    These systems are usually very expensive to purchase such as the $500,000 and up Vignette system. These high end systems however come loaded with full features and usually have excellent customer and technical support. Common uses of these systems involve very large organizations with departments that require unique functionality.
  • Open source
    These systems are typically free and relatively easy to install. Some of the better known open source systems include Mambo and Drupal. Because of its open source nature however, you will find a dearth of customer and technical support, however there exists a huge following and forums dedicated to the popular systems. Customization capabilities vary from system to system. Be sure to do all the necessary research before deciding on one.
  • Custom CMS
    These types of systems are usually preferred as they allow you to develop from scratch, your preferred functionality. Debugging is also less of an issue as your web developer, having written the codes, can easily isolate and fix problems. Bear in mind there are literally hundreds of CMS to choose from. Ranging in costs from free to over $500,000. What you do need to do, is firstly figuring out exactly what functionality your organization needs, your development budget and finally find a system that suits those needs best.The downside to installing a CMS is of course, the amount of web development needed initially. While you are able to obtain free open source CMS programs, you still need to hire someone experienced and capable enough to integrate it correctly. This initial expense however, is usually a necessary evil and is justified as you avoid the need of hiring or outsourcing your webmastering needs down the road.

Ultimately a CMS is meant to make life easier, not creating new rigid standards that require stop gap hacks or workaround solutions.

copas from Globaltor – About Content Management System And Relation With Your Business Needs

Categories: Drupal talk

Meeting Minutes 11192009

November 20, 2009 - 00:56

Attendees: Tony, Will, Yu-Ching and Danny

Issue:

  1. Tony talked to Duran Goodyear from UArts Communications Office. They are working on an University level digital assets archive program. Possible collaboration opportunity with them. Perhaps using ID dept. as the first test group!
  2. Will and Jeff (MID 2) are building an onsite ‘project work server’ system based upon a web-based creative community resources project of Will MID graduate thesis “OKWagon” using Drupal, a web-based content management platform. Drupal can be a possible platform to build our archive system, and further incorporated in OKWagon.
  3. Yu-Ching asked whether we should include PDF’s or just images to our archive. We shall find out after our meeting with Duran about their project.

To Do:

  1. Faculty charrette: Sit down and go through all material to decide what to keep and what to toss.
  2. Conduct interview/survey for faculty and students to find out what service they want the archive system to provide.
  3. Start digitize the slides.

Next Meeting:

12/3/2009 1pm @ ID faculty Office with Sara McDonald (Library) and Duran Goodyear (Communications)

Categories: Drupal talk