logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动

Drupal 主题化 第 6 课:Views Slideshow 与 jCarousel 的主题化

14/10/2025, by Ivan

在本视频中,我将为 Views Slideshow 进行主题化,重写几个模板并集成 jCarousel 插件,用于对幻灯片分页器(pager)进行美化。

使用的模块:

Views Slideshow - http://drupal.org/project/views_slideshow

插件:

jQuery jCarousel - http://sorgalla.com/projects/jcarousel/

用于运行 jCarousel 的代码:

Drupal 主题化:Webform 模块通知邮件模板

14/10/2025, by Ivan

我们通过 CCKTaxonomyWebform 模块创建的目录,可以在下单后通过电子邮件通知客户和网站管理员(经理)。然而,目前发送给经理的邮件中只包含商品名称、数量和客户信息。我认为,如果邮件中能够直接包含所订购商品的链接,将会更加方便。

当前下单后发送到邮箱的邮件内容如下:

提交时间:星期二,2010 年 11 月 16 日 - 15:56
提交者:用户 Admin

表单内容:
名称:彩色盘子
数量:1
E-mail: levmyshkin2@mail.ru
地址:鄂木斯克市
备注与偏好:
可在此处查看提交内容:
http://drupal/node/14/submission/1

可以在 Webform 的设置界面中配置邮件模板:

在 Drupal 7 中创建幻灯片(slideshow)和 jQuery 轮播(carousel)。第 1 部分

14/10/2025, by Ivan

在网站开发中,我们经常希望为页面增添一些亮点,使网站更加生动。用 Drupal 创建的网站在初始安装后通常显得比较静态、普通,而我们希望它看起来更有个性、更具动感、更鲜明、更“活”。为此,我们可以添加下拉菜单、动态更新的页面,或者在网站头部放置一个轮播横幅(banner)。

掌握 CSS 是非常有帮助的,因为借助它我们可以使网站具有独特的风格,改变配色方案。当然,即使使用默认模板,我们仍然可以让网站变得更吸引人——虽然未必完美,但也是一个不错的开始。让我们从制作横幅开始。

以前,大多数横幅都是通过 .gif 图像实现的,这类图片可以包含多个帧;或者使用 Flash 横幅。制作 GIF 动画较为繁琐,而 Flash 虽然效果更好,但也有明显缺点,比如对系统资源的高消耗。

也可以使用 JavaScript 编写横幅效果,但那需要更多的时间和对语言的掌握。自从出现了 JavaScript 框架 jQuery,这一切变得简单许多——现在可以快速、高效地创建动画效果,而且无需深入掌握 JavaScript。

下面是我们将要继续改进的网站:

在 Drupal 7 中创建幻灯片(slideshow)和 jQuery 轮播(carousel)。第 2 部分

14/10/2025, by Ivan

在上一部分课程中,我们已经创建了一个幻灯片(slideshow)。我使用它来展示组织的员工,而您也可以将其用作网站的横幅(banner)。不过,这种默认的方案还不够理想——我希望为网站添加“上一张”和“下一张”的切换按钮。与普通的文本或数字分页器相比,这样的按钮看起来更加美观。

提醒一下,我们已经安装了 ViewsViews_slideshow 模块。

接下来,我附上了几种箭头样式,我们将把它们放入我们的幻灯片中。首先,添加一个文本切换器(pager)。

Drupal views

page-content-type.tpl.php —— 针对特定内容类型的独立模板

14/10/2025, by Ivan

您可能已经多次为自己的节点创建单独模板,例如通过 node-content-type.tpl.php 来重写输出。

有时这样就足够了,但有时需要为特定的内容类型创建独立的页面模板。不幸的是,在 Drupal 6 中,无法直接实现这一点,除非编写额外的代码。为了让我们新的内容类型模板 page-content-type.tpl.php 生效,请在 template.php 文件中添加以下代码:

function phptemplate_preprocess_page(&$vars) {
  if (isset($vars['node'])) {
    $vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']->type); 
  } 
}

现在,您可以为特定的内容类型创建独立模板,例如 page-news.tpl.php(其中 news 是新闻内容类型的机器名称)。

删除或重写默认的 CSS 文件

14/10/2025, by Ivan

有时我们需要修改或删除 Drupal 的默认 CSS 文件,例如:system.css、defaults.css 或 system-menus.css。虽然我们可以直接修改这些文件,但在更新 Drupal 时,很容易忘记曾经改动过它们,从而被新版本覆盖。为了避免这种情况,可以将这些文件从 Drupal 输出的 CSS 列表中排除。如果其中某些样式仍然需要使用,可以将它们复制到主题的 style.css 文件中进行修改。这样可以防止自定义样式被意外删除。

首先,在主题目录中创建 template.php 文件(如果已经存在则直接编辑),并添加以下代码:

Views 主题化:修改 view.tpl.php 模板(字段、行、区块、页面),并集成 jQuery 插件 EasySlider

14/10/2025, by Ivan

在本文中,我们将了解 Drupal 的查询构建器 —— 模块 Views (http://drupal.org/project/views)。Views 允许以可视化方式输出各种内容类型的字段、评论、分类术语、用户信息以及其他来自数据库的数据。该模块配备了图形化界面,可通过鼠标轻松创建数据库查询。

注意! 如果您希望在一小时内立即使用 EasySlider,我强烈建议直接使用对应模块。本文主要用于讲解 Views 模板结构及其主题化(theming)原理。稍后若要自定义 EasySlider 的外观,还需修改 CSS。

当我们配置好所需字段后,需要按照自己的要求排版。这可以通过模板文件实现。默认情况下,这些模板位于 theme 文件夹中。

使用 Sassy 模块在 Drupal 中快速集成 SCSS(SASS)

14/10/2025, by Ivan

SASS/SCSS 早已成为编写 CSS 代码的标准。如果您还没有在自己的网站中使用它,那么现在正是时候。通过 Sassy 模块可以非常快速地连接 SCSS,而且即使在共享主机(shared hosting)上也能工作,因为 CSS 文件的编译是通过 PHP 库完成的。

我们开始吧。我这里有一个带有 Zen 主题的干净 Drupal。首先需要安装 Sassy 模块:

https://www.drupal.org/project/sassy

Sassy 模块需要 Prepro 模块来编译 CSS:

https://www.drupal.org/project/prepro

还需要安装 Libraries API 模块,用于连接 Sassy 所需的库: