Flag Modul integration in anderes Modul
am 27.04.2011 - 20:25 Uhr in
Hi, Ich bin jetzt dabei das Flagmodul in meine Seite zu integrieren, da gibt es einen codeschnipsel mit dem man den "Bookmark-Link" dann an einer beliebigen Stelle im Code auf den Standardseiten wie page.tpl Integrieren kann, soweit klappt alles ganz gut, jetzt zu meinem problem: Ich möchte diesen Codeschnipsel vom Modul:
<?php
print flag_create_link('bookmarks', $node->nid);
?>
In ein anderes Modul integrieren, wenn Ich das mache bekomme ich beim klicken auf den Bookmarklink dann aber immer eine Alertbox mit dem Inhalt: "An HTTP error 404 occurred.
http://MEINEDOMAIN/flag/flag/bookmarks/?destination=node/9&token=uV1O-KznB5_6iIokf90eO0xP5YhpMejle9dg6ayhH2s"
Flagmodul Seite (Hier wird das eigene integrieren beschrieben, genauso habe ich das auch gemacht, nur eben nicht in der node.tpl oder page.tpl sondern in einem anderen modul)
Weiß jemand, was ich tun muss, um den Bookmarkbutton des Flag moduls in den Code eines anderen moduls zu integrieren?
Vielen Dank schonmal
Manuel
- Anmelden oder Registrieren um Kommentare zu schreiben
Naja, in einem Modul wird
am 27.04.2011 - 20:35 Uhr
Naja,
in einem Modul wird (und sollte auch nicht) direkt ein Output "geprinted" werden, wie Du es oben machst. Ich vermute aber eher mal, da es sich um einen Error 404 handelt, dass es an der URL liegt, bei Dir steht zweilam flag in der url, kann mir nicht vorstellen dass es so sein soll.
Aber etwas mehr von Deinem Code könnte da helfen!!!
gruss
drupalino
Hi, Danke für deine schnelle
am 27.04.2011 - 20:40 Uhr
Hi, Danke für deine schnelle Antwort, hier ist mal der Code vom Modul, in welches ich integrieren wollte (Galleryformatter) das ist ne slideshow für Bilder :)
<?php
// $Id: galleryformatter.tpl.php,v 1.4.2.2 2011/01/30 16:32:09 manuelgarcia Exp $
/**
* @file
* Template file for the galleryformatter default formatter
*/
/**
* Only edit this file for switching order of the slides info, adding classes or other minor changes within the overall html structure.
* KEEP the original html structure or you'll run into problems with the JS.
* IDs on the slides and the hash for the thumb links MUST be there for the gallery to function.
* width and height must be set inline for gallery-slides container, the gallery-thumbs, and the li's inside it.
*
* Available variables:
*
* $dimensions - Array containing both slides and thumbs dimensions
* $gallery_slides - Array containing all slide images, a link to the original and its sanatized title & description ready to print
* $thumbs - Array containing all thumbnail images ready to print
* $link_to_full - BOOLEAN wether or not we are linking slides to original images
*/
?>
<div class="galleryformatter galleryview galleryformatter-<?php print $settings['style'] ?>">
<div class="gallery-slides" style="width: <?php print $dimensions['slides']['width']; ?>px; height: <?php print $dimensions['slides']['height']; ?>px;">
<div class="gallery-frame">
<ul>
<?php foreach ($slides as $id => $data): ?>
<li class="gallery-slide" id="<?php print $data['hash_id']; ?>">
<div style="position: absolute;"><?php print flag_create_link('bookmarks', $node->nid); ?></div> /* ###### HIER SOLL SPÄTER DER BOOKMARK LINK ERSCHEINEN ######## */
<?php print $data['image']; ?>
<?php if (!empty($data['title'])): ?>
<div class="panel-overlay">
<div class="overlay-inner">
<?php if ($data['title']): ?><h3><?php print $data['title']; ?></h3><?php endif; ?>
</div>
</div>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>
</div>
</div>
<?php if(!empty($thumbs)): ?>
<div class="gallery-thumbs" style="width: <?php print $dimensions['slides']['width']; ?>px;">
<div class="wrapper">
<ul>
<?php foreach ($thumbs as $id => $data): ?>
<li class="slide-<?php print $id; ?>" style="width: <?php print $dimensions['thumbs']['width']; ?>px;"><a href="#<?php print $data['hash_id']; ?>"><?php print $data['image']; ?></a></li>
<?php endforeach; ?>
</ul>
</div>
</div>
<?php endif; ?>
</div>
Kann hier niemand
am 29.04.2011 - 17:53 Uhr
Kann hier niemand weiterhelfen?
Du versuchst einen Link zu
am 29.04.2011 - 19:18 Uhr
Du versuchst einen Link zu erstellen und benutzt dabei Node-ID. Wo soll die denn her kommen? Du mußt selber sichstellen, daß dann, wenn der Link erzeugt werden soll, die Variable $node gesetzt ist. An manchen Stellen in der Drupal Umgebung ist ja nicht mal ein Node eindeutig oder überhaupt defniert.
Wenn ich mir Deinen Code ansehe, handelt es sich um einen View und gerade da ist der Node zumindest nicht eindeutig und die Variable definitiv nicht definiert. Wie soll also der Link gebildet werden können, damit ein passendes Ergebnis herauskommt?
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
So, habe mir aus einem
am 01.05.2011 - 00:58 Uhr
So, habe mir aus einem anderen Forum eine Zeile gesucht, mit der man die Node ID übergibt:
if ( arg(0) == 'node' && is_numeric(arg(1)) && ! arg(2) ) {$node = node_load(arg(1));}
Bei mir funktioniert es so.
Da Du ja nur die Node-ID
am 01.05.2011 - 09:22 Uhr
Da Du ja nur die Node-ID brauchst, ist node_load unnötig. Nach Deiner Logik ist arg(1) die Node-ID. Dann kannst Du das auch direkt einsetzen an Stelle von $node -> nid.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *