it-swarm-vi.com

Làm cách nào để thêm các lớp bổ sung vào trường ngày ở dạng xem?

Tôi đang sử dụng Drupal 7. Tôi đã tạo một chế độ xem, đó là sử dụng trường ngày. Tôi muốn tạo các lớp bổ sung cho trường ngày cho chế độ xem cụ thể đó.

Ví dụ,

<div class="field-content">
 <span class="date">10</span>
 <span class="month">June</span>
 <span class="year">2011</span>
 <span class="time"> 8:00 </span>
</div>

Bây giờ tôi có một mã:

<div class="field-content">
 <span class="date-display-single">10 June 2011, 8:00</span>
</div>

Làm thế nào tôi có thể làm điều đó từng bước?

7
user1513
  1. Bạn cần cài đặt mô-đun mã thông báo (phiên bản beta mới nhất bao gồm mã thông báo trường) và mô-đun định dạng tùy chỉnh từ http://drupal.org/project/custom_formatters .

  2. Sau đó kích hoạt nó từ trang mô-đun.

  3. Chuyển đến admin-> architecture-> formatters.

  4. Thêm một định dạng mới, đặt tên mà bạn thích.

  5. Định dạng: HTML + Mã thông báo

  6. Loại trường: Ngày

  7. Định dạng:

    <span class="day">[node:source:field-datefieldname:custom:j]</span>
    <span class="month">[node:source:field-datefieldname:custom:F]</span>
    <span class="year">[node:source:field-datefieldname:custom:Y]</span>
    
  8. Tiết kiệm

Bây giờ, bạn đã tạo một trình định dạng ngày tùy chỉnh, mà bạn có thể sử dụng theo quan điểm của mình!

3
john

Bạn có thể làm điều này mà không cần bất kỳ mô-đun bổ sung.

  1. Thêm trường ngày. Loại trừ điều này khỏi màn hình. Chọn tùy chỉnh và viết d trong hộp (như trong ngày php trong ngày). Thay đổi 'Cài đặt kiểu' - Tùy chỉnh trường HMTL (đặt thành không) và Tùy chỉnh trường và trình bao bọc nhãn HTML (được đặt thành không). Drupal date field
  2. Thêm trường ngày một lần nữa. Loại trừ điều này cũng từ màn hình. Chọn tùy chỉnh và viết M vào hộp (như trong ngày php trong tháng). Thay đổi 'Cài đặt kiểu' - Tùy chỉnh trường HMTL (đặt thành không) và Tùy chỉnh trường và trình bao bọc nhãn HTML (được đặt thành không).
  3. Thêm trường ngày một lần nữa. Loại trừ điều này cũng từ màn hình. Chọn tùy chỉnh và viết Y vào hộp (như trong ngày php trong năm). Thay đổi 'Cài đặt kiểu' - Tùy chỉnh trường HMTL (đặt thành không) và Tùy chỉnh trường và trình bao bọc nhãn HTML (được đặt thành không).
  4. Thêm trường ngày một lần nữa (LẦN THỜI GIAN!). KHÔNG LOẠI TRỪ NÀY TỪ HIỂN THỊ. Chọn tùy chỉnh và viết G: i (như trong ngày php cho giờ và phút). Thay đổi 'Cài đặt kiểu' - Tùy chỉnh trường HMTL (đặt thành không) và Tùy chỉnh trường và trình bao bọc nhãn HTML (được đặt thành không).
  5. Viết lại kết quả của trường ngày cuối cùng này. Sử dụng các mẫu thay thế, sau đó bạn có thể viết một cái gì đó như thế này:

    <div class="date">
      <span class="day">
        [created]
      </span>
      <span class="month">
        [created_1]
      </span>
      <span class="year">
        [created_2]
      </span>
    </div>
    

Drupal Rewrite Results

4
David Paul

Một cách nhanh chóng hợp lý (nếu bạn có thể viết php), nhưng giải pháp hơi hack sẽ là ghi đè lên mẫu cho trường đó (xem Xem cơ bản theo chủ đề ), xử lý giá trị ngày thô bằng php để tách riêng các mảnh và sau đó dán chúng lại với nhau bằng HTML bạn chọn.

Ngoài ra, tôi nghĩ rằng bạn có thể viết một trình định dạng trường ngày tùy chỉnh ( ở đây là người đã làm điều đó cho D6). Đó sẽ là một giải pháp tốt đẹp trong trường hợp bạn muốn sử dụng lại định dạng tùy chỉnh trong các nút của mình.

3
marcvangend

Điều này là không thể khi sử dụng UI UI. Bạn sẽ cần một đoạn mã khá phức tạp và tôi tò mò về trường hợp sử dụng của bạn trước khi khuyến khích bạn bắt tay vào tìm hiểu điều đó.

Nếu bạn hỏi làm thế nào để thêm các lớp vào toàn bộ trường, câu trả lời sẽ là như thế này:

  1. Nhấp vào trường trong giao diện Lượt xem.

  2. Mở rộng bộ trường "Cài đặt kiểu".

  3. Chọn hộp kiểm "Tùy chỉnh trường HTML", sau đó chọn hộp kiểm "Tạo lớp CSS".

  4. Nhập lớp mong muốn của bạn.

Có lẽ giải pháp đó sẽ là đủ. Nếu không, tôi chúc bạn may mắn.

1
tim.plunkett

Điều này thực sự dễ dàng, (một khi bạn biết cách)

Sử dụng trường tùy chỉnh bộ hiển thị

Chuyển đến quản trị/cấu trúc/DS/trường

(Trong menu: Cấu trúc -> Bộ hiển thị -> Trường)

Nhấp vào thêm trường mã

Đối với trường hợp sử dụng của tôi, tôi đã nhập như sau

Nhãn

Bất cứ điều gì

Thực thể

Node

Trường giới hạn

Bỏ trống

Mã trường

<div>
  <span class="mf-month">[node:created:custom:M]</span> 
  <span class="mf-day">[node:created:custom:d]</span>
</div>

Mã thông báo

đã kiểm tra

Khi bạn đã tạo trường, sau đó chuyển đến trang quản lý hiển thị cho loại nội dung và chế độ xem mà bạn đang điều chỉnh và chọn trường tùy chỉnh mới.

Ảnh chụp màn hình của thiết lập ở trên

Screenshot of the settings page

1
chim