- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
最近,我得到了一个现有的Drupal项目,并被要求改进前端(HTML,JavaScript,CSS)。我在Django,PHP,Ruby等方面具有大量的前端和后端开发经验,但是我没有任何Drupal经验,并且弄清楚项目中发生的事情充其量是很麻烦的。
谁能提供一个典型Drupal网站如何组合在一起的概要(或提供一些链接),以及添加页面元素,更改CSS和添加JavaScript功能所要做的事情?什么合适的地方呢?
当然,问代码开发人员正在发生的事情真是太好了-但无处可寻。
这是我到目前为止所看到的,从大约2个小时的代码中和在线开始开始:
有很多模块,主题文件(CSS,一些图像)位于site / all / themes / theme_name / ...
HTML文件(模板)似乎随机散布在各个位置-在模块,*。tpl.php文件等中。
该主题有一个.info文件,其中包含区域的定义等。这些区域对应于模板文件中的变量-但是变量在哪里定义/编辑?
这使我不敢理the头发,任何有关如何更换前端的帮助都将非常有用!
1 Câu trả lời
从长远来看,使用Zen之类的主题框架(假设预算要花几个小时以上进行灯光更新)是一个不错的方法,特别是对于Drupal初学者而言,因为Zen的开发人员已经考虑了所有允许主题可在许多不同的网站和浏览器上正常运行。
也许我误解了Scott的建议,但我认为他的主要观点是,通过研究Zen框架,您将学习最佳实践。这也是正确的-例如,查看现有的主题和主题框架是查看template.php
文件应如何结构以及如何包含JS文件的好方法。
在实现细节方面,有一些基础知识可能会帮助您入门:
地区/街区:
thông tin
文件中定义一个区域(例如regions[header]
)时,然后$header
变量在您的页面模板(例如page.tpl.php
)中变为可用。创建新区域时,为了在模板中访问它,您需要clear your theme cache。您可以通过打印变量来在页面模板的任何位置包括您的区域:
drupal_add_js()
包含JavaScript文件,也可以将它们包含在信息文件中,例如scripts[] = js/myscript.js
。每当您修改thông tin
文件时,您还需要清除主题缓存。views
hoặcnode-
/ node--
开头的tpl文件,它们可能会覆盖视图/内容类型。您可能希望至少了解CCK / Views的基础知识,因为它们构成了许多tpl.php覆盖的基础。您可能没有创建新的视图或内容类型,但是如果以前的开发人员创建了这些视图或内容类型,他们可能会创建一些tpl文件来覆盖一个或两个。假设已安装视图,并且您的用户角色可以访问它,请查看各种视图以了解其工作方式。如果tpl.php文件以views
开头,则它将覆盖View中的某些内容。如果它以nút
开头(node.tpl.php
除外,它是所有Drupal节点的通用模板),则通常会覆盖内容类型(通常使用CCK模块创建)。page.tpl.php
,则它将成为站点上所有页面的模板。但是,您可以使用page-front.tpl.php
模板在首页覆盖它。类似于node.tpl.php
。如果您具有名为Event的内容类型,则可以使用node-event.tpl.php
覆盖节点模板。理解此概念将有助于您理解tpl命名约定。 page--blah-blah.tpl.php
,并在
template.php
中进行更多的模板覆盖,这是大多数主题逻辑理想的驻留位置。这可以帮助您合并(和重复使用)模板替代。如果预算/时间不太紧,请了解
template.php
chức năng.
关于drupal - 开发Drupal网站的前端-基础,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6944404/
Chuỗi bài hướng dẫn nhanh về Vue3 - Cơ bản Chúng tôi đã phát triển với vue2 và react. Nâng cấp từ vue2 lên vue3 rất tốn kém, đặc biệt là đối với các dự án lớn hơn. Do đó, nhiều công ty vẫn tiếp tục sử dụng vue2 cho các dự án cũ và dự án mới
C# Cơ bản Tạo dự án C# Lưu ý rằng máy ảo win10 cần được vá, nếu không, việc tải trực tiếp visual studio 2022 sẽ cho thấy phiên bản không hỗ trợ HelloWorld Các tệp lớp C# đều kết thúc bằng .cs và phương thức nhập là sta
Một câu hỏi rất cơ bản về quản lý bộ nhớ iPhone: Giả sử tôi có một viewController có một số chế độ xem phụ cũng được viewController điều khiển. Khi tôi xóa top viewControll
Tôi vẫn đang cố gắng làm quen với con trỏ. Vấn đề không phải ở khái niệm - tôi hiểu vị trí bộ nhớ, việc khớp các gia số con trỏ có độ dài thay đổi, v.v. - mà là cú pháp. Đây là một trong những điều tôi thấy khó hiểu/trực quan: int a = 42; phân bổ và đặt vào một không gian bộ nhớ có kích thước của một số int.
1. Giới thiệu Kafka (Apache Kafka) là một nền tảng dữ liệu phát trực tuyến phân tán ban đầu được LinkedIn phát triển và sau đó được tặng cho Apache Software Foundation, trở thành một dự án cấp cao của Apache. Nó được thiết kế để xử lý lớn
1. Để vận hành máy chủ MySQL trong dấu nhắc lệnh, hãy thêm các biến hệ thống. (Máy tính - Thuộc tính hệ thống - Biến môi trường - Đường dẫn) 2. Truy vấn dữ liệu trong bảng dữ liệu; chọn selection_lis
Thêm, xóa, sửa đổi và truy vấn bảng MySQL (cơ bản) 1. Bình luận CRUD: Trong SQL, bạn có thể sử dụng “–space + description” để chỉ các bình luận CRUD, cụ thể là thêm (Create), truy vấn (Retrieve), cập nhật (Update), xóa (Delete)
Tôi có một trang web mở ra một cửa sổ hiển thị khi được tải và trong cửa sổ đó, tôi có một liên kết mở ra một cửa sổ thứ hai. Khi hộp thoại thứ hai bị đóng (bằng cách nhấp vào nút đóng hoặc nhấp ra bên ngoài hộp thoại), tôi muốn mở lại hộp thoại đầu tiên. Đối với nút đóng, tôi có thể thực hiện điều này bằng cách thêm
Sử dụng Thuộc tính được lấy dữ liệu cốt lõi, làm thế nào để tôi thực hiện yêu cầu đơn giản này: Tôi muốn lấy một thuộc tính ( myFetchProp ) từ cửa hàng StoreA, điều này sẽ thực hiện như sau: [ myFetchProp
đóng cửa. Câu hỏi này dựa trên ý kiến. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Cập nhật câu hỏi để khi chỉnh sửa bài đăng này, bạn có thể trả lời bằng các sự kiện và trích dẫn. Đã đóng 8 năm trước. Cải thiện điều này
Gần đây, tôi được giao một dự án Drupal hiện có và được yêu cầu cải thiện giao diện người dùng (HTML, JavaScript, CSS). Tôi có rất nhiều kinh nghiệm phát triển front-end và back-end trong Django, PHP, Ruby, v.v., nhưng tôi không có bất kỳ kinh nghiệm nào về Drupal.
Tôi đang cố gắng để người dùng quyết định những gì cần làm bằng cách sử dụng lớp máy quét nhưng tôi gặp vấn đề là mã không kích hoạt sau khi chạy và không cho tôi bỏ qua bất kỳ hàng nào. Mã của tôi trông như thế này: Đầu vào máy quét = Máy quét mới (S
Xin lỗi vì tiêu đề mơ hồ vì tôi không thể hiểu nó được gọi là gì. Về cơ bản là tạo ra một chương trình nhỏ để tính toán các khoản thanh toán tài chính của sinh viên. Khi tôi chạy lệnh này, nó tính toán hạn ngạch đối tượng mà không có vấn đề gì. Tuy nhiên, bất kể tôi thử thế nào thì đối tượng "grant" dường như chỉ trả về kết quả là 0.
Đây là mã của tôi - main() { double x; double y = pow(((1/3 + sin(x/2))(pow(x, 3) + 3)), 1/3); print
Xin lỗi nếu thuật ngữ của tôi không chính xác trong câu hỏi này. Hãy sử dụng hàm sau: i = 1; v = i * 2; for (j = 0; j < 4; j++ ) { console.log(v);
Tôi có nhiều tệp lớp khác nhau trong ứng dụng của mình. Tôi có 5 lớp, 2 trong số đó là Hoạt động và 1 là dịch vụ đang chạy. 2 cái còn lại chỉ là lớp học. Vòng đời của các biến trong hai lớp này là gì? Tôi biết rằng một Hoạt động có thể bị hệ điều hành hủy bỏ
Ví dụ, một phương thức trả về một đối tượng có kiểu List. public List bojangles () ... một số mã gọi phương thức FooBar.bojangles.iterator(); Tôi mới làm quen với Java
Tôi đang gặp một vấn đề kỳ lạ khi lưới không thay đổi kích thước đúng trên màn hình. Khi tôi sử dụng 12 cột lớn, nó chỉ chiếm 1/3 ở giữa màn hình, xem hình ảnh. Tôi không chắc điều gì đang gây ra vấn đề này. Tôi không có mã CSS lạ nào có thể khiến điều này xảy ra. Tôi sẽ không
Tôi đã thử sử dụng cả tệp tiêu đề và tệp nguồn nhưng gặp phải sự cố. Vì vậy, tôi đã tạo một phiên bản đơn giản hóa những gì tôi đang cố gắng thực hiện và tôi gặp lỗi tương tự trong CodeBlocks (tham chiếu không xác định đến add(double
Tôi đang sử dụng Foundation cho hệ thống lưới của mình, nhưng điều này có thể là vấn đề ở bất kỳ hệ thống lưới nào. Về cơ bản, tôi có 3 ô được bao bọc trong một hộp chứa, nhưng một trong các ô sẽ phát triển đến đường viền trang (giữ nguyên trong Sampe-Image của tôi) nhưng điều này cũng có thể ở phía bên phải).
Tôi là một lập trình viên xuất sắc, rất giỏi!