Feed aggregator

Google Eats Drupal Breadcrumbs, Passes on Pie

Ben's SEO Blog - November 25, 2009 - 16:32
breadcrumbs.jpg

When you use Google to search, there is a green web address, or URL, at the bottom of each result so that you know where you are headed. Last week, Google rolled out a new feature that replaces the URL in search results with a site hierarchy, showing the precise location of the page on the website. The new feature: site hierarchy, or site navigation “breadcrumbs” gives a lot more information then the URL paths that were displayed before the update.

This is exciting news for Drupal-powered websites. Drupal generates breadcrumbs right out of the box and displays them in the default templates. Google now recognizes these navigational links and uses them in the SERPs. If you are using Drupal breadcrumbs in your template, you are essentially getting a helping hand from Google immediately.

Drupal’s Breadcrumb Modules

Drupal offers some additional modules you can use that will further customize your breadcrumbs. Click below to go to their respective homepages.

• Taxonomy Breadcrumb
• Custom Breadcrumbs
• Menu Breadcrumb
• Node Breadcrumb

Breadcrumbs are very functional, and that fact is not lost on Drupal developers. Even though breadcrumbs are not necessary for every website, Google’s new feature will help reinvigorate the popularity and usefulness of breadcrumbs in SEO, as well as help solidify Drupal’s footing at the top of the open-source CMS hill.

Categories: Drupal talk

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


Синхронизация 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

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:

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

Drupal-GoogleApps

Flickr - 5 hours 27 min ago

connectrTest posted a photo:

Drupal-GoogleApps

description of photo

Categories: Drupal talk

Report from the 2009 Non-profit Software Development Summit

CiviCRM Blog - 12 hours 39 min ago

A passionate posse of folks interested in advancing the state of non-profit software gathered this week at the Non-profit Software Development Summit. CiviCRM was a sponsor of the event which featured a full "track" of Civi-related events. Some civ-highlights from the conference:

  • Helping some current users solve problems and get up to speed on more advance features in the CiviCRM 201 session. Our community does pretty amazing things in the "cloud" - but I really love having opportunities to interact with users and integrators and developers "live and in person". The feedback on 3.0 usability improvements (especially the new navigation menu) was super positive and very gratifying.
  • Participating in Lobo's "action-packed" 60 minute session on Extending CiviCRM without Hacking Core. The more I play with all the things that can be done with our evolving hook functionality - the more excited I get.
  • Joining with a group of CiviCRM integrators (and a few users) to brainstorm about Building the CiviCRM Community. This session was organized by the folks at Dharmatech - and partly inspired by a really cool book - The Art of Community - written by Jono Bacon who is the community manager for Ubuntu (a popular open source operating system distribution based on Debian Linux). It was exciting to collaborate in thinking about how folks with different interests and skills can potentially contribute towards strengthening the CiviCRM community and accelerating adoption of the platform. If you're interested in the ongoing sustainability of CiviCRM - I would encourage you to read Jono's book and think about what "team" you can join and / or create.

Thanks to Gunner and the team at Aspiration for organizing a great event!

read more

Categories: Planet Drupal

Do It With Drupal!

Lullabot - 14 hours 43 min ago

Do It With Drupal Have you checked out the Do It With Drupal website lately? There are a lot of exciting things happening! This year's keynotes come from Lullabot co-founder, Jeff Robbins, Brain Traffic's Kristina Halvorson and Drupal founder, Dries Buytaert. DiWD also has a lot of other awesome speakers coming. Check out our updated schedule to get a good overview of all of the sessions.

Back by popular demand, we will be doing case studies and site dissections from top Drupal sites including the Economist, New York Senate, and MTV UK. We'll have their development teams on hand to crack them open for us, show us what makes 'em tick, and answer our copious questions. We're also building and demonstrating Drupal fantasy sites – we create clones of popular websites in Drupal. This year's clones include Etsy, Craig's List and Yelp.

We've got master classes from Views and Panels author Earl Miles, Ubercart uber-guy Ryan Szrama, Organic Groups author, Moshe Weitzman, and Karen "the Queen of CCK" Stevenson talking about both CCK and date/event handling. We've got Drupal 7 co-lead Angie Byron talking about Drupal 7 and the list goes on and on. We've also got some great speakers from outside of the Drupal community coming to talk about many of the non-Drupal skills needed to build a successful Drupal project -- these include content strategy, community building, project management, and understanding some of the emerging technologies which we will all need to integrate into our sites over the next few years.

Another important part of the Do It With Drupal experience is the social interaction and networking. Want to share a drink with some of Drupal's top developers? Want to meet other site builders, developers, and decision makers who are in the same boat as you? Want to find some people to help answer your Drupal questions? With most of the event happening in one central place and organized evening events – not to mention lots of fun stuff nearby in the French Quarter, it's easy to meet people at Do It With Drupal!

What else besides a lot of interesting information and amazing speakers do you receive if you come to New Orleans you ask? How about these highlights:

  • Amazing food - free breakfast and lunch each day for attendees
  • A sweet swag bag that includes, yes... swag! Oh... and a Lullabot t-shirt.
  • Your choice of one DVD from our popular Lullabot Learning Series
  • Access to the 2009 Do It With Drupal video archive. We're recording it all! Go online once you get home and catch the sessions you missed during the excitement.
  • Come hang out with Lullabot team, with a hammer and nails, at the Habitat for Humanity event on Saturday.
  • Lullabot temporary tattoos. Pretend they're permanent. Look tough.

We'll see you in New Orleans!

read more

Categories: Planet Drupal

WordPress Selected Best Overall Open Source Content Manageme

Digg - November 23, 2009 - 23:48
We've been on the WordPress-as-CMS bandwagon for several months. Recently, we heard WordPress was awarded the Best Overall Open Source Content Management System award in the 2009 Open Source CMS Awards, beating out Drupal, Joomla, and a bunch of other geek favorites.
Categories: Drupal talk

Top 5 games on Facebook

Appnovation Technologies - November 23, 2009 - 23:20
Mon, Nov 23, 2009 by Meena

Game developers have found the secret to developing fun interactive games that are successful, fun and ever so popular, all thanks to one of the most powerful online social networks, facebook. If your like many of the folks out there in Facebookland I'm sure your addicted to things like planting your crops, building restaurants, fighting mobsters, taking care of virtual pets, and even taking care of little fishies. I have attached a video that describes the top 5 games on Facebook as of November 2009!!! Let us know what your favourite game is on facebook and if it's true what they say, "once you sign on -you can't leave it alone."

Categories: Planet Drupal

CSS Frameworks and When to Use Them

Affinity Bridge - November 23, 2009 - 23:18

css frameworksYou may have heard or read comments similar to the following about CSS frameworks:

"They are not flexible enough."
"It's too much useless code."
"I like to keep my CSS clean."
"Why do I need a framework if I know what I'm doing?"
"The site is not going to change, so we don't need a CSS framework."

A CSS framework cannot be expected to be the final solution to all your problems, but it can be a useful tool for structuring and theming your site more efficiently. Read on to learn more about what CSS frameworks are, pros and cons of using them, existing framework options, and related themes.

What exactly is a CSS framework?

Every time you start a new project there are several basic lines of code that you add to your CSS; you may want to remove the default margins added by the browsers, set the font size to 12px as the browser standard, create a popular layout, etc.

This is exactly what a CSS framework does, it gives you a nice set of code that takes care of these basic tasks for you.

"So, are CSS frameworks just a set of css files that I can add to my project?"

Not exactly. Some of them are, but others go even further to create a layout that allows you to work with more programatically created code. As you may know, you can't do arithmetic operations in CSS like "1em - .5em" or "1em + 2px", use inheritance as you would with objects, or use conditionals or loop clauses.

To explain how these more complicated frameworks work goes beyond the scope of this post, but if you are interested, take a look at Scaffold and Compass.

Pros and Cons of using a CSS framework

Before starting any coding, be sure to have a strategy; this is the paper and pen phase that we've all heard about and almost none of us does. It is very easy to look at a framework as inflexible, so before jumping to this conclusion, ask yourself:

  • Have you chosen the right framework?
  • Was your design created with the notion that had to fit an existing CSS grid?
  • Are you aware of how a framework offers more than just a tool for layouts?

In my experience, the layout becomes more challenging when we try to use a framework, but the benefits to your CSS lie in decreasing the amount of code needed for your layout overall. Another thing that any good CSS framework takes care of is the well known list of IE CSS bugs. You will also find solutions for a standard CSS template for HTML elements, which is really helpful since every browser renders the HTML elements a little bit different. This template will also help you with cross-browser proofing your fonts and line heights, making it a little bit easier to work with em's for your font sizes instead of px.

Existing Framework Options

The list of CSS frameworks available has grown to over 20 last time I checked; a Google search can give you an idea of the variety that is out there. I have worked extensively with YAML, Blueprint, and 960, but I also have had the chance to do some experimentation with: YUI Grids, Scaffold, and Compass.

YAML css frameworkOne of the nicest things with YAML is their YAML Builder tool, which will help you to easily build layouts, however YAML is not a real grid system (as far as I understand a grid should be) and you may find the layout possibilities to be a little bit limited.

Blueprint css frameworkWith Blueprint, I have a bit of a dilemma. I especially like what a good job they did with the HTML elements and fonts, so much so that sometimes I only take this part from the framework and build the rest of the CSS code separately. However, I don't like their standard grid dimensions (if I'm using a grid I prefer to go with the standard size to avoid future compatibility problems with other CSS code) but you can easily enough change the column's width and gathers to create your own grid.

960 css frameworkSo far 960 it has been the most useful for me. Again this is not the final solution, and although in this case I really like the grid system, I tend to fall in favor of Blueprint for the HTML elements and fonts CSS job.

And What About Themes?

If you are a Drupal themer you may now be saying to yourself "Ok, frameworks are cool but we are talking about themes over here, which theme should I use?" Themes are more than just CSS code, and when it comes to themes, I prefer those ones that:

  • assist me with the hook theme system
  • give me enough containers so I don't have to spend time creating templates
  • leave the CSS code fairly blank

To be more specific, I would tell you the Zen theme is still my top choice, and the CSS code will depend on the individual project.

Just Try It!

Needless to say, before you launch yourself into the next project with the idea that you are going to use a CSS framework, you should practice with them a little bit first. Try to build a full page with two different frameworks, don't stop at the layout, but move on to applying the existing code to your content and see how well the framework manage IE bugs.

I hope that helps explain some of the pros and cons of using CSS frameworks. If you have any questions or comments, please leave them below.

Categories: Planet Drupal

Updates and videos for Fusion

Top Notch Themes - November 23, 2009 - 22:08

We’ve been very hard at work on the new Fusion themes and upcoming website. The third beta of Fusion will be coming in about a week, which will likely be our second-to-last beta. There are only a few items remaining before a release candidate.

Others in the Drupal community have been checking out Fusion’s potential, whether through releasing new themes or launching sites. Also, we’ve got initial docs up for both end users and subtheming.

If you haven’t had a chance to take it for a spin yet, Jeremy put together a pair of videos to give you a basic tour of Fusion and our first released subtheme, Acquia Prosper (the other Acquia themes are well on their way, just waiting for RTL).

read more

Categories: Planet Drupal

Child behavior problems are a thing of the past with this

Digg - November 23, 2009 - 21:03
Do you have a struggling teen? Are you looking for child behavior help?
Categories: Drupal talk

Parenting blogs that talk about child behavior problems

Digg - November 23, 2009 - 21:03
Empowering Parents is a parenting blog that talks about child behavior problems like oppositional defiant disorder.
Categories: Drupal talk

SponsorLinks | Mozdev

Digg - November 23, 2009 - 20:51
This is the wiki for Mozdev's documentation on how to use our site, manage your project at Mozdev, and use other features.
Categories: Drupal talk

Drupal 7 - A Preview

Mediacurrent - November 23, 2009 - 19:10

Drupal 7The Drupal community is eagerly awaiting its newest release. At this point, the co-maintainers have held the position that Drupal 7 will be released "when it is ready" - in essence, when all the critical issues have been addressed. A list of the remaining bugs can be found on drupal.org under the contributor links in the right sidebar. This post will summarize some of the major differences one can expect to find in Drupal 7.

read more

Categories: Planet Drupal

WordPress Wins Over Joomla and Drupal

Digg - November 23, 2009 - 17:45
Awarded the Overall Best Open Source CMS in 2009. Do you think it is warranted and should they deserve to be called the "Best Open Source CMS" this year?
Categories: Drupal talk

Nuovo template per Drupal

Digg - November 23, 2009 - 17:42
Nuovo template per drupal con ottimizzazioni per SEO e numerose regioni per layout complessi: www.themes-drupal.org/async.html
Categories: Drupal talk

Why Open Source is Good for You

Drupal Blogs, Pictures, and more on WordPress - 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

Customize Your Managing News

Development Seed - November 23, 2009 - 16:22

How to customize the news aggregator or use it to build other applications

In Eric's announcement last month, he emphasized that Managing News is both a product and a platform. In this post, I'll explain what this means in concrete terms and how Managing News can be highly customized or used to build something other than a news aggregator. This post assumes some Drupal site building experience and at times some Drupal coding experience. But even if you're new to Drupal, it will give you a useful glimpse of what's possible with Managing News.

Modular architecture

The package that you can download at ManagingNews.com is the fourth iteration of Managing News. This time we paid special attention to keeping it simple and modular. Managing News consists of Drupal core plus about 20 contrib modules, four custom modules, five Features, and a design that is split into a base theme (Tao) with the actual theme on top of it (Jake).

Features

We have written extensively about Features in the past. If you are new to the concept, the quick explanation is that features are special modules that contain configurations for other modules. Use cases of Features are typically higher-level than those of modules. One example would be an "Event section" feature, consisting of configuration for the Calendar and the Date module. Features can be turned on and off just like any other module, and they have full access to the Drupal API.

You can see all the features in Managing News by going to the Admin section (link on the top left when you're logged in) and clicking on "Features":

We can see five features on this page: MN Core is the base feature. Most importantly, it contains the configuration for aggregation functionality. MN Search provides the search page and the configuration for saving searches and highlighting them on the front page. MN Channels offers a way of collecting single news items into custom lists that can be printed or distributed via RSS. MN About is a very simple about section that basically contains a book node and a menu item. Finally MN World contains the configuration for geo tagging map displays.

Categories: Planet Drupal

Druplicon Appears in Music Video, Raps

Trellon.com - November 23, 2009 - 15:26

It's always a special time when Druplicon shows up at any of the Drupal conventions and events. The people at Trellon are always on the lookout for when he is going to make an appearance so we can take pictures with our camera phones and MMS them to friends and relatives. Imagine our surprise when we saw him (her?) show up in a music video on one of our favorite social media sites. Pictures below the break.Read More >>>

Bookmark/Search this post with:
Categories: Planet Drupal

Visualization of results from the recent Afghan election

Flickr - November 23, 2009 - 15:05

DevelopmentSeed posted a photo:

Visualization of results from the recent Afghan election

We used Managing News as the base for this site, which shows voting results down to the ballot level. This site is a good example for "Managing News as a platform".

Categories: Drupal talk
Syndicate content