webentwicklung-frage-antwort-db.com.de

Wie steuere ich den kontextbezogenen Hilfeabschnitt per Code?

Ich habe den kontextbezogenen Hilfeabschnitt für die Plugin-Optionsseite um einige Inhalte erweitert.

Jetzt möchte ich, dass diese Seite standardmäßig auf den kontextbezogenen Hilfeabschnitt umgeschaltet wird, der unter bestimmten Bedingungen in meinem PHP Code geöffnet ist. Mein einziges Problem ist, dass ich mit JS nicht stark bin und keine klare Herangehensweise an das Codieren sehe (ich weiß, wie man Variablen durch localize an JS übergibt, aber nicht, welcher Code es tatsächlich erledigt).

Ich hatte relevante JS-Funktionen im Quellcode gefunden, war mir aber nicht sicher, wie ich sie für meine Aufgabe richtig wiederverwenden kann.

2
Rarst

Sie können die angeklickte Hilfeschaltfläche auch auslösen/simulieren, indem Sie sie an das Ready-Ereignis binden.

Pre jQuery 1.7

<script type="text/javascript">
jQuery(document).bind( 'ready', function() {
    jQuery('a#contextual-help-link').trigger('click');
});
</script>

jQuery 1.7 + (Bindung veraltet ab 1.7)

<script type="text/javascript">
jQuery(document).on( 'ready', function() {
    jQuery('a#contextual-help-link').trigger('click');
});
</script>

Der Unterschied besteht darin, dass der Hilfeabschnitt nach dem Laden der Seite nach unten verschoben wird, als hätte ein Benutzer auf den Link geklickt.

Kann aber nicht schaden, eine andere Option zu haben. :)

2
t31os

Das Injizieren, wo immer Sie es für angemessen halten (oder das Laden als externes js über wp_enqueue_script() sollte es tun:

<script type="text/javascript">
    addLoadEvent(function() {
        jQuery(document).ready(function () {
            jQuery('#contextual-help-wrap').show().addClass('contextual-help-open');
            jQuery('#contextual-help-link').css({'backgroundPosition':'bottom right'});
            jQuery('#screen-options-link-wrap').css('visibility', 'hidden');
        });
    });
</script>
2
wyrfel