基于非主题的Drupal开发?

时间:2013-06-14 20:47:23

标签: drupal drupal-themes

我经营一家设计公司,经常需要Drupal开发。我正在寻找关于Drupal工作流程的一些指导,这对我公司最有效。

我过去与Drupal开发人员合作的经验非常适合后端开发,前端开发也很混乱。项目最终会出现多种不一致的CSS样式,并且在视觉方面进行质量控制非常耗时。

此外,我是一个前端编码器,并在项目的所有阶段使用HMTL / CSS / JS原型。我更喜欢开发人员使用前端编码而不是浪费。

但是,到目前为止,此工作流程与Drupal dev合作伙伴并不兼容。因为他们使用主题,并将它们改编为我给他们的设计,他们无法使用我所做的HTML / CSS / JS工作。此外,我有一个我喜欢的响应式框架(基础),我的开发人员希望使用标准的响应式Drupal主题(Omega)。我不喜欢Omega,因为它不流畅。

然后就像我的开发人员告诉我他们不能做一个使用CSS(背景图像)的转盘,因为可用的Drupal转盘模块都基于使用HTML img标签。一切都必须基于模块吗?

回到HTML / CSS的不一致性和耗时的设计质量保证,我认为这来自于试图改造一个主题。代码非常混乱,因此难以定位样式元素。如果我愿意,它也使我无法进行自己的CSS更改。

因此,简而言之,我正在寻找一个完全不同的设计工作流程,我正在寻找关于它是否可以在Drupal中运行而不会增加成本的反馈。

是否可以在Drupal中使用前端代码(由我提供),抛出一些PHP标签,最终得到干净编码的页面,而不是依赖于主题?这会降低成本(因为提供了HTML / CSS / JS),还是会增加成本(因为它更容易使用主题)?是否涉及任何安全问题?是否涉及更新问题?简而言之,使用预制主题的最大优势是什么?

我真的非常感谢你的评论。

2 个答案:

答案 0 :(得分:2)

我们通常从后端发展到前端。像Views这样的模块添加了许多div标签,类和标签,因此主题开发人员可以更好地利用它们并对设计进行微调。

除非您在tpl.php文件中完成所有工作,否则我认为这不是一个“混乱”的代码。

模块只处理数据。它不应该严重影响输出。为了更好地理解,请参见下图(来自drupal.org):

enter image description here

如果您想在模板级别进行任何数据库密集型工作,则必须加载许多您可以在模块中执行的

在我看来,如果你的开发人员没有硬编码HTML的东西,他就是这样做的。 请记住,您可以覆盖大多数主题功能,这样您就可以拥有灵活性。

  

Drupal是否可以使用前端代码(由我提供),抛出   在一些PHP标签中,最终得到干净编码的页面,而不是   依靠主题?

是。但是你不能简单地使用slider-image.php类文件。您必须添加必要的主题函数并将变量传递给它。 IMO,如果您需要完全重写主题功能,那么相对更多的工作。

  

这会降低成本(因为提供了HTML / CSS / JS),或者   会不会增加成本(因为它更容易使用主题)?   我不这么认为。如果您有多个后端开发人员在处理代码,请让主题团队对HTML / CSS进行更改。 CSS可以使您的网站看起来更糟,安全漏洞可能会破坏您的业务,暴露您的所有用户信息甚至更糟。

是否涉及任何安全问题? 最有可能的。默认主题功能往往具有更好的安全性。即使很少出现错误,社区很快就会修复它们。

  

是否涉及更新问题?简而言之,最大的优势是什么   与前工厂主题合作?

因为你可以简单地采用很多工作。这也会阻止你采用别人的CSS工作。

答案 1 :(得分:0)

我在高度风格化的深思熟虑的前端构建工作,几乎与当前处理Drupal主题的方式不兼容。让前端开发人员追踪错误也很成问题。看起来至少在Drupal 8中对此有一些认可。此时,我们经常将Drupal重新编写为API,然后在我们需要的时候构建一个轻量级的PHP Framework应用程序来提取内容,这使我们可以完全灵活地使用前端执行任何操作。另一种方法是检查Expression Engine,在那里你明确告诉它你想要输出什么标记以及你希望如何将你的内容放在标记中。

圣杯将是一个非常轻量级的层,它是Drupal的一部分,我们可以使用Twig以我们想要的方式提取内容,所有HTML输出都在Twig中定义。