我運行一個WordPress網站,我已經安裝了它的主題調用特定的滑塊,它帶有其顯示在主頁的nivoSlider。現在,我可以通過登錄WP儀表板並導航到主題選項面板來選擇要在主頁上顯示的滑塊。從那裏,我可以從下拉列表中選擇要在主頁上顯示哪個滑塊(隨着我創建更多滑塊,列表不斷填充)。下面是其回聲一節「滑塊」在主題選項面板中的代碼:直接從代碼
//------------------------------------------------------------------------------
// SLIDER
//------------------------------------------------------------------------------
$options[] = array("name" => __('SLIDER','gxg_textdomain'),
"type" => "heading",
"img" => "/includes/admin/images/s.png");
$options[] = array("name" => __('Set up your slider','gxg_textdomain'),
"type" => "info");
$options[] = array("name" => __('Show Slider on Homepage','gxg_textdomain'),
"id" => $shortname."_slider",
"std" => "1",
"type" => "checkbox");
$options[] = array("name" => __('Select a Slider','gxg_textdomain'),
"desc" => __('After you have created a slider, you can select it here.','gxg_textdomain'),
"id" => $shortname."_sliderimages",
"type" => "select",
"options" => $options_slides);
這是Echo的主頁上的滑塊header.php文件中的代碼:
<?php get_template_part('slider'); ?>
現在,如果我將上面的代碼放在任何模板文件中以顯示該特定模板上的滑塊,則顯示的唯一滑塊是從主題選項面板中選擇的滑塊。下面是這是slider.php文件中的代碼:
<div id="slider" class="nivoSlider">
<?php
if (of_get_option('gg_slider') && of_get_option('gg_sliderimages')) {
global $wpdb, $post;
$slider = of_get_option('gg_sliderimages');
$meta = get_post_meta($slider, 'gxg_slider_images', false);
if (!is_array($meta))
$meta = (array) $meta;
if (!empty($meta)) {
$meta = implode(',', $meta);
$images = $wpdb->get_col("
SELECT ID FROM $wpdb->posts
WHERE post_type = 'attachment'
AND ID IN ($meta)
ORDER BY menu_order ASC
");
foreach ($images as $att) {
// Get image's source
$src = wp_get_attachment_image_src($att, 'full');
$src = $src[0];
$caption = get_post_meta($att , '_slidercaption', true);
$caption = htmlspecialchars($caption, ENT_QUOTES);
$cf = get_post_meta($att , '_sliderurl', true);
// Show image
if ($cf) {
echo "<a href='$cf'><img src='{$src}' alt='' title='$caption' /></a>";
} else {
echo "<img src='{$src}' alt='' title='$caption' />";
}
}
}
}
?>
</div><!-- .slider-->
我基本上想要做的是,我要修改的文件slider.php以這樣的方式,我可以直接輸入任一的ID滑塊或滑塊的蛞蝓(該slider.php文件中),因此,它的回顯出來,無論哪個滑塊我在主題選項面板中所選擇的。據我瞭解,這可能是這是基於我在主題選項面板中選擇選擇滑塊代碼:
$slider = of_get_option('gg_sliderimages');
而不是「of_get_option('gg_sliderimages')
」在上面的代碼,我想知道是否有什麼辦法,我可以輸入我想要顯示的滑塊的ID/slug。
期待的解決方案。謝謝。