Is there anyway to include meta tags from Biblio in the header? With integrated metatag module , we can include CCK fields as metatags, but not with biblio fields. This article highlights this issue: http://drupal.org/node/641580

Comments

rjerome’s picture

I could add a hook_int_meta to Biblio which should allow Integrated Metatags and Biblio to work happily together :-)

Ron.

mclaren’s picture

Ron, that would be great! Thanks for your good work!

rjerome’s picture

I notice that you have this listed against 6.x-2.x, was that on purpose? Have you been using that branch?

Ron.

mclaren’s picture

Hi Ron,
That was not on purpose. My mistake! I'm using 1.x!

danepowell’s picture

Subscribing - none of our dozens of publications are being indexed by Google Scholar, and I suspect it's because Biblio does not provide meta tags with publication metadata, as described at http://scholar.google.com/intl/en/scholar/inclusion.html

syka’s picture

Subscribing, the meta tags to allow to index the publications by Google Scholar would be a great thing.

iantresman’s picture

See Google Scholar's meta tags for their description. Unfortunately I've found no way to add them easily, though the Meta tags Node Type module lets you add added meta tags based on content type using Nodewords.

Updated: Looks like the Integrated Metatags module can add these tags.

Updated: Link to Bibliography Module (Biblio)

danepowell’s picture

Just FYI, it seems the Google Scholar is now indexing our publications, using just the Biblio module. Not sure what changed to cause that, and how it affects this issue.

Also, how does the OAI-PMH module play into this issue?

deomurari’s picture

Subscribing, IT will be really great to have this on Biblio........

deomurari’s picture

I tried to use TokenStarter for defining tokens for Biblio module content type...

Here is my content of TokenBiblio module.


<?php


/**
 * @file
 * The Token API module.
 *
 * The Token module provides an API for providing tokens to other modules.
 * Tokens are small bits of text that can be placed into larger documents
 * via simple placeholders, like %site-name or [user].
 *
 * @ingroup token
 */

/**
 * Implementation of hook_token_list().
 */
//Implementation of hook_token_list().
function tokenBIBLIO_token_list($type = 'all') {
	$tokens = array();
	if ($type == 'node'  || $type == 'all') {
		// Node tokens here.
		$tokens['node']['biblio_abst_e'] 	= t("Bibliography: biblio_abst_e");
		$tokens['node']['biblio_accession_number'] 	= t("Bibliography: biblio_accession_number");    		
		$tokens['node']['biblio_auth_address'] 	= t("Bibliography: biblio_auth_address");
		$tokens['node']['biblio_authors'] 	= t("Bibliography: biblio_authors");    
		$tokens['node']['biblio_call_number'] 	= t("Bibliography: biblio_call_number");
		$tokens['node']['biblio_citekey'] 	= t("Bibliography: biblio_citekey");    		
		$tokens['node']['biblio_corp_authors'] 	= t("Bibliography: biblio_corp_authors");
		$tokens['node']['biblio_date'] 	= t("Bibliography: biblio_date");    
		$tokens['node']['biblio_doi'] 	= t("Bibliography: biblio_doi");
		$tokens['node']['biblio_edition'] 	= t("Bibliography: biblio_edition");    		
		$tokens['node']['biblio_isbn'] 	= t("Bibliography: biblio_isbn");
		$tokens['node']['biblio_issn'] 	= t("Bibliography: biblio_issn");    
		$tokens['node']['biblio_issue'] 	= t("Bibliography: biblio_issue");
		$tokens['node']['biblio_keywords'] 	= t("Bibliography: biblio_keywords");    		
		$tokens['node']['biblio_lang'] 	= t("Bibliography: biblio_lang");
		$tokens['node']['biblio_notes'] 	= t("Bibliography: biblio_notes");    
		$tokens['node']['biblio_number'] 	= t("Bibliography: biblio_number");
		$tokens['node']['biblio_number_of_volumes'] 	= t("Bibliography: biblio_number_of_volumes");    		
		$tokens['node']['biblio_pages'] 	= t("Bibliography: biblio_pages");
		$tokens['node']['biblio_publisher'] 	= t("Bibliography: biblio_publisher");
		$tokens['node']['biblio_research_notes'] 	= t("Bibliography: biblio_research_notes");
		$tokens['node']['biblio_secondary_authors'] 	= t("Bibliography: biblio_secondary_authors");
		$tokens['node']['biblio_secondary_title'] 	= t("Bibliography: biblio_secondary_title");
		$tokens['node']['biblio_short_title'] 	= t("Bibliography: biblio_short_title");
		$tokens['node']['biblio_subsidiary_authors'] 	= t("Bibliography: biblio_subsidiary_authors");
		$tokens['node']['biblio_tertiary_authors'] 	= t("Bibliography: biblio_tertiary_authors");
		$tokens['node']['biblio_tertiary_title'] 	= t("Bibliography: biblio_tertiary_title");
		$tokens['node']['biblio_type_of_work'] 	= t("Bibliography: biblio_type_of_work");
		$tokens['node']['biblio_url'] 	= t("Bibliography: biblio_url");
		$tokens['node']['biblio_volume'] 	= t("Bibliography: biblio_volume");
		$tokens['node']['biblio_year'] 	= t("Bibliography: biblio_year");   
		return $tokens;
	} 
}

/**
 * Implementation of hook_token_values().
 */
function tokenBIBLIO_token_values($type, $object = NULL, $options = array()) {
	$values = array();
	switch ($type) {
             case ($type == 'node'  || $type == 'all'):
		// Node tokens here.
		if ($object->type == 'biblio') {
		$values['biblio_abst_e'] = check_plain($object->biblio_abst_e);
		$values['biblio_accession_number'] = check_plain($object->biblio_accession_number);
		$values['biblio_auth_address'] = check_plain($object->biblio_auth_address);
		$tauth = check_plain($object->biblio_authors);
		$aauutthh = implode(",", $tauth);
		$values['biblio_authors'] = $aauutthh;
		$values['biblio_call_number'] = check_plain($object->biblio_call_number);
		$values['biblio_citekey'] = check_plain($object->biblio_citekey);
		$values['biblio_corp_authors'] = check_plain($object->biblio_corp_authors);
		$values['biblio_date'] = check_plain($object->biblio_date);
		$values['biblio_doi'] = check_plain($object->biblio_doi);
		$values['biblio_edition'] = check_plain($object->biblio_edition);
		$values['biblio_isbn'] = check_plain($object->biblio_isbn);
		$values['biblio_issn'] = check_plain($object->biblio_issn);
		$values['biblio_issue'] = check_plain($object->biblio_issue);
		$values['biblio_keywords'] = check_plain($object->biblio_keywords);
		$values['biblio_lang'] = check_plain($object->biblio_lang);
		$values['biblio_notes'] = check_plain($object->biblio_notes);
		$values['biblio_number'] = check_plain($object->biblio_number);
		$values['biblio_number_of_volumes'] = check_plain($object->biblio_number_of_volumes);
		$values['biblio_pages'] = check_plain($object->biblio_pages);
		$values['biblio_publisher'] = check_plain($object->biblio_publisher);
		$values['biblio_research_notes'] = check_plain($object->biblio_research_notes);
		$values['biblio_secondary_authors'] = check_plain($object->biblio_secondary_authors);
		$values['biblio_secondary_title'] = check_plain($object->biblio_secondary_title);
		$values['biblio_short_title'] = check_plain($object->biblio_short_title);
		$values['biblio_subsidiary_authors'] = check_plain($object->biblio_subsidiary_authors);
		$values['biblio_tertiary_authors'] = check_plain($object->biblio_tertiary_authors);
		$values['biblio_tertiary_title'] = check_plain($object->biblio_tertiary_title);
		$values['biblio_type_of_work'] = check_plain($object->biblio_type_of_work);
		$values['biblio_url'] = check_plain($object->biblio_url);
		$values['biblio_volume'] = check_plain($object->biblio_volume);
		$values['biblio_year'] = check_plain($object->biblio_year);
		return $values;
	}
	break;
  }
}

unfortunately it seems that Token Authors returns array in stead of string. so the meta tag contains simply Array.
Can someone help me unfolding this issue so I can have author list as coma seperated values.....

I tried implode() also but it also give error..

regards

deomurari’s picture

I tried to use TokenStarter for defining tokens for Biblio module content type...

Here is my content of TokenBiblio module.


<?php


/**
 * @file
 * The Token API module.
 *
 * The Token module provides an API for providing tokens to other modules.
 * Tokens are small bits of text that can be placed into larger documents
 * via simple placeholders, like %site-name or [user].
 *
 * @ingroup token
 */

/**
 * Implementation of hook_token_list().
 */
//Implementation of hook_token_list().
function tokenBIBLIO_token_list($type = 'all') {
	$tokens = array();
	if ($type == 'node'  || $type == 'all') {
		// Node tokens here.
		$tokens['node']['biblio_abst_e'] 	= t("Bibliography: biblio_abst_e");
		$tokens['node']['biblio_accession_number'] 	= t("Bibliography: biblio_accession_number");    		
		$tokens['node']['biblio_auth_address'] 	= t("Bibliography: biblio_auth_address");
		$tokens['node']['biblio_authors'] 	= t("Bibliography: biblio_authors");    
		$tokens['node']['biblio_call_number'] 	= t("Bibliography: biblio_call_number");
		$tokens['node']['biblio_citekey'] 	= t("Bibliography: biblio_citekey");    		
		$tokens['node']['biblio_corp_authors'] 	= t("Bibliography: biblio_corp_authors");
		$tokens['node']['biblio_date'] 	= t("Bibliography: biblio_date");    
		$tokens['node']['biblio_doi'] 	= t("Bibliography: biblio_doi");
		$tokens['node']['biblio_edition'] 	= t("Bibliography: biblio_edition");    		
		$tokens['node']['biblio_isbn'] 	= t("Bibliography: biblio_isbn");
		$tokens['node']['biblio_issn'] 	= t("Bibliography: biblio_issn");    
		$tokens['node']['biblio_issue'] 	= t("Bibliography: biblio_issue");
		$tokens['node']['biblio_keywords'] 	= t("Bibliography: biblio_keywords");    		
		$tokens['node']['biblio_lang'] 	= t("Bibliography: biblio_lang");
		$tokens['node']['biblio_notes'] 	= t("Bibliography: biblio_notes");    
		$tokens['node']['biblio_number'] 	= t("Bibliography: biblio_number");
		$tokens['node']['biblio_number_of_volumes'] 	= t("Bibliography: biblio_number_of_volumes");    		
		$tokens['node']['biblio_pages'] 	= t("Bibliography: biblio_pages");
		$tokens['node']['biblio_publisher'] 	= t("Bibliography: biblio_publisher");
		$tokens['node']['biblio_research_notes'] 	= t("Bibliography: biblio_research_notes");
		$tokens['node']['biblio_secondary_authors'] 	= t("Bibliography: biblio_secondary_authors");
		$tokens['node']['biblio_secondary_title'] 	= t("Bibliography: biblio_secondary_title");
		$tokens['node']['biblio_short_title'] 	= t("Bibliography: biblio_short_title");
		$tokens['node']['biblio_subsidiary_authors'] 	= t("Bibliography: biblio_subsidiary_authors");
		$tokens['node']['biblio_tertiary_authors'] 	= t("Bibliography: biblio_tertiary_authors");
		$tokens['node']['biblio_tertiary_title'] 	= t("Bibliography: biblio_tertiary_title");
		$tokens['node']['biblio_type_of_work'] 	= t("Bibliography: biblio_type_of_work");
		$tokens['node']['biblio_url'] 	= t("Bibliography: biblio_url");
		$tokens['node']['biblio_volume'] 	= t("Bibliography: biblio_volume");
		$tokens['node']['biblio_year'] 	= t("Bibliography: biblio_year");   
		return $tokens;
	} 
}

/**
 * Implementation of hook_token_values().
 */
function tokenBIBLIO_token_values($type, $object = NULL, $options = array()) {
	$values = array();
	switch ($type) {
             case ($type == 'node'  || $type == 'all'):
		// Node tokens here.
		if ($object->type == 'biblio') {
		$values['biblio_abst_e'] = check_plain($object->biblio_abst_e);
		$values['biblio_accession_number'] = check_plain($object->biblio_accession_number);
		$values['biblio_auth_address'] = check_plain($object->biblio_auth_address);
		$tauth = check_plain($object->biblio_authors);
		$aauutthh = implode(",", $tauth);
		$values['biblio_authors'] = $aauutthh;
		$values['biblio_call_number'] = check_plain($object->biblio_call_number);
		$values['biblio_citekey'] = check_plain($object->biblio_citekey);
		$values['biblio_corp_authors'] = check_plain($object->biblio_corp_authors);
		$values['biblio_date'] = check_plain($object->biblio_date);
		$values['biblio_doi'] = check_plain($object->biblio_doi);
		$values['biblio_edition'] = check_plain($object->biblio_edition);
		$values['biblio_isbn'] = check_plain($object->biblio_isbn);
		$values['biblio_issn'] = check_plain($object->biblio_issn);
		$values['biblio_issue'] = check_plain($object->biblio_issue);
		$values['biblio_keywords'] = check_plain($object->biblio_keywords);
		$values['biblio_lang'] = check_plain($object->biblio_lang);
		$values['biblio_notes'] = check_plain($object->biblio_notes);
		$values['biblio_number'] = check_plain($object->biblio_number);
		$values['biblio_number_of_volumes'] = check_plain($object->biblio_number_of_volumes);
		$values['biblio_pages'] = check_plain($object->biblio_pages);
		$values['biblio_publisher'] = check_plain($object->biblio_publisher);
		$values['biblio_research_notes'] = check_plain($object->biblio_research_notes);
		$values['biblio_secondary_authors'] = check_plain($object->biblio_secondary_authors);
		$values['biblio_secondary_title'] = check_plain($object->biblio_secondary_title);
		$values['biblio_short_title'] = check_plain($object->biblio_short_title);
		$values['biblio_subsidiary_authors'] = check_plain($object->biblio_subsidiary_authors);
		$values['biblio_tertiary_authors'] = check_plain($object->biblio_tertiary_authors);
		$values['biblio_tertiary_title'] = check_plain($object->biblio_tertiary_title);
		$values['biblio_type_of_work'] = check_plain($object->biblio_type_of_work);
		$values['biblio_url'] = check_plain($object->biblio_url);
		$values['biblio_volume'] = check_plain($object->biblio_volume);
		$values['biblio_year'] = check_plain($object->biblio_year);
		return $values;
	}
	break;
  }
}

unfortunately it seems that Token Authors returns array in stead of string. so the meta tag contains simply Array.
Can someone help me unfolding this issue so I can have author list as coma seperated values.....

I tried implode() also but it also give error..

regards

deomurari’s picture

It gives this result in meta tags where Array should be list of authors

<meta name="citation_author" content="Array" /> 
<meta name="dc.publisher" content="Array" /> 
<meta name="author" content="Array" /> 

It also shows warning on the page too...

warning: implode() [function.implode]: Invalid arguments passed in D:\xampp\htdocs\indexing\sites\all\modules\token\tokenBIBLIO.module on line 71.
warning: htmlspecialchars() expects parameter 1 to be string, array given in D:\xampp\htdocs\indexing\includes\bootstrap.inc on line 856.

Regards

liam morland’s picture

Issue summary: View changes
Status: Active » Closed (outdated)

This version is no longer maintained. If this issue is still relevant to the Drupal 7 version, please re-open and provide details.