【问题标题】:Modifying and Existing Drupal Theme修改和现有 Drupal 主题
【发布时间】:2018-04-17 02:21:09
【问题描述】:

我使用的主题有一个滑块 - 一个自动更改图像的面板以显示用户可以选择的主题 - 但它只显示几张幻灯片。我想把它扩展到十几张幻灯片。我进行了简单的文本搜索,以确定主题中的哪些文件是使用代码文件为滑块提供功能的。那是容易的部分。我能够将代码从几张幻灯片扩展到 12 张幻灯片。

现在是更困难和隐藏的部分。正如我所看到的,每张幻灯片都有两个未硬编码的部分。首先,每张幻灯片都有一个标题——文本描述。其次,每张幻灯片都有一个与之关联的 URL,如果用户单击幻灯片,浏览器就会转到该 URL。据我所知,这两件事在任何 PHP 或其他文件中都没有硬编码。它们可以由管理员在 Drupal 后端管理设置中进行编辑。

所以我假设这些字段以某种方式设置并保留在数据库中。但我在下载的数据库副本上进行了搜索,但没有找到该文本。

请指教。我还需要做哪些额外的工作才能完成这项任务?

我想我可以继续前进。显然,这些数据存储在某个地方。也许出于安全原因,它们以加密形式存储在数据库中。我可以对站点主题文件进行 FTP 上传。但是然后呢?我要卸载主题然后重新安装吗?我只是停用它然后重新激活它吗?如何使我的代码更改生效?

主题被称为“impact_theme”,据我所知,它的所有代码都驻留在其中

网站\所有\主题\impact_theme

主题的 README.txt 文件是:

About Impact Theme
====================
Impact Theme is a Drupal 7 theme. The theme is not dependent on any
core theme. Its very light weight for fast loading with modern look.
  Simple and clean design
  Drupal standards compliant
  Implementation of a JS Slideshow
  Multi-level drop-down menus
  Footer with 4 regions
  A total of 10 regions
  Compatible and tested on IE7, IE8, IE9+, Opera, Firefox, Chrome browsers

Browser compatibility:
=====================
The theme has been tested on following browsers. IE7+, Firefox, Google Chrome, Opera.

Drupal compatibility:
=====================
This theme is compatible with Drupal 7.x.x

Developed by
============
www.devsaran.com

Slideshow photos by http://www.flickr.com/photos/68666702@N00/

Help and Support Us
=====================
Please consider a small donation
Paypal ID : donation@devsaran.com

================================================ ==============================

我根据这个页面做了一个子主题:https://www.drupal.org/docs/7/theming/creating-a-sub-theme

我登录到管理仪表板并将子主题设为默认主题。

然后网站立即崩溃,除了“HTTP ERROR 500”之外我什么都看不到。

你觉得我现在应该怎么做?

为了完整起见,我将在此处列出我在将修改与原始主题进行比较时制作的屏幕截图。

我在想我现在应该做的是尝试退后一步,看看我是否可以缩小网站崩溃的范围。但为了做到这一点,我想知道仅仅修改文件是否有好处。我的意思是,子主题已经设置为默认主题。如果无法登录管理仪表板,如何撤消该操作?

【问题讨论】:

  • 我建议不要一次做所有事情,首先检查您使用的主题是否包含文档,也许您不需要编辑执行滑块的实际 PHP 文件,也许您需要更改管理面板中的一个简单设置,也许有“要显示的幻灯片数量”之类的设置,然后从那里更改

标签: php css drupal drupal-theming drupal-themes


【解决方案1】:

首先,幻灯片存储在主题设置中,因此您应该转到外观 -> 您的主题 -> 设置来编辑它们。然而,这不是存储不应该具有确定数量值的变量的好方法。幻灯片也比主题设置更多的网站内容。

我会定义名为“幻灯片”或其他内容的新内容类型,添加一张幻灯片所需的所有值(图片字段、描述、链接......)并使用视图收集这些值 - 循环它们。这样您就可以拥有任意数量的幻灯片。您还可以添加一些用于订购幻灯片等的字段。 另外,我不会直接使用图片字段(显示管理员上传的图像),但我会为幻灯片添加图像样式,以将该图像缩放到适当的尺寸。这让管理员的生活变得更加轻松——他不必使用一些图像编辑工具来手动缩放每个图像。 这是我的建议——我会做什么。

其次,网站是由文件和数据库“组成”的,因此它显示的任何内容都必须属于这两个部分之一。

第三,从继承它们开始,看看它是否有效,然后逐步改变它,这样你就可以更容易地注意到导致问题的原因。此外,如果基本主题不是公共主题(它不会获得更新等),您可以直接更改它。

关于错误 500 - 可以记录或显示错误。运行 phpinfo() 以查看 php.ini 文件在哪里。编辑它并至少允许错误登录。或者对于您的开发环境,甚至更好地允许错误显示。

【讨论】:

    猜你喜欢
    • 2012-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-13
    相关资源
    最近更新 更多