Skip to main content
Tartalomjegyzék
< All Topics
Nyomtatás

MainWP Custom Dashboard Extension

Ez a kiegészítő tipikusan nem „szükséges”, hanem felszabadító. Akkor jön szembe, amikor már napi szinten dolgozol a MainWP Dashboardban, és érzed, hogy apró dolgok lassítanak. Egy felesleges gomb. Egy túl sűrű táblázat. Egy információ, amit mindig ugyanott keresel. Semmi nagy, csak sok kicsi.

A MainWP Custom Dashboard Extension ezekre a „mindig ugyanaz a bosszúság” helyzetekre való. Nem a gyerekoldalakat piszkálja, nem rendszert épít át – csak a saját vezérlőpultodat hajlítja a kezed alá.

Mit csinál valójában – és miért fontos, hogy hol fut a kód

A kulcsfontosságú gondolat:
minden kód kizárólag a MainWP Dashboardon fut.

Ez azt jelenti, hogy:

  • nem nyúlsz a child site-okhoz
  • nem kockáztatod, hogy egy ügyféloldalon történik bármi
  • nem kell FTP, fájlmásolás vagy theme hack

A CSS, JavaScript és PHP snippletek az adatbázisban tárolódnak. Emiatt frissítésállóak, és egy mozdulattal ki- vagy bekapcsolhatók. Hibakeresésnél ez aranyat ér.

Hogyan érdemes fejben elhelyezni ezt az eszközt

Nem egy „custom theme” a Dashboardhoz.
Nem is egy kódgyűjtő szemetes.

Ez egy kontrollált snippet-tár, ahol minden módosítás:

  • célzott
  • dokumentálható
  • visszafordítható

Ha a kérdésed az, hogy „Hol lenne a legjobb ezt a kis logikát megírni?”, és a válasz az, hogy „csak a MainWP-ben számít”, akkor jó helyen jársz.

CSS: amikor a felületet szeretnéd „csendesebbé” tenni

A CSS snippletek tipikusan vizuális zajt szednek ki. Nem új dizájnt csinálsz, hanem olvashatóbbá, áttekinthetőbbé teszed a meglévőt.

Például mobilon elrejteni ritkán használt gombokat:

@media (max-width: 782px) {
  .mainwp .button-ignore,
  .mainwp .actions .button[data-action="ignore"] {
    display: none !important;
  }
}

Vagy egy állapot vizuális kiemelése táblázatban:

.mainwp table.wp-list-table tr.is-warning td {
  background: #fff7e6 !important;
}

Itt hamar rájössz egy dologra: a specifitás számít. A MainWP nem „gyenge CSS-sel” dolgozik, ezért néha pontosabb szelektor kell. Ez nem hiba, hanem józan védelem.

JavaScript: apró logika, nagy időnyereség

A JS snippletek ott erősek, ahol mikroműveleteket gyorsítanak.

Gyorsbillentyűk, figyelmeztetések, UI-viselkedés – semmi, ami üzletileg kritikus, de sok apró kattintást spórol.

Például egy billentyű a frissítések megnyitására:

document.addEventListener('keydown', (e) => {
  if (e.target.matches('input, textarea')) return;
  if (e.key.toLowerCase() === 'u') {
    const menuItem = document.querySelector(
      '.mainwp a[href*="page=mainwp_updates"]'
    );
    if (menuItem) menuItem.click();
  }
});

Vagy egy finom emlékeztető, ha régen volt teljes szinkron:

(function () {
  const badge = document.querySelector('.mainwp .last-sync-badge[data-days]');
  if (!badge) return;

  const days = parseInt(badge.getAttribute('data-days'), 10);
  if (days > 7) {
    const note = document.createElement('div');
    note.className = 'notice notice-warning';
    note.innerHTML =
      '<p>Régen volt teljes szinkron. Érdemes lefuttatni.</p>';
    document.querySelector('#wpbody-content')?.prepend(note);
  }
})();

Ez az a kategória, ami nem éri meg pluginba tenni, de sokat ad a napi rutinhoz.

PHP: amikor tényleg tudod, mit csinálsz

A PHP snippletek a legerősebb – és legóvatosabban használandó – részei a bővítménynek. Ezek WordPress-környezetben futnak, de továbbra is csak a Dashboardon.

Példa egy célzott admin üzenetre:

<?php
add_action('admin_notices', function () {
  $page = isset($_GET['page']) ? sanitize_text_field($_GET['page']) : '';
  if (strpos($page, 'mainwp_') !== 0) {
    return;
  }

  echo '<div class="notice notice-info"><p>
    Egyedi információs üzenet a csapatnak.
  </p></div>';
});

A jó hír: szintaktikai hiba esetén a rendszer nem omlik össze.
Visszairányít a szerkesztőbe, és ki tudod kapcsolni a snippletet.

A rossz hír: rossz logikát ugyanúgy tudsz írni, mint bárhol máshol. Ez fejlesztői eszköz, nem játékszer.

Mikor ez a jó megoldás – és mikor nem

Ez akkor ideális, ha:

  • a módosítás csak a MainWP Dashboardra vonatkozik
  • frissítésbiztos megoldást akarsz
  • fontos a gyors ki/be kapcsolás

Nem erre való, ha:

  • a child site-okon akarsz kódot futtatni
  • üzletkritikus logikát írnál
  • több környezeten (staging/éles) eltérően kellene viselkednie

Ott más kiegészítő vagy más eszköz való.

Hogyan érdemes használni, hogy ne legyen káosz

A legjobb gyakorlat meglepően egyszerű:

  • kis snippletek
  • egy funkció = egy snippet
  • beszédes cím és leírás

Így nem egy kódkupacod lesz, hanem egy karbantartható Dashboard-eszköztárad.

Kinek ad valódi előnyt

Ügynökségeknek, akik napi szinten élnek a MainWP-ben.
Üzemeltetőknek, akik a saját folyamataikhoz igazítanák a felületet.
Fejlesztőknek, akik gyors, kontrollált módosításokat akarnak fájlpiszkálás nélkül.

Zárás

A MainWP Custom Dashboard Extension nem látványos.
Nem ad új funkciókat az ügyfeleknek.
Nem „feature”.

Amit ad: komfortot, kontrollt és sebességet ott, ahol dolgozol.
Ha a MainWP már a központod, ez az eszköz finoman, de nagyon hatékonyan teszi valóban a sajátoddá.