FeedAPI links in view don't register a vote
| Project: | External Link Popularity |
| Version: | 6.x-1.4 |
| Component: | Miscellaneous |
| Category: | support request |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | active |
Jump to:
I'm using FeedAPI to aggregate rss content onto my site. I'm trying to use External Link Popularity to sort the content with views, but I'm running into a hiccup.
FeedAPI adds a link to the "Original Article" in the 'links section' of a node (down by add a comment). External Link Popularity correctly registers a vote for the node if this "Original Article" link is clicked.
Now, if I create a view, FeedAPI provides a handful of fields that can be included in the view. The "FeedAPI Item: Title with link to original URL" and "FeedAPI Item: URL" fields provide links to the original article. However, when I click on those links a vote does not register.
Is there a setting or another module that I'm missing to get this working? Or is this not a supported feature?

#1
Oh, this is with Drupal 6.9, FeedAPI 6.x-1.5, Views 6.x-2.2, VotingAPI 6.x-2.0-rc2, External Link Popularity 6.x-1.4
#2
Hi:
This is strange. ELP uses a regular expression to pick out the external links. If it finds a link in one place, it should find it in every place. I'll try to duplicate the bug on my dev server. I'll let you know what I find.
Thanks for the much needed extra information.
--sicjoy
#3
I just thought of something:
Click tracking can be enabled / disabled on a node type by node type basis. See admin/settings/pop_links under the Node types section.
I'm not sure if the view has a different node type than the Feed API's node. If it does, and click tracking is not enabled for the view node type, that would explain the problem.
This is just a guess on my part, however. Can you confirm that Views is not creating a new node type? If it is, make sure that you have enabled click tracking for the Views node.
Cheers,
sicjoy
#4
I've named my feed item node type "News". I have tracking enabled for this "News" type. I tried enabling tracking for the "Feed" node type, but that didn't seem to make a difference (I didn't really expect that it would).
The only Node types that are available for tracking at admin/settings/pop_links are...
Feed - FeedAPI feed node type
News - FeedAPI feed item node type
Page - Default Drupal node type
Story - Default Drupal node type
The view type that I'm using is Node. I don't know how to tell if Views is creating a new node type or not. If it is, it's not showing up on admin/content/types.
Here's an export of the view that I'm using.
$view = new view;$view->name = 'Test';
$view->description = 'test';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Test', 'default');
$handler->override_option('relationships', array(
'votingapi_cache' => array(
'label' => 'Voting results',
'required' => 0,
'votingapi' => array(
'value_type' => '',
'tag' => '',
'function' => '',
),
'id' => 'votingapi_cache',
'table' => 'node',
'field' => 'votingapi_cache',
'relationship' => 'none',
),
));
$handler->override_option('fields', array(
'item_title_url' => array(
'label' => '',
'exclude' => 0,
'id' => 'item_title_url',
'table' => 'feedapi_node_item',
'field' => 'item_title_url',
'relationship' => 'none',
),
'value' => array(
'label' => 'Value',
'set_precision' => FALSE,
'precision' => 0,
'decimal' => '.',
'separator' => ',',
'prefix' => '',
'suffix' => '',
'appearance' => NULL,
'exclude' => 0,
'id' => 'value',
'table' => 'votingapi_cache',
'field' => 'value',
'relationship' => 'votingapi_cache',
),
));
$handler->override_option('sorts', array(
'created' => array(
'order' => 'DESC',
'granularity' => 'second',
'id' => 'created',
'table' => 'node',
'field' => 'created',
'relationship' => 'none',
),
));
$handler->override_option('filters', array(
'type' => array(
'operator' => 'in',
'value' => array(
'news' => 'news',
),
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'type',
'table' => 'node',
'field' => 'type',
'relationship' => 'none',
),
'status' => array(
'operator' => '=',
'value' => '1',
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'status',
'table' => 'node',
'field' => 'status',
'relationship' => 'none',
),
));
$handler->override_option('access', array(
'type' => 'none',
));
$handler->override_option('distinct', 1);
$handler = $view->new_display('page', 'Page', 'page_1');
$handler->override_option('path', 'test');
$handler->override_option('menu', array(
'type' => 'normal',
'title' => 'Test',
'weight' => '0',
'name' => 'primary-links',
));
$handler->override_option('tab_options', array(
'type' => 'none',
'title' => '',
'weight' => 0,
));
I hope that helps.
If you need any more information let me know and I can post it.
#5
Fixed a typo in title