SPECIAL OFFER! Get 1 year of access to everything in OSTraining for only $59! You save $85!
Join today and get access to 1,000's of books and videos. Learn WordPress, Drupal, Magento, Joomla and more! Sign up today!

| Security

Today's security topic is inspired by a recent exercise I went through - testing a server for PCI compliance. For those who are not aware PCI is a security standard for accepting credit cards.

According the website for PCI they state their mission as follows:

"The PCI Security Standards Council’s mission is to enhance payment account data security by driving education and awareness of the PCI Security Standards. The organization was founded by American Express, Discover Financial Services, JCB International, MasterCard Worldwide, and Visa, Inc."

Read more ...

| Development

Something I have run into frequently during module development is the need to allow multiple instances of that module on a single page. Joomla!, of course, handles 99% of the work involved, but there are a few tricky aspects to making this work. One is the need to eliminate styling conflicts, especially in themed modules. If you only use generic classes and then load multiple theme/color stylesheets, the end result can be unpredictable to say the least.

Read more ...

| WordPress

This tutorial will show you how to take an RSS feed and import it into your Wordpress site. Each item on the RSS feed will become a separate Wordpress post. We use this technique for a couple purposes:

  • Distributing our content to other Wordpress sites.
  • Importing blogs and news on a particular topic from other sites. This way people can read them all in one place.

We're going to use a plugin called FeedWordPress.

Installing and Configuring FeedWordPress

  • WP RSS ImportStep 1: Go to the FeedWordPress page on Wordpress.org and download the file.
  • Step 2: Extract the files into a folder on your desktop. The folder will be called, unsurprisingly "feedwordpress"
  • Step 3: Login to your site's files via FTP and navigate to /wp-content/plugins/.
  • Step 4: Upload the "feedwordpress" folder to  /wp-content/plugins/.
  • Step 5: Go to wp-admin >> Plugins and click "Activate" under "FeedWordPress".
  • Step 6: Once you've enabled it, you'll see a new tab on the sidebar called "Syndication". Click the first link called "Syndication". You'll see a screen like below:
  • Step 7: Enter your RSS feed into the box called "Add new source" and click "Syndicate"
  • Step 8: FeedWordPress will check the feed and if it's valid, you can click "Use this Feed" to import the posts.
WP RSS Import

Importing the RSS Feeds

Now that you're set up, there are two ways to import feeds:

  • Manually: If you'd like to manually import feeds, go the "Syndication" link, check the feeds and click "Update Checked".
  • Automatically: If you'd like to manually import feeds, go the "Feed and Updates" link and FeedWordPress will show you how to give you instructions to set-up a cron job.

| Drupal

This tutorial was requested by a student who is learning the Drupal basics. They turned on "Clean URLs" in the Drupal admin area and were surprised to see that the URLs remained largely unchanged:

  • Old: /?q=node/3
  • New: /node/3

The student's comment was:

"that's still a silly address for my About Us page. I want the address to be /about-us/."

We also tried to help them by turning on the Path module in the Drupal core. That allowed them to create URLs like /about-us/ however they still needed to think about it and ask their users to create a path every time. They wanted something that would create great URLs automatically.

The solution is the "Pathauto" module and let's show you how to set it up:

Installing Pathauto to Your Drupal Site

In fact, we're going to install two modules because Pathauto also requires the "Token" module.

  • Step 1: Go to Administer >> Site configuration >> Clean URLs to check that they are enabled.
  • Step 2: Click here to download the latest version of "Pathauto" and click here for "Token".
  • Step 3: Extract the files into a two folders on your desktop. One  folder will be called "pathauto" and the other "token".
  • Step 4: Login to your site's files via FTP and navigate to /sites/all/. If there isn't a folder called /modules/ here, create one.
  • Step 5: Upload the "sections" folder to /sites/all/modules/
  • Step 6: Go to Administer >> Site building >> Modules. You'll need to check four boxes:

    Enable Drupal Pathauto

  • Step 7: Go and create a new node. When you do, you should notice a new area labelled "URL path settings". If you leave "Automatic alias" checked, the address of the page will likely be your Page title in this format:
    /content/your-page-title/

    Enable Drupal Pathauto

Configuring Pathauto

The default Pathauto setting might not be to everyone's taste:

  • You may want to use underscores _ instead of dashes as this student did.
  • You may want to remove /content/ so that you really can have pages with the address /about-us/ rather than /content/about-us/
To change the settings, go to Administer >> Site building >> URL aliases >> Automated Alias Settings:

Drupal Pathauto Settings

We just had this wonderful email from one of our Joomla training clients. Paulo and his team came to the class knowing nothing about Joomla, but on a

"Just wanted to share our success. :)

Back in December 10,11 we (my coworkers and I) went to a Joomla Training and we had nothing. I think I even told you that we needed the website up by the end of January, and you're like... "that's gonna be hard". Well... it was, but we did it. :)

I'm still implementing more functionality to the site and giving more power to the editors, but we have the site up and running beautifully, with 277 articles, 25 sections, 88 categories, and around 40 editors. The church purchased CommunityACL and It really works well. Every user has access to only their areas and JCE lets them have access to only their folder in the server.

So, that's it... We did it.

Check out: http://www.fba.org

Thanks!

Paulo"

| Development

Long-time users of Joomla are quite familiar with content plugins. When you want to take some user-entered text and reformat it into something else, there’s nothing quite as handy as having a content plugin ready to do your bidding.

However, Joomla 1.5 brought some subtle behavior changes. In Joomla 1.0, content plugins act on both articles entered through the Article Manager, as well as HTML entered in user created modules. When a Joomla 1.0 content plugin is recoded for 1.5, the original effect still takes place on content items, but module output is left unchanged.

What happened? Content plugins in Joomla 1.5 are designed to only act on articles managed through the Article Manager. This will seem inconvenient to people used to the old behavior, but there is a good reason for this change. While many content plugins reformat user-entered HTML, others add markup near the article title or just after an article is output. Also, some content plugins are designed to do additional tasks when articles are saved. These actions do not make sense within the context of a module, so content plugins no longer run on them.

While this good in that it enforces consistency, it also poses a problem. Now that content plugins only work on articles, how do you reformat markup coming from modules? Fortunately, there are a couple of workarounds in Joomla 1.5 achieving similar (if not better) results.

Read more ...

| Drupal

This tutorial was written after a request in one of this week's Drupal classes: "How do I show different Drupal themes on different pages?". The answer is a module called "Sections":

Installing Sections to Your Drupal Site

  • Step 1: Click here to download the latest version of "Sections".
  • Step 2: Extract the files into a folder on your desktop. The folder will be called "sections".
  • Step 3: Login to your site's files via FTP and navigate to /sites/all/. If there isn't a folder called /modules/ here, create one.
  • Step 4: Upload the "sections" folder to /sites/all/modules/
  • Step 5: Go to Administer >> Site building >> Modules. Check the box next to "Sections" and click Save Configuration.

Showing Different Drupal Themes on Different Pages

Now that Sections is set up, we'll be able to use it to place different themes on different pages:

  • Step 6: Go to Administer >> Site building >> Themes. Make sure that all the themes you want to use are enabled.
  • Step 7: Go to Administer >> Site building >> Sections and click "Add Sections".
  • Step 8: Give the section a name, click "enabled" and choose the theme you want to use.
  • Step 9: At the bottom of the page you'll see an area called "Page specific visibility settings". This is the same option you have with Blocks. Enter the pages you'd like this theme to appear on, click save and you're done!

| Security

"Congressional Web Site Defacements Follow the State of the Union"
- Praetorian Prefect

An interesting problem that we as the US have is our denial of Cyberwar. While this post isn't exactly about that, it's close. Last Wednesday night during or after the President's State of the Union Address, several congressional websites were hacked by Red Eye Crew. Why is this of interest? According to Praetorian Prefect, they were all running Joomla!

Read more ...

| Development

Because of it ubiquitous nature, automatic emailing is something that many clients expect. People want to be notified immediately of changes on their sites -- when a new article has been submitted, or a blog comment has been posted. Joomla! already provides some of this functionality out of the box by notifying administrators when a user has registered on their site. You, however, may find yourself needing to implement emailing in your own components. As you may have already guessed, Joomla! provides a very helpful class for this: JMail.

Read more ...

| Development

If you've worked with any kind of database-driven web application, you know that HTML forms are the foundation of the user's interaction with the database. Applications use forms to take input from the user and store it or use it to manipulate existing data. Unfortunately, HTML forms can potentially be quite tedious to write. In this article, we will look at a handful of helpful functions that Joomla! provides to save you time preparing your forms.

Read more ...

| Security

Happy New Year - How's your patches?

It's about the middle of January of 2010 and in the news, Google was hacked by unknown's from China and Google is considering a few options, including a complete pull out of China. A large search engine in China (not Google) was defaced by the Iranian cyber thugs, Adobe was appartently targeted in the same attack as Google. And in other news the new BREECH report came out from the ITRC showing that overall while breeches were lower than the year before, the number of exposed records was higher. And as I write this article, this just came across my desk:

"Hackers have stolen the login credentials for more than 8,300 customers of New York's Suffolk County National Bank after breaching its security and accessing a server that hosted its online banking system. "
source: http://www.theregister.co.uk/2010/01/12/bank_server_breached/

What does this have to do with your Joomla site? Everything. Today I am discussing patching and patch management with you. For the purpose of this article I am going to refer to my personal favorite work on patching from ProjectQuant - Measuring and Optimizing Patch Management: an Open Model. A must read in my opinion.

Read more ...

| Drupal
One of things we often do for our training clients is simplify the admin area for them. There is a module that allows users to manage their site via a clean, dropdown menu. It has proven so popular that companies such as Acquia provide it by default to all their customers:
Here's how to install it:
  • Step 1: Click here to download the latest version of "Admin Menu". Choose the top link under "Recommended releases".
  • Step 2: Extract the files into a folder on your desktop. The folder will be called "admin_menu"
  • Step 3: Login to your site's files via FTP and navigate to /sites/default/. If there isn't a folder called /modules/ here, create one.
  • Step 4: Upload the "admin_menu" folder to /sites/default/modules/
  • Step 5: Go to Administer >> Modules >> Administration menu and check the box.  
  • Step 6: Click 'Save Configuration" at the very bottom of the screen.
  • Step 7: Go to Administer >> Site configuration >> Administration menu and there are some settings you can edit.

Once you've followed those seven steps, your dropdown menu should appear at the top of the page.

Drupal Admin Menu

| Drupal

In this tutorial we'll show you how to place an RSS feed inside a block. You can then display that RSS feed anywhere around your theme. We don't need any extra modules this week as we'll be using the core Aggregator Module:

Setting up the Aggregator Module

First of all, we're going to set up the Aggregator module so that it can handle the RSS feeds for us.

  • Step 1: Go to Administer >> Site building >> Modules. Check the box next to "Aggregator" and click Save Configuration.
  • Step 2: Go to Administer >> click "By module" at the top.
  • Step 3: Find the "Aggregator" area right at the top and then click on "Feed aggregator":

  • Drupal Aggregator Module

  • Step 4: Click "Add Feed" along the top and enter the address of your RSS feed:

  • Drupal Aggregator Module

  • Step 5: Click "Save" and then "update items". That will load the latest articles from your RSS feed.

Placing the RSS Feed in a Block

Now that Aggregator is handling the RSS feeds for us, we'll go and place it into a block on our site:

  • Step 6: Go to Administer >> Site building >> Blocks. Scroll down to find the block with the same name as the feed your created in Step 4. Aggregator has automatically created this for you.
  • Step 7: More than likely, you will need to click "Configure" next to the block and choose a new title. Aggregator creates a default title of "[feed name] feed latest items".
  • Step 8: Publish the block and check to see how it looks on your site:

  • Drupal Aggregator Module

| Drupal

What is a WYSIWYG Editor and Why Do You Need It?

So your site users don't have to use code. Its as simple as that.

WYSIWYG stands for "What You See Is What You Get" ... if you select some text and click the "bold" button, that text will be bold. If you select some text and click the "italic" button, that text will be in italics. There's no messing around with HTML. That will be a relief to some of you and more particularly ... your clients and site visitors.

Installing the WYSIWYG Module

First of all, we're going to install a WYSIWYG module that will allow Drupal to install a range of different editors.

  • Step 1: Click here to download the latest version of "WYSIWYG". Choose the top link under "Recommended releases".
  • Step 2: Extract the files into a folder on your desktop. The folder will be called "wysiwyg"
  • Step 3: Login to your site's files via FTP and navigate to /sites/all/. If there isn't a folder called /modules/ here, create one.
  • Step 4: Upload the "wysiwyg" folder to /sites/all/modules/
  • Step 5: Go to Administer >> Site building >> Modules. Check the box next to "Wysiwyg" and click Save Configuration.
  • Step 6: Go to Administer >> Site configuration >> Wysiwyg and you should see a screen with several suggested editors. One option is TinyMCE and that is the example we will use:
Adding a WYSIWYG Editor to Your Drupal Site

Installing TinyMCE

Now we're going to install the TinyMCE editor itself:

  • Step 7: Click on the "Download" link or go directly to http://tinymce.moxiecode.com/download.php
  • Step 8: Download the latest TinyMCE to your desktop and extract the files. The folder will be called "tinymce 2". Rename this to simply "tinymce"
  • Step 9: Login to your site's files via FTP and navigate to /sites/all/. If there isn't a folder called /libraries/ here, create one.
  • Step 10: Upload the "wysiwyg" folder to /sites/all/libraries/
  • Step 11: Go back to Go to Administer >> Site configuration >> Wysiwyg and screen we saw before should now look like this:
Adding a WYSIWYG Editor to Your Drupal Site
  • Step 12: Save these settings and now when you go to edit an article, you should see a fully-fledged editor:
Adding a WYSIWYG Editor to Your Drupal Site

| Drupal

Why Block Spam Comments?

MollomIf you site is new, this might not be too much of a problem. However, as your site grows, it will increasingly be seen as a valuable target for spammers. If they succeed in placing links on your site, they may get a couple of benefits:

  • Search engines may rank the spammer's site more highly
  • Unsuspecting users may click on the link and visit the spammer's site.
Perhaps the best solution available for Drupal sites is Mollom - a module created by Drupal's founder. It automatically filters out spammers who try to register, comment or contact you.

Install Mollom to Your Drupal Site

  • Step 1: Click here to download the latest version of "Mollom". Choose the top link under "Recommended releases".
  • Step 2: Extract the files into a folder on your desktop. The folder will be called "mollom"
  • Step 3: Login to your site's files via FTP and navigate to /sites/default/. If there isn't a folder called /modules/ here, create one.
  • Step 4: Upload the "mollom" folder to /sites/default/modules/
  • Step 5: Go to Administer >> Site building >> Modules. Check the box next to "Mollom" and click Save Configuration.

Setting Up and Enabling Mollom

  • Step 6: Go to Mollom.com and create an account.
  • Step 7: Once you have logged in to Mollom.com, click "Manage sites" in the upper right menu.
  • Step 8: Select "Add subscription" to create a new key pair for your website (or "edit subscription" to access a subscription for an existing site tied to your account).
  • Step 9: Go back to your Drupal site and visit Administer >> Site configuration >> Mollom.
  • Step 10: Enter the key pair that you created in Step 8.

Once the module is active you can log back in to Mollom.com in future weeks to track how much spam has been prevented on your site.

| Drupal

Why Add a Sitemap?

I'll be honest and say that I don't believe sitemaps improve your ranking in search engines. However, they do make sure more pages get indexed and that they get indexed more quickly. This article presents evidence that the difference is astounding:

  • Google with a sitemap: 14 minutes
  • Google without a sitemap: 1375 minutes
  • Yahoo with a sitemap: 245 minutes
  • Yahoo without a sitemap: 1773 minutes

How to Add a Sitemap to Your Drupal Site

  • Step 1: Click here to download the latest version of "XML Sitemap". Choose the top link under "Recommended releases".
  • Step 2: Extract the files into a folder on your desktop. The folder will be called "xmlsitemap"
  • Step 3: Login to your site's files via FTP and navigate to /sites/default/. If there isn't a folder called /modules/ here, create one.
  • Step 4: Upload the "xmlsitemap" folder to /sites/default/modules/
  • Step 5: Go to Administer >> Modules >> Administration menu and check the box next to "XML sitemap" and click "Save Configuration".
  • Step 6: After saving you'll presented with more options. Checking all the boxes would be a good choice.
Drupal Sitemap

Submitting the Sitemap to Search Engines

Drupal Sitemap

Join today and get access to 1,000's of books and videos. Learn WordPress, Drupal, Magento, Joomla and more! Sign up today!