it-swarm.asia

عرض عقد العرض في العرض المبسط؟

ما هي أفضل طريقة لإظهار العقد من العرض في مربع تكبير الصورة ، يتم تشغيلها بواسطة صورة واحدة؟ الفكرة هي أن يتم عرض صورة جميلة على الصفحة الأولى. عندما ينقر المستخدمون عليه ، يتم فتح طريقة عرض في مربع lightbox/thickbox/colorbox/*. هذا يعرض كل العقد في العرض.

أدير حاليًا إجراء ذلك للصور التي تحتوي على colorbox فقط ، ولكن هذا ليس كافيًا لأنني أرغب في إظهار التسميات التوضيحية وما إلى ذلك. أود استخدام وظيفة Colorbox الكاملة ، بدلاً من الصورة فقط. لقد حاولت استخدام iframe ، ولكن هذا يعني أن كل عقدة تظهر مع موضوع الموقع الكامل (الرأس ، الشعار ، التذييل ، إلخ) وهو ليس ما أريد القيام به.

7
Bart Braem

تمكنت في مشروعي باستخدام قالب صفحة مخصص ومعلمة الحصول الإضافية.

Template.php: (في دليل السمة النشطة)

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
    }
}

ثم قمت بإنشاء ملف قالب (page-overajax.tpl.php) في دليل السمة بالمحتوى التالي:

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

بعد ذلك (محو جميع ذاكرة التخزين المؤقت) يمكنك استخدام أي مسار (صفحة ، عرض ، عقدة) مع ?ajax=true لتمريرها إلى صندوقك * للتحميل إذا كان يدعم المحتوى AJAX content.

كما تستخدم مع 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

يمكنك استخدام عقدة Colorbox الوحدة:

يمنح المستخدم القدرة على عرض أي صفحة داخل مشروط colorbox بدون الرأس والتذييل.

يجب أن يبدو رابطك كما يلي: href = "blogs/my-example؟ width = 600 & height = 600"

2
milkovsky

بالنسبة إلى D7 ، كان علي اتباع اصطلاحات تسمية أكثر صرامة من إجابة شعيب نواز. الرمز الخاص بي يبدو كالتالي:

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.
    }
}

ربما يمكن لـ OP إضافة هذا إلى التعليقات على الإجابة المقبولة ، درجاتي منخفضة جدًا.

0
ryrye

هل جربت عقدة Colorbox الوحدة؟ أعتقد أن هذا هو بالضبط ما تحتاجه ؛)

0
user19544