it-swarm.com.de

WordPress 3.9 - Probleme beim Bearbeiten des neuen TinyMCE

Mit WordPress 3.9 bringt es bald TinyMCE 4.0 mit. Ich habe meine Plugins und Funktionen getestet und festgestellt, dass eine meiner Funktionen mit dem neuen tinyMCE nicht funktioniert

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' );

Die obige Funktion wurde verwendet, um die Schaltflächen im tinyMCE auf bestimmte Schaltflächen zu beschränken. Ich habe sie ein wenig vereinfacht, um das Testen zu vereinfachen. Wenn ich $in ausdrucke, werden die richtigen Werte an den richtigen Stellen angezeigt, aber wenn ich tatsächlich eine Seite hochlade, werden standardmäßig die normalen Schaltflächen verwendet.

Ich habe auch versucht, das Beispiel im TinyMCE Codex zu verwenden, was ebenfalls keine Wirkung zu haben schien.

Ich verwende das WordPress Beta Tester Plugin und habe TinyMCE Advanced installiert, aber deaktiviert.

Wie kann ich mit dem neuen TinyMCE die Verwendung/Anpassung fortsetzen und gibt es 'Gotchas', die sich gegenüber der vorherigen TinyMCE-Version geändert haben?

EDIT

$in['wordpress_adv_hidden'] = false; wird anscheinend nicht mehr verwendet - Keine Ahnung, wie man das Spülbecken ausblendet.

8
Howdy_McGee

Die Saiten waren neu, nicht mehr für Ihre Anforderungen.

Dies ist der neue Inhalt des Hooks.

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',
)

Ändern Sie auch die Zeichenfolgen im Array in Ihrer Quelle in:

function myformatTinyMCE( $in ) {

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

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

Aber siehe auch dieses Test-Plugin Gist 9758082 und diesen Thread für WP 3.9 und das neue TinyMCE 4.0, um das Thema zu verstehen.

Erzwingen von Toolbar2

Um immer die Symbolleiste 2 anzuzeigen, ohne die Schaltfläche wp_adv zu verwenden, fügen Sie die folgende Quelle einem Plugin hinzu.

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

ABER jetzt der Hinweis für den Wert wordpress_adv_hidden. In der nächsten WordPress-Version wird nach 3.9 der alte Hook wordpress_adv_hidden wiederhergestellt, um die Symbolleiste umzuschalten, siehe Ticket 27963 . Dann ist es möglich, die folgende Quelle zu verwenden. $in['wordpress_adv_hidden'] = FALSE;

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

    $in['wordpress_adv_hidden'] = FALSE;

    return $in; 
}
6
bueltge

Eine Änderung ist, dass:

theme_advanced_buttons1 wird geändert in:

toolbar1, mit dem Sie die Schaltflächen aktualisieren können, sodass meine neue Funktion ungefähr so ​​aussieht:

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

Es sieht auch so aus, als ob formatselect in dieser Iteration nicht wirklich bevorzugt wird. Sollte wahrscheinlich in styleselect konvertiert werden, da es mehr Optionen und Anpassungen (wie z. B. verschachtelte Stile) ermöglicht und auch zu einem minimalistischeren Design passt.

Eine andere gotcha is-Ausrichtungsoption wurde von justify in align geändert: alignleft, aligncenter, alignright, alignjustify.

6
Howdy_McGee