Fügen Sie meine eigene Schaltfläche neben “Bildschirmoptionen” und “Hilfe” im Admin hinzu

Ich möchte meinen eigenen Button-Link neben diesen beiden hinzufügen. Ist das möglich?

Bildbeschreibung hier eingeben

Solutions Collecting From Web of "Fügen Sie meine eigene Schaltfläche neben “Bildschirmoptionen” und “Hilfe” im Admin hinzu"

Nicht sicher, warum diese Frage so schnell abgewiesen wurde. Es ist tatsächlich eine gültige Frage, und wäre wirklich nützlich, um in der Lage zu sein, eine Schaltfläche dort oben hinzuzufügen, oder sogar den Inhalt jeder Bildschirmoption zu bearbeiten.

Ich weiß, das ist eine alte Frage, aber …

Wenn Sie möchten, dass Sie dort nur einen Button hinzufügen, der irgendwo anders verlinkt ist. Sie könnten einfach einige jQuery hinzufügen, um die Schaltfläche hinzuzufügen.

jQuery("#screen-meta-links").append(''); 

Wenn Sie nun möchten, dass diese Schaltfläche genauso funktioniert wie die anderen Schaltflächen, müssen Sie in die Admin-Dateien einsteigen.

Die gesuchte Datei ist:

wordpress \ wp-admin \ includes \ screen.php

Der HTML-Code

 echo ''; echo '
'; echo '
'; // your content goes here echo '
';

Und Sie benötigen ein benutzerdefiniertes JavaScript

 jQuery(document).ready( function($){ $( '.your-button-hide' ).each( function(e){ $( this ).hide(); } ); $( '#your-own-button' ).click( function( e ){ e.preventDefault(); $( '#your-button-content' ).toggle(); var hasclass = $( '#your-own-button' ).hasClass( 'screen-meta-active' ); if( hasclass ){ $( '#your-own-button' ).removeClass( 'screen-meta-active' ); } else { $( '#your-own-button' ).addClass( 'screen-meta-active' ); } } ); }); 

Der HTML-Teil fügt die Schaltfläche hinzu, das JavaScript fügt die functionalität hinzu.

Der vollständige Code könnte folgendermaßen aussehen:

 add_action( 'admin_menu', 'register_backendpage', 10, 0 ); function register_backendpage() { $pagehook = add_management_page( 'Your backend page', 'Your backend page', 'manage_options', 'a-menu-slug-of-your-choice', 'backendpage_callback', false, 'bottom' ); add_action( 'load-' . $pagehook, 'enqueue_button_script', 10, 0 ); } function backendpage_callback() { // output your button here, see code above echo '
'; /* * the rest of your page content */ } function enqueue_button_script() { // the js above wp_enqueue_script( 'your-button-script', ... ); }

Ich habe eine einfache und genaue saubere Lösung für das Hinzufügen eines eigenen Knopfes geschrieben:

 class TmMS_Controller extends TmMS { //... public function init() { //... add_action('admin_footer', array(&$this, 'admin_footer')); // ... } public function admin_footer() { if (empty($_GET) OR (isset($_GET['post_type']) AND $_GET['post_type'] == 'post')) { if ($_SERVER['SCRIPT_URI'] == admin_url('edit.php')) { ?>  < ?php $this->draw_prepared_posts_content(); } } } public function draw_prepared_posts_content() { $data = array(); echo $this->draw_html('admin/prepared_posts_content', $data); } // ... } $tm_ms_controller = new TmMS_Controller(); add_action('init', array(&$tm_ms_controller, 'init'), 1, 999); 

Fügen Sie css statementen irgendwo hinzu:

 #mail-subscriber-options-link-wrap { float: right; height: 23px; padding: 0; margin: 0 0 0 6px; font-family: sans-serif; } #mail-subscriber-options-link-wrap { -webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; } /* screen options and help tabs */ #mail-subscriber-options-link-wrap { border-right: 1px solid #d1e5ee; border-left: 1px solid #d1e5ee; border-bottom: 1px solid #d1e5ee; background: #eff8ff; background-image: -webkit-gradient(linear, left bottom, left top, from(#def1ff), to(#eff8ff)); background-image: -webkit-linear-gradient(bottom, #def1ff, #eff8ff); background-image: -moz-linear-gradient(bottom, #def1ff, #eff8ff); background-image: -o-linear-gradient(bottom, #def1ff, #eff8ff); background-image: linear-gradient(to top, #def1ff, #eff8ff); } #mail-subscriber-options-posts{ padding: 0; margin: 0; } 

Bildschirme: Ergebnis des Skripts funktioniertCodearchitekturFunktion um HTML zu generieren

Ist das möglich?

Nicht ohne ein bisschen JavaScript.

Wird es möglich sein?

Diese beiden Registerkarten werden in WP 3.3 in der Admin-Leiste in ein Menü umgewandelt. Schau dir die Beta an.