Doriți să puneți secțiunea de administrare WordPress în modul de întreținere fără a afecta site-ul web? Deși probabil există un plugin pentru asta, am creat un fragment de cod rapid pe care îl puteți utiliza pentru a activa modul de întreținere doar pentru administrator în WordPress.
Instrucțiuni:
Tot ce trebuie să faceți este să adăugați acest cod în fișierul functions.php al temei dvs. sau într-un plugin specific site-ului:
function admin_maintenace_mode() {
global $current_user;
get_currentuserinfo();
if($current_user->user_login != 'ADMIN_NAME') { ?>
<style> .updated{margin:30px !important;} </style><?
wp_die('<div id="message" class="updated"><p><b>Maintenance mode:</b> We are currently making updates. Everything will be online shortly.</p></div>');
}
}
add_action('admin_head', 'admin_maintenace_mode');
Nu uitați să schimbați ADMIN_NAME în codul de mai sus cu numele de utilizator al contului dvs. de administrator WordPress.
Notă: Dacă aceasta este prima dată când adăugați fragmente de cod în WordPress, consultați ghidul nostru despre cum să adăugați corect fragmente de cod în WordPress, pentru a nu vă defecta accidental site-ul.
Dacă v-a plăcut această secțiune de cod, vă rugăm să luați în considerare vizionarea celorlalte articole de pe site, cum ar fi: peste 50 de cele mai bune teme responsive WordPress și cum să creați un formular de înregistrare personalizat pentru utilizatori în WordPress.
Mulțumim Debjit Saha pentru fragmentul grozav!
Primesc următoarea eroare când o introduc în pluginul meu.
2020/04/29 13:08:35 [error] 1496#1496: *8 FastCGI sent in stderr: “PHP message: PHP ParseError: syntax error, unexpected end of file in /my/project/path/wp-content/plugins/a-plugin/a-plugin.php on line 55
După ce am modificat fragmentul la următorul, a funcționat fără probleme.
function admin_maintenace_mode() { global $current_user; get_currentuserinfo(); if($current_user->user_login != ‘ADMIN_NAME’) { ? .updated{margin:30px !important;} Mod de mentenanță: Efectuăm în prezent actualizări. Totul va fi online în curând.'); } } add_action(‘admin_head’, ‘admin_maintenace_mode’);
Cu stimă,
Michael Hochleitner
Acest lucru ar fi trebuit făcut pe baza rolului utilizatorului, apoi ar fi fost mai utilizabil
Ați putea verifica valoarea $current_user->user_level în acest caz. Consultați acest fragment aici: https://www.isitwp.com/redirect-user-after-login/
Mulțumesc Kevin. Sunt într-o situație similară cu squarecandy. Nu vreau ca oamenii să-și modifice site-ul în timp ce îi migrez la compania mea de găzduire web.
Super – mulțumesc.
Acest lucru a funcționat pentru mine – trec între servere și nu am vrut ca utilizatorii să-și editeze site-urile între momentul în care am început să copiez totul și momentul în care am făcut trecerea la noul server.