? 0-nodewords-drupal-attributes-output.patch
? 781440-token-replace-context-followup.patch
? 901764-nodewords-frontpage-metatags.patch
? 945786-nodewords-offline-metatags.patch
? 948342-nodewords-pagetitle.patch
? 958542-nodewords-uninstall-variables.patch
? patches
Index: nodewords.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/nodewords/nodewords.module,v
retrieving revision 1.57.2.369
diff -u -p -r1.57.2.369 nodewords.module
--- nodewords.module	7 Nov 2010 20:49:47 -0000	1.57.2.369
+++ nodewords.module	8 Nov 2010 02:05:43 -0000
@@ -156,6 +156,14 @@ function nodewords_preprocess_page(&$var
 
     nodewords_load_all_includes('nodewords.hooks.inc');
     drupal_alter('nodewords_tags', $output_tags, $options);
+
+    // Title tag has its own page preprocess variable.
+    if (!empty($output_tags['title'])) {
+      drupal_set_title($output_tags['title']);
+      $variables['head_title'] = strip_tags(drupal_get_title());
+      unset($output_tags['title']);
+    }
+
     $output = _nodewords_output_tags($output_tags);
     drupal_alter('nodewords_tags_output', $output, $options);
 
Index: nodewords_basic/includes/nodewords_basic.nodewords.hooks.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/nodewords/nodewords_basic/includes/Attic/nodewords_basic.nodewords.hooks.inc,v
retrieving revision 1.1.2.5
diff -u -p -r1.1.2.5 nodewords_basic.nodewords.hooks.inc
--- nodewords_basic/includes/nodewords_basic.nodewords.hooks.inc	11 Apr 2010 15:39:45 -0000	1.1.2.5
+++ nodewords_basic/includes/nodewords_basic.nodewords.hooks.inc	8 Nov 2010 02:05:43 -0000
@@ -7,10 +7,15 @@
  */
 
 /**
-* Implements hook_nodewords_tags_info().
+ * Implements hook_nodewords_tags_info().
  */
 function nodewords_basic_nodewords_tags_info() {
   $tags = array(
+    'title' => array(
+      'callback' => 'nodewords_basic_title',
+      'label' => t('Title'),
+      'tokens' => TRUE,
+    ),
     'abstract' => array(
       'callback' => 'nodewords_basic_abstract',
       'label' => t('Abstract'),
Index: nodewords_basic/includes/nodewords_basic.nodewords.tags.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/nodewords/nodewords_basic/includes/Attic/nodewords_basic.nodewords.tags.inc,v
retrieving revision 1.1.2.14
diff -u -p -r1.1.2.14 nodewords_basic.nodewords.tags.inc
--- nodewords_basic/includes/nodewords_basic.nodewords.tags.inc	1 Nov 2010 07:14:31 -0000	1.1.2.14
+++ nodewords_basic/includes/nodewords_basic.nodewords.tags.inc	8 Nov 2010 02:05:43 -0000
@@ -9,6 +9,32 @@
 /**
  * Set the form fields used to implement the options for the meta tag.
  */
+function nodewords_basic_title_form(&$form, $content, $options) {
+  $form['title'] = array(
+    '#tree' => TRUE,
+  );
+
+  $form['title']['value'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Title'),
+    '#description' => t('Provide a description for this forum overview page to appear in the @title tag which search engines can use in search result listings (optional). It is generally accepted this field should be less than 70 characters.', array('@title' => '<title>')) . $options['description'],
+    '#default_value' => empty($content['value']) ? '' : $content['value'],
+    '#maxlength' => variable_get('nodewords_max_size', 350),
+  );
+}
+
+/**
+ * Set the meta tag content.
+ */
+function nodewords_basic_title_prepare(&$tags, $content, $options) {
+  if (!empty($content['value'])) {
+    $tags['title'] = nodewords_replace_tokens($content['value'], $options);
+  }
+}
+
+/**
+ * Set the form fields used to implement the options for the meta tag.
+ */
 function nodewords_basic_abstract_form(&$form, $content, $options) {
   $form['abstract'] = array(
     '#tree' => TRUE,
