WordPress 3.9 - Sự cố khi chỉnh sửa TinyMCE mới


9

Với WordPress 3.9 sắp ra mắt, nó sẽ mang theo TinyMCE 4.0. Tôi đang chạy các plugin và chức năng của mình thông qua một số thử nghiệm và thấy rằng một trong các chức năng của tôi dường như bị hỏng / không hoạt động với tinyMCE mới

function myformatTinyMCE( $in )
{
    $in['theme_advanced_buttons1'] = 'bold';
    $in['theme_advanced_buttons2'] = 'formatselect';
    $in['wordpress_adv_hidden'] = false;
    return $in; 
}
add_filter( 'tiny_mce_before_init', 'myformatTinyMCE' );

Chức năng trên được sử dụng để giới hạn các nút trong tinyMCE thành các nút cụ thể, tôi đã đơn giản hóa nó một chút để dễ kiểm tra hơn. Nếu tôi in ra, $innó hiển thị các giá trị chính xác trong các điểm chính xác, nhưng khi tôi thực sự tải lên một trang, nó chỉ mặc định cho các nút bình thường.

Tôi cũng đã thử sử dụng ví dụ trong Codex TinyMCE mà dường như không có bất kỳ ảnh hưởng nào.

Tôi đang sử dụng Plugin WordPress Beta Tester và tôi đã cài đặt TinyMCE Advanced nhưng bị vô hiệu hóa.

Với TinyMCE mới, làm cách nào tôi có thể tiếp tục sử dụng / tùy chỉnh và có bất kỳ 'Gotchas' nào đã thay đổi so với Phiên bản TinyMCE trước đó không?

BIÊN TẬP

Có vẻ như $in['wordpress_adv_hidden'] = false;nó không còn được sử dụng nữa - Không biết làm cách nào để tháo bồn rửa chén.

Câu trả lời:


7

Các chuỗi là mới, không nhiều hơn cho các yêu cầu của bạn.

Đây là nội dung mới của hook.

array (
  'selector' => '#content',
  'resize' => 'vertical',
  'menubar' => false,
  'wpautop' => true,
  'indent' => false,
  'toolbar1' => 'template,|,bold,italic,strikethrough,bullist,numlist,blockquote,hr,alignleft,aligncenter,alignright,link,unlink,wp_more,spellchecker,wp_fullscreen,wp_adv',
  'toolbar2' => 'formatselect,underline,alignjustify,forecolor,pastetext,removeformat,charmap,outdent,indent,undo,redo,wp_help',
  'toolbar3' => '',
  'toolbar4' => '',
  'tabfocus_elements' => 'insert-media-button,save-post',
  'body_class' => 'content post-type-post post-status-draft post-format-standard',
)

Đồng thời thay đổi các chuỗi bên trong mảng trong nguồn của bạn thành:

function myformatTinyMCE( $in ) {

    $in['toolbar1'] = 'bold';
    $in['toolbar2'] = 'formatselect';

    return $in; 
}
add_filter( 'tiny_mce_before_init', 'myformatTinyMCE' );

Nhưng cũng xem plugin thử nghiệm này Gist 9758082chủ đề này cho WP 3.9 và TinyMCE 4.0 mới để hiểu chủ đề này.

Buộc Thanh công cụ2

Để luôn hiển thị thanh công cụ 2, không sử dụng nút wp_adv, hãy thêm nguồn theo dõi vào plugin.

add_action( 'plugins_loaded', 'fb_force_show_toolbar2' );
function fb_force_show_toolbar2() {
    set_user_setting( 'hidetb', 1 );
}

NHƯNG, bây giờ là gợi ý cho giá trị wordpress_adv_hidden. Trong phiên bản WordPress tiếp theo, sau 3.9 sẽ khôi phục hook cũ wordpress_adv_hiddenđể chuyển đổi thanh công cụ, xem vé 27963 . Sau đó có thể sử dụng các nguồn sau.$in['wordpress_adv_hidden'] = FALSE;

add_filter( 'tiny_mce_before_init', 'myformatTinyMCE' );
function myformatTinyMCE( $in ) {

    $in['wordpress_adv_hidden'] = FALSE;

    return $in; 
}

Vì vậy, không có "bồn rửa nhà bếp" (thanh công cụ2)?
Howdy_McGee

Bồn rửa nhà bếp là gì?
bueltge

Thanh công cụ2, wp_adv- hiển thị thanh công cụ1 và thanh công cụ 2 theo mặc định. Bạn đã từng có thể làm điều này $in['wordpress_adv_hidden'] = false;mà không còn hoạt động.
Howdy_McGee

À, được rồi Bây giờ tôi đã thêm nguồn vào câu trả lời của mình để buộc thanh công cụ2.
bueltge

1
@Howdy_McGee Tôi vừa đọc trong Make WordPress Core rằng thông số bồn rửa nhà bếp sẽ sớm quay trở lại trong 3.9.1.
xe đạp

6

Một thay đổi là:

theme_advanced_buttons1 sẽ được đổi thành:

toolbar1 cho phép bạn cập nhật các nút để chức năng mới của tôi sẽ trông giống như:

function myformatTinyMCE( $in ) {
    $in['toolbar1'] = 'bold';
    $in['toolbar2'] = 'formatselect';
    return $in; 
}
add_filter( 'tiny_mce_before_init', 'myformatTinyMCE' );

Ngoài ra, có vẻ như formatselectnó không thực sự được ưa chuộng nhiều trong lần lặp này. Có lẽ nên chuyển đổi sang styleselectvì nó cho phép nhiều tùy chọn và tùy chỉnh hơn (như kiểu lồng nhau) và cũng đi với thiết kế tối giản hơn.

Một Gotcha là tùy chọn liên kết đã được thay đổi từ justifyđến alignnhư vậy: alignleft, aligncenter, alignright, alignjustify.

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.