Đính kèm WYSIWYG vào mẫu Drupal


12

Với biểu mẫu Drupal tùy chỉnh, làm thế nào bạn có thể đính kèm chức năng WYSIWYG vào một vùng văn bản với mô-đun WYSIWYG?


Tôi tìm thấy giải pháp được gửi bởi moon.watcher và Dylan Tack hoạt động hoàn hảo.

Câu trả lời:


2

xem lại chỉ định này cho Drupal 7 (với một chút chỉ dẫn cho drupal 6) http://drupal.org/node/1031160 . cụ thể là về cách hiển thị một trình soạn thảo bên trong textarea trong drupal 7, vì vậy tôi đoán rằng nó có thể hữu ích để bắt đầu (dường như bình luận cuối cùng có một cách đã được thử nghiệm).

có thể là một sự thay thế để làm điều này thay vào đó / với WYSIWYG.


8

Mô-đun wysiwyg được gắn với hệ thống định dạng đầu vào.

Sử dụng '#type' => 'text_format'khi xác định vùng văn bản của bạn.


7

Bạn nên sử dụng type = 'text_format' thay vì vùng văn bản. và định dạng = 'Editor_format'. Mã sẽ trông như thế này.

$form['description'] = array(
  '#type' => 'text_format',
  '#title' => t('Description'),
  '#format' => 'full_html' //the format used for editor.
);

Đây là lựa chọn chính xác. Nhưng tôi không thể có được safe_value dưới dạng.

4

Đây là của tôi:

$form['my_module_my_form_my_field'] = array(
  '#type' => 'text_format',
  '#title' => t('Awesome title'),
  '#format' => isset($edit['format']) ? $edit['format'] : NULL,
  '#base_type' => 'textarea',
  '#default_value' => variable_get('my_module_my_form_my_field', '')['value'],
  '#description' => t("Awesome description."),
  '#required' => FALSE,
  '#maxlength' => 500,
);

Tôi đã phải thêm ['value']vào #default_valuenguyên nhân nó không được tải sau khi lưu.

Tham chiếu API mẫu 7x


1
Wow thực sự, variable_get('foo', '')['value']hậu tố là thực sự cần thiết.
leymannx

0

Mô-đun WYSIWYG chỉ là một cách để sử dụng một trong nhiều trình soạn thảo wysiwyg ngoài kia. Khi bạn cài đặt mô-đun wysiwyg ( http://drupal.org/project/wysiwyg ), hãy chuyển đến cấu hình cho mô-đun (admin / config / content / wysiwyg). Sẽ có hướng dẫn cài đặt cho nhiều trình soạn thảo Wysiwyg. Ví dụ, đối với FCKeditor, nó nói như sau:

Trích xuất kho lưu trữ và sao chép nội dung của nó vào một thư mục mới ở vị trí sau: các trang web / tất cả / thư viện / fckeditor

Vì vậy, thư viện thực tế có thể được tìm thấy tại: sites / all / library / fckeditor / fckeditor.js

Vì vậy, tải về trình soạn thảo, trích xuất kho lưu trữ vào thư mục đã cho. Khi bạn thực hiện việc này (giả sử bạn đã thực hiện đúng), bạn sẽ có thể thay đổi trình chỉnh sửa cho các định dạng đầu vào đã cho trên màn hình cấu hình Wysiwyg. Sau đó, bạn sẽ cần chỉ định các hoạt động khác nhau cho từng loại (HTML được lọc, HTML đầy đủ, v.v.). Nhấp vào "Chỉnh sửa" trong các thao tác trong quản trị viên / config / content / wysiwyg trong hàng cho bất kỳ định dạng nhập nào bạn quan tâm. Từ đây, hãy kiểm tra các nút bạn muốn.


CKEditor cũng có thể được cài đặt "độc lập" mà không cần sử dụng trình soạn thảo WYSIWYG. Xem drupal.org/project/ckeditor .
Jorrit Schippers

0

Dường như không thể với Wysiwyg phiên bản 7.x-2, nhưng trình tạo biểu mẫu cho cài đặt cấu hình sử dụng mảng sau:

  $profile['settings'] += array(
    'default' => TRUE,
    'user_choose' => FALSE,
    'show_toggle' => TRUE,
    'theme' => 'advanced',
    'language' => 'en',
    'access' => 1,
    'access_pages' => "node/*\nuser/*\ncomment/*",
    'buttons' => array(),
    'toolbar_loc' => 'top',
    'toolbar_align' => 'left',
    // ...
  );

Chỉ mục mảng "access_pages" sẽ cho phép thiết lập trình soạn thảo nào được hiển thị, nhưng mô-đun không cung cấp bất kỳ trường biểu mẫu nào để thay đổi mã đó, cũng như không có chức năng nào sử dụng giá trị đó.

Có thể giá trị đó đã được sử dụng trong các phiên bản trước và mã để xử lý nó vẫn đang được chuyển hoặc tùy chọn đó được giới thiệu trong các phiên bản tiếp theo của mô-đun.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.