micmania1/silverstripe-nivoslider

此软件包的最新版本(1.0.0)没有提供许可证信息。

Silverstripe的Nivo Slider模块

安装: 25

依赖关系: 0

建议者: 0

安全性: 0

星级: 1

关注者: 3

分支: 4

开放问题: 8

语言:JavaScript

类型:silverstripe-module

1.0.0 2013-05-11 19:20 UTC

This package is auto-updated.

Last update: 2024-08-24 12:28:19 UTC


README

此Silverstripe模块将Nivo Slider完全灵活地引入您的项目。

功能

  • 通过Silverstripe CMS管理多个滑块及其内容。
  • 在4种默认主题中选择,或添加您自己的主题。
  • 完全可自定义,通过CMS编辑所有Nivo jQuery选项

安装

应将此模块放置在您网站的根目录中。

通过Composer

composer require micmania1/silverstripe-nivoslider:1.0.*

通过Git

git clone https://github.com/micmania1/silverstripe-nivoslider.git
cd silverstripe-nivoslider
git checkout 1.0.0

请记住在您的网站上运行 /dev/build?flush=1。

使用

要创建滑块,您可以登录到Silverstripe CMS,然后在左侧导航窗格中点击“Nivo Slides”。

点击“添加Nivo滑块”按钮,这将带您进入一个页面,您可以为此滑块选择标题并添加单个幻灯片。

在高级选项卡中,您可以选择主题并设置Nivo滑块提供的许多其他选项。有关这些选项的更多信息,请参阅Nivo滑块文档

将幻灯片添加到页面

默认情况下,滑块是独立的。要将其添加到页面,提供了NivoSliderSiteTreeExtension和SiteTreeNivoSliderExtension。这两个扩展通过在两个DataObjects之间提供双向has_one链接来相互补充。

以下示例显示了如何将滑块添加到扩展Page的HomePage类中。

YAML示例

---
Only:
  classexists: 'NivoSlider'
  classexists: 'HomePage'
---
HomePage:
  extensions:
    - 'NivoSliderSiteTreeExtension'

NivoSlider:
  extensions:
    - 'SiteTreeNivoSliderExtension'
---

PHP示例

Object::add_extension("HomePage", "NivoSliderSiteTreeExtension");
Object::add_extension("NivoSlider", "SiteTreeNivoSliderExtension");

一旦建立了这种连接(并运行了dev/build?flush=1),您就可以进入您的首页,并从下拉菜单中选择滑块。

当然,您可以创建自己的扩展来替换这些,并且链接不仅限于页面。您可以使用任何DataObject,包括小工具。

模板使用

在模板中使用时,请调用您的has_one关系名称。例如,如果一个页面有一个“NivoSlider”=>“NivoSlider”的has_one关系,您可以使用

$NivoSlider

这将处理整个滑块的渲染。

添加您自己的主题

如果您有要应用的自己的Nivo滑块主题,您需要告诉NivoSlider在哪里查找它。

为此,您需要扩展NivoSliderTheme类。

示例

<?php
class MyNivoSliderTheme extends NivoSliderTheme {
    
    protected $title = "My Custom Theme";
    
    protected $cssClass = "MyCustomTheme";
    
    public function beforeRender() {
        // Require any js/css or do any other prep before rendering
        Require::css("mysite/css/myNivoStyle.css");
    }
}
?>

然后您可以使用 ?flush=1 并从每个滑块的“高级”选项卡中的主题下拉菜单中选择您的主题。