如何自定义Drupal的ImageZoom模块

时间:2016-11-28 16:50:44

标签: image drupal-7 drupal-modules image-zoom

我使用的是版本7.x-2.0-beta2

模块中包含 imagezoom.api.php

据我理解;这是您将任何customisations应用于图像缩放功能的文件。 我假设您必须将此文件复制到您自己的站点特定模板目录中,以防止在任何模块更新期间被覆盖。

原来是在 sites / all / modules / imagezoom / imagezoom.api.php

我已经拍了一份副本并将其移至 sites / all / themes / [my_site_name] /templates/system/imagezoom.api.php

但我对此文件所做的更改未反映在网站上。 (我已尝试在两个路径位置进行更改)

此文件中的功能只是:

function hook_imagezoom_settings_alter(&$settings, $context) {
  // Change the border color to red
  $settings['borderColour'] = '#f00';
  $settings['responsive'] = TRUE;
}

有谁能告诉我这个文件必须放在哪里才能让模块注意它?

1 个答案:

答案 0 :(得分:1)

你需要create a custom module,然后在mymodule.module文件中创建一个替换钩子函数的函数,如下所示:

function mymodule_imagezoom_settings_alter(&$settings, $context) {
  // Change the border color to red
  $settings['borderColour'] = '#f00';
  $settings['responsive'] = TRUE;
}

从上面的函数中替换你想要的任何东西,清除你的缓存,你应该好好去。

在我上面提供的链接中,深入了解" Implementing your own hook"如果你还有问题的话。

一旦钩子工作,您可以使用dpm函数查看页面可以看到的当前值。需要启用devel模块才能使其正常工作。在您的情况下,您可能想要这样做:

dpm($settings);

并从那里修改值。