Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Navigation

Mein Blog magenbrot.net



Mail-, Web-, Domainhosting und vieles mehr durch OVTEC Völker IT.

linux:websoftware:drupal:amazon-wunschzettel_in_einem_block_einbinden

Amazon-Wunschzettel in einem Block einbinden

Danke an Gary Arnold für den ursprünglichen Code.

Dazu wird das Amazon-Modul für Drupal benötigt. Es reicht in der Modulverwaltung das Amazon-API-Modul zu aktivieren. Wer möchte kann in den Einstellungen zu dem Amazon-Modul noch seine Affiliate-ID und den Amazon-API-Key hinterlegen, dies ist aber nicht unbedingt notwendig, dem Modul wurde eine funktionierende ID, bzw. Key beigelegt.

Jetzt in der Blockverwaltung einen neuen Block mit folgendem Inhalt anlegen (nicht vergessen den PHP-Parser bei den Eingabeformaten zu aktivieren!):

<?php
$list = '3V4RX81EM9KP';
 
$params = array(
  'ListType' => 'WishList',
  'ListId' => $list,
  'ResponseGroup' => 'ListFull',
  'IsOmitPurchasedItems' => 1,
);
 
$results = amazon_http_request('ListLookup', $params, 'DE');
if (!empty($results->Error)) {
  return;
}
 
$total_items = (int)$results->Lists->List->TotalItems;
$random_item = rand(1, $total_items) - 1;
$page = (int)($random_item / 10) + 1;
$item_on_page = $random_item % 10;
 
$params = array(
  'ListType' => 'WishList',
  'ListId' => $list,
  'ResponseGroup' => 'ListItems',
  'ProductPage' => $page
);
 
$results = amazon_http_request('ListLookup', $params, 'DE');
if (empty($results->Error)) {
  $asin = (string) $results->Lists->List->ListItem[$item_on_page]->Item->ASIN;
  $items = amazon_item_lookup($asin);
  if (is_array($items)) {
    $item = array_pop($items);
    $item[detailpageurl] .= '%26colid='.$list;
    //amazon_item_save($item);
    $markup = theme('amazon_item', $item, 'details');
    print $markup;
  }
}
?>

Der Parameter $list ist durch die ID des eigenen Wunschzettels zu ersetzen. Diesen kann man z.B. aus der URL ziehen, wenn man seinen Wunschzettel bearbeitet.

Leider läßt das Design noch sehr zu wünschen übrig. Ich werd mal sehn, ob man hier noch was verbessern kann.

Diskussion

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
E B R O X
 
linux/websoftware/drupal/amazon-wunschzettel_in_einem_block_einbinden.txt · Zuletzt geändert: 16.04.2015 13:05 (Externe Bearbeitung)