✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Opetusohjelma: Kuinka lisätä mukautettu joukkotoiminto WordPress Adminissa

4

Useimpien WordPress-järjestelmänvalvojan elementtitaulukoiden yläpuolella (esim. viestit, sivut, kommentit, laajennukset ja käyttäjät) löydät WordPressin toiminnot joukkotoimintoihin. Joukkotoimintojen avulla voit tarkistaa useita elementtejä, valita toiminnon ja suorittaa sen kaikille elementeille kerralla. Tässä viestissä tarkastellaan, kuinka lisätä omia mukautettuja joukkotoimintoja WordPress-järjestelmänvalvojaan.

Mukautetun joukkotoiminnon lisäämisestä on tullut paljon helpompaa WordPressin uusimmissa versioissa (4.7 lähtien). Käytettävissä olevia vaihtoehtoja varten on suodatin avattavassa valikossa. toinen suodatin sille, mitä sen pitäisi tehdä, kun vaihtoehtosi valitaan, ja toinen koukku valinnaisen järjestelmänvalvojan ilmoituksen näyttämiseen. Käydään läpi jokainen näistä.

Muokatun joukkotoiminnon lisääminen avattavaan valikkoon

Aloitetaan lisäämällä mukautettu joukkotoiminto avattavaan joukkotoimintovalikkoon. Tätä varten käytämme suodatinta bulk_actions_<screen>, jossa korvataan millä tahansa järjestelmänvalvojan näytöllä, johon haluat lisättävän vaihtoehdon. Tässä on täydellinen yleiskatsaus mahdollisista näytön vaihtoehdoista:

  • bulk_actions-edit-post: Viestityyppi "lähetä" muokkausnäyttöön
  • bulk_actions-edit-page: Viestityyppi ‘sivun’ muokkausnäyttö
  • bulk_actions-edit-<post-type-name>: Mukautetun viestityypin muokkausnäyttö
  • bulk_actions-edit-<custom-taxonomy>: Mukautetun taksonomian muokkausnäyttö
  • bulk_actions-edit-comments: Kommenttiluettelonäyttö
  • bulk_actions-plugins: Lisäosien luettelonäyttö
  • bulk_actions-users: Käyttäjäluettelonäyttö
  • bulk_actions-upload: Mediakirjastoluettelo (toimii vain luettelonäkymässä, ei ruudukkonäkymässä)

Suodatin sovelletaan taulukkoon, jossa on avainarvo-pareja; jossa avaimet ovat toimintojen yksilöllinen avain ja arvot avattavassa valikossa näkyvä tunniste.

Katsotaanpa esimerkkiä. Haluan luoda joukkotoiminnon postausten julkaisemista varten.

add_filter('bulk_actions-edit-post', function($bulk_actions) { $bulk_actions['change-to-published'] = __('Change to published', 'txtdomain'); return $bulk_actions; });

Jos tallennat ja päivität viestien muokkausnäytön, sinun pitäisi nähdä vaihtoehtosi avattavassa valikossa.

Opetusohjelma: Kuinka lisätä mukautettu joukkotoiminto WordPress Adminissa

Tällä hetkellä mukautettu joukkotoimintomme toimii täysin zip. Se on seuraava askel.

Muokatun joukkotoimintomme saaminen tekemään jotain

Liipaistaaksemme jotain valitessasi äskettäin lisättyä vaihtoehtoamme dropwonissa kiinnitämme suodattimen handle_bulk_actions-<screen>. Katso mahdolliset näytön arvot yllä olevasta yleiskatsauksesta. Ilmeisesti kahvan koukun tulee olla sama näyttö kuin näyttö, johon lisäsit joukkotoiminnon ensimmäisessä vaiheessa.

Sinulla on kolme mahdollista argumenttia tässä suodattimessa. Ensimmäinen – se jonka palautat – on itse asiassa URL-osoite, johon WordPressin tulee uudelleenohjata, kun joukkotoimintosi on valmis. Toinen argumentti on pudotusvalikosta valitun toiminnon nimi. Kolmanneksi on joukko kaikkia elementtitunnuksia, jotka on tarkistettu joukkotoimintoa varten. Nämä ovat elementtejä, joihin meidän on sovellettava toimintaamme.

Katsotaanpa, mitä yllä oleva koodi tekee vaihe vaiheelta. Ensin meidän on tarkistettava, oliko suoritettu joukkotoiminto todella mukautettu toimintomme; change-to-published. Ja sitten on meidän tehtävämme tehdä mitä haluamme kaikilla tunnuksilla.

Yllä oleva koodi kiertää kaikkien viestitunnusten läpi ja toimii wp_update_post()jokaisessa muuttaakseen niiden julkaisun tilan julkaistuksi. (Jos haluat tämän olevan tehokasta, sinun kannattaa harkita vain niiden päivittämistä, joita ei todellakaan ole vielä julkaistu).

Kun olemme suorittaneet valitut elementit, meidän on luotava URL-osoite, johon uudelleenohjataan WordPressin valmistumisen jälkeen. Lisäämme mukautetun argumentin annettuun uudelleenohjaus-URL-osoitteeseen. Tämä on valinnainen, mutta välttämätöntä, jos haluamme näyttää järjestelmänvalvojan ilmoituksen. Voimme lisätä mitä haluat. Mutta yllä olevassa esimerkissä lisäämme yksinkertaisesti uuden kyselyn argin, jonka add_query_arg()asetus on ‘ changed-to-published‘ niiden viestitunnusten määrään, joihin tämä vaikuttaa. Tämä on hyödyllistä tietoa ilmoitusta varten.

Näytä ilmoitus, kun mukautettu joukkotoimintomme on tehty

Jos suoritat mukautetun joukkotoimintomme nyt, huomaat, että kun WordPress on suorittanut joukkotoiminnon, se lataa sivun uudelleen seuraavan URL-osoitteen kanssa: "wp-admin/edit.php?changed-to-published=2". "2" on niiden viestien määrä, joihin olemme soveltaneet toimintoamme. Tämän avulla voimme lisätä mukautetun järjestelmänvalvojan ilmoituksen, joka käynnistyy, jos "muutettu julkaistuksi" on asetettu.

Voimme käyttää toimintoa järjestelmänvalvojan ilmoitusten näyttämiseksi admin_notices. Tarkistamme PHP:n globaalin muuttujan, $_REQUESTjoka on täytetty lomakkeella lähetetyillä arvoilla, jos ‘ changed-to-published‘ on olemassa. Jos näin on, se tarkoittaa, että mukautettu joukkotoimintomme suoritettiin juuri. Näytämme sitten tekstiä, mukaan lukien käytettyjen viestien määrä.

Ja siinä se!

Opetusohjelma: Kuinka lisätä mukautettu joukkotoiminto WordPress Adminissa

Muut mukautetun joukkotoiminnon käyttötavat

Muista, että handle_bulk_actions-<screen>koukussa voit tehdä valituille elementeille periaatteessa mitä tahansa. Voit päivittää mukautetun viestisisällön, muuttaa käyttäjien rooleja, lähettää sähköpostia tai lähettää HTTP-pyynnön johonkin kolmannen osapuolen sovellukseen.

Esimerkiksi; jos halusit joukkotoiminnon päivittääksesi mukautetun viestisisällön, joka ilmoittaa, onko viestit vahvistettu vai ei, käyttämällä mukautettua joukkotoimintoa avaimella " mark-as-verified":

add_filter('handle_bulk_actions-edit-post', function($redirect_url, $action, $post_ids) { if ($action == 'mark-as-verified') { foreach ($post_ids as $post_id) { update_post_meta($post_id, 'verified', '1'); } $redirect_url = add_query_arg('mark-as-verified', count($post_ids), $redirect_url); } return $redirect_url; }, 10, 3);

Yhdistä yllä oleva muokattuun sarakkeeseen, joka näyttää "vahvistetun" arvon viestiluetteloissa – kuten teimme tässä viestissä, ja se on erityisen hyödyllinen.

Opetusohjelma: Kuinka lisätä mukautettu joukkotoiminto WordPress Adminissa

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja