it-swarm.com.de

Ansichtsknoten im Leuchtkasten anzeigen?

Was wäre der beste Weg, um die Knoten aus einer Ansicht in einem Leuchtkasten anzuzeigen, der durch ein einzelnes Bild ausgelöst wird? Die Idee wäre, dass ein schönes Foto auf einer Titelseite gezeigt wird. Wenn Benutzer darauf klicken, wird eine Ansicht in einer Lightbox/Thickbox/Colorbox/* Box geöffnet. Dies zeigt dann alle Knoten in der Ansicht.

Ich schaffe dies derzeit nur für Bilder mit Colorbox, aber das reicht nicht aus, da ich Untertitel usw. anzeigen möchte. Ich möchte die volle Colorbox-Funktionalität verwenden und nicht nur das Bild. Ich habe versucht, einen Iframe zu verwenden. Dies bedeutet jedoch, dass jeder Knoten mit dem vollständigen Site-Thema (Kopfzeile, Logo, Fußzeile usw.) angezeigt wird, was ich nicht tun möchte.

7
Bart Braem

Ich habe in meinem Projekt eine benutzerdefinierte Seitenvorlage und einen zusätzlichen get-Parameter verwendet.

Template.php: (Im aktiven Themenverzeichnis)

function phptemplate_preprocess_page(&$vars){
    if( isset($_GET['ajax']) && $_GET['ajax']=='true' ){
        $vars['template_files'][] = 'page-overajax'; # For Drupal 6
        $vars['theme_hook_suggestions'][] = 'page-overajax'; # For Drupal 7
    }
}

Ich habe dann eine Vorlagendatei (page-overajax.tpl.php) im Themenverzeichnis mit folgendem Inhalt erstellt:

<div id="overlay-content-wrapper">
   <?php print $content; ?>
</div>

Danach (Alle Caches löschen) können Sie einen beliebigen Pfad (Seite, Ansicht, Knoten) mit ?ajax=true Zum Laden an Ihre * Box übergeben, wenn dieser AJAX Inhalt) unterstützt.

Wie bei Fancybox:

$("a.overajax").fancybox({
    'width': 400,
    'height': 400,
    ajax: {
        type     : "GET",
        cache    : false,
        url      : "user/user-posts?ajax=true",
        success: function(data) {
              $.fancybox(data);
        }
    }
});
7
Shoaib Nawaz

Sie können das Modul Colorbox Node verwenden:

Bietet dem Benutzer die Möglichkeit, JEDE Seite in einem Colorbox-Modal ohne Kopf- und Fußzeile anzuzeigen.

Ihr Link sollte folgendermaßen aussehen: href = "Blogs/mein Beispiel? Breite = 600 & Höhe = 600"

2
milkovsky

Für D7 musste ich strengere Namenskonventionen befolgen als in Shuaib Nawaz 'Antwort. Mein Code sieht folgendermaßen aus:

function my_theme_preprocess_page(&$variables, $hook){
    if( isset($_GET['ajax']) && $_GET['ajax']=='true' ){
        $variables['theme_hook_suggestions'][] = 'page__ajax'; 
        // then use page--ajax.tpl.php for page template file.
    }
}

Vielleicht kann OP dies zu den Kommentaren zur akzeptierten Antwort hinzufügen, meine Punktzahl ist zu niedrig.

0
ryrye

Haben Sie das Modul Colorbox-Knoten ausprobiert? Ich denke das ist genau das was du brauchst;)

0
user19544