{"id":352237,"date":"2026-08-21T07:58:18","date_gmt":"2026-08-21T07:58:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/deskmode-suite\/"},"modified":"2026-08-21T07:57:52","modified_gmt":"2026-08-21T07:57:52","slug":"deskmode-suite","status":"publish","type":"plugin","link":"https:\/\/ca-valencia.wordpress.org\/plugins\/deskmode-suite\/","author":14903808,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.24","stable_tag":"1.0.24","tested":"7.1","requires":"5.6","requires_php":"7.4","requires_plugins":null,"header_name":"Deskmode Suite","header_author":"3web.it","header_description":"Customize your WordPress admin: dashboard theme, dark mode, menu customizer, activity log, site health and network tools (WHOIS, DNS, SSL, IP lookup).","assets_banners_color":"161b27","last_updated":"2026-08-21 07:57:52","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/www.deskmode.app\/","header_author_uri":"https:\/\/www.3web.it","rating":0,"author_block_rating":0,"active_installs":0,"downloads":27,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.24":{"tag":"1.0.24","author":"3webit","date":"2026-08-21 07:57:52"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3658461,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3658461,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3658461,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.24"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3658499,"resolution":"1","location":"assets","locale":"","width":2000,"height":1100},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3658461,"resolution":"2","location":"assets","locale":"","width":2000,"height":1100},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3658461,"resolution":"3","location":"assets","locale":"","width":2000,"height":1100},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3658461,"resolution":"4","location":"assets","locale":"","width":2000,"height":1100},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3658461,"resolution":"5","location":"assets","locale":"","width":2000,"height":1100},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3658461,"resolution":"6","location":"assets","locale":"","width":2000,"height":1100},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3658461,"resolution":"7","location":"assets","locale":"","width":2000,"height":1100}},"screenshots":{"1":"The General screen, with the accent colour picker and the dashboard options.","2":"The dashboard in dark mode, with the light\/dark button always within reach.","3":"The menu customizer: drag items into order, rename them and change their icons.","4":"The activity log, with filters, the fourteen-day chart and one row per event.","5":"Site health: the score with every check spelled out, and the load-time charts.","6":"Network Info: WHOIS, DNS records and SSL expiry for a domain, plus IP lookup.","7":"Maintenance mode: the holding page visitors see, served with a 503 status."}},"plugin_section":[262246],"plugin_tags":[8531,83,2756,173231,434],"plugin_category":[],"plugin_contributors":[276789],"plugin_business_model":[],"class_list":["post-352237","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-activity-log","plugin_tags-admin","plugin_tags-admin-theme","plugin_tags-dark-mode","plugin_tags-dashboard","plugin_contributors-3webit","plugin_committers-3webit"],"banners":{"banner":"https:\/\/ps.w.org\/deskmode-suite\/assets\/banner-772x250.png?rev=3658461","banner_2x":"https:\/\/ps.w.org\/deskmode-suite\/assets\/banner-1544x500.png?rev=3658461","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/deskmode-suite\/assets\/icon-256x256.png?rev=3658461","icon_2x":"https:\/\/ps.w.org\/deskmode-suite\/assets\/icon-256x256.png?rev=3658461","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-1.png?rev=3658499","caption":"The General screen, with the accent colour picker and the dashboard options."},{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-2.png?rev=3658461","caption":"The dashboard in dark mode, with the light\/dark button always within reach."},{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-3.png?rev=3658461","caption":"The menu customizer: drag items into order, rename them and change their icons."},{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-4.png?rev=3658461","caption":"The activity log, with filters, the fourteen-day chart and one row per event."},{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-5.png?rev=3658461","caption":"Site health: the score with every check spelled out, and the load-time charts."},{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-6.png?rev=3658461","caption":"Network Info: WHOIS, DNS records and SSL expiry for a domain, plus IP lookup."},{"src":"https:\/\/ps.w.org\/deskmode-suite\/assets\/screenshot-7.png?rev=3658461","caption":"Maintenance mode: the holding page visitors see, served with a 503 status."}],"raw_content":"<!--section=description-->\n<p>The dashboard is the part of your work that clients see every single day, and by\ndefault it looks like everyone else's. Deskmode Suite changes that, and adds the\ntools you would otherwise install three separate plugins for.<\/p>\n\n<p>Everything happens in the admin area. Your public site is never touched: no\nchanges to your theme, and no scripts added to the pages your visitors see.<\/p>\n\n<h4>Dashboard theme<\/h4>\n\n<p>Three accent colours, chosen from the admin bar on any screen. The colour flows\nthrough the menu, buttons, panels and charts, so you pick it once. Where the\naccent is used as a background, the text colour is calculated from the\nbackground's luminance rather than assumed, so it always clears the contrast\nratio the WCAG require.<\/p>\n\n<h4>Dark mode, per user<\/h4>\n\n<p>A floating button flips the whole dashboard, instantly and without a reload. The\npreference belongs to each user rather than the site, so you can work in dark\nwhile a colleague works in light. It steps back on two screens on purpose: the\ntheme customizer, where a dark frame would skew your reading of the colours you\nare choosing, and Elementor, which forces a light background on its own panels.<\/p>\n\n<h4>Menu customizer<\/h4>\n\n<p>Drag items into order, rename them into words your client understands, change the\nicon, and hide the ones nobody needs. Counters for pending updates and comments\nstay attached to their items and keep working. On the Menus screen you also get\ntwo buttons per item, to remove one or to\n<a href=\"https:\/\/www.deskmode.app\/duplicate-a-wordpress-menu-item\/\">duplicate a menu item<\/a>\nin a single click.<\/p>\n\n<h4>Activity log<\/h4>\n\n<p>Eighteen event types in one filterable table: sign-ins, failed logins, password\nresets, accounts created and deleted, role changes, plugins activated, theme\nswitches, updates installed, content published or deleted. Each entry records the\nuser, the IP address and the time. Events go into a dedicated database table\nindexed by timestamp, action and IP, rather than into an option row that\nWordPress would load and rewrite on every request.<\/p>\n\n<h4>Site health and charts<\/h4>\n\n<p>A score out of a hundred with every reason spelled out: PHP version, HTTPS in the\nadmin, errors visible to visitors, an enabled file editor, the weight of\nautoloaded options, pending updates, and the state of the database. Alongside it,\ncharts of your site's build time over thirty days and of how the score moves. The\ncharts are SVG generated on the server, so there is no JavaScript library to\ndownload and they work under strict content security policies.<\/p>\n\n<h4>Maintenance mode<\/h4>\n\n<p>A holding page while you work, served with the correct 503 status and a\nRetry-After header, so search engines understand the site is temporarily down\nrather than replacing your indexed pages with \"back soon\". The login page stays\nreachable, so you cannot lock yourself out.<\/p>\n\n<h4>Network tools<\/h4>\n\n<p>WHOIS over port 43, DNS records, SSL certificate expiry, and\n<a href=\"https:\/\/www.deskmode.app\/wordpress-ip-lookup\/\">IP lookup<\/a> with country, ISP and\nAS number, all from one screen. Useful when a login attempt\nlooks suspicious, or when a client asks why their certificate expired.<\/p>\n\n<h4>Honest about the limits<\/h4>\n\n<p>CPU time and memory per plugin are not shown, because from inside WordPress they\ncannot be measured reliably. Database time is the slice that genuinely can be\nmeasured, and that is the slice you get. Every module can also be switched off\nfrom wp-config.php, without dashboard access, for when something goes wrong.<\/p>\n\n<p>Deskmode Suite is built by <a href=\"https:\/\/www.3web.it\/\">3WEB<\/a>, an Italian company that\nhas been building and maintaining websites and servers since 1999. Full\ndocumentation and a page for every feature are on the\n<a href=\"https:\/\/www.deskmode.app\/\">Deskmode website<\/a>.<\/p>\n\n<h4>What Deskmode Pro Suite adds<\/h4>\n\n<p>The free version is a complete plugin, not a trial: nothing here expires and\nnothing is limited by a quota. If you look after sites for other people, these\nare the tools the Pro version adds, and they are the reason it exists.<\/p>\n\n<ul>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-login-security\/\"><strong>Login security<\/strong><\/a> - failed-attempt limits, blocklist and allowlist with CIDR notation, allowed login hours, and IP reputation scoring.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-geofencing\/\"><strong>Geofencing<\/strong><\/a> - allow logins only from the countries you actually work in, either refusing the attempt or never rendering the login form at all.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/two-factor-authentication-for-wordpress\/\"><strong>Two-factor authentication<\/strong><\/a> - TOTP with any authenticator app, or codes by email, with recovery codes and a captcha on the login form.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-login-alert-email\/\"><strong>Security email alerts<\/strong><\/a> - an email when a login is blocked, and when someone signs in from an address you have never seen before.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-hardening\/\"><strong>Hardening<\/strong><\/a> - block XML-RPC, stop user enumeration, and move wp-login.php to an address of your own.<\/li>\n<li><strong>Custom login page<\/strong> - your logo, your colours and your copyright on the page your clients see every day.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-custom-404-page\/\"><strong>404 page and monitor<\/strong><\/a> - a branded 404 page with a search box, and a log of the addresses that trigger it, with hit counts and referrers.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-dashboard-widgets\/\"><strong>Security summary widget<\/strong><\/a> - blocked attempts, failed logins and the countries they come from, summarised on the dashboard the moment you sign in.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/hide-wordpress-admin-notices\/\"><strong>Plugin notices<\/strong><\/a> - collect other plugins' promotional notices into one line, with per-plugin exceptions, while blocks containing an error stay visible.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-email-log\/\"><strong>Mail log<\/strong><\/a> - every email your site sends, with recipient, subject, outcome and the plugin behind it.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-backup-to-s3\/\"><strong>Backup and restore<\/strong><\/a> - database and files to your own S3-compatible storage or FTP, with credentials encrypted at rest.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-database-cleanup\/\"><strong>Database cleanup<\/strong><\/a> - expired transients, largest tables and the heaviest autoloaded options, with only the safe things actually deleted.<\/li>\n<li><a href=\"https:\/\/www.deskmode.app\/wordpress-search-and-replace\/\"><strong>Search and replace<\/strong><\/a> - serialization-aware, with a mandatory preview, for changing your site URL after a migration.<\/li>\n<li><strong>Menu per role<\/strong> - hide admin menu sections for specific roles, or deny access to them properly.<\/li>\n<li><strong>Twelve accent colours<\/strong> - twelve instead of three, across menus, buttons, charts and the login page.<\/li>\n<\/ul>\n\n<p>Details, screenshots and pricing are on the\n<a href=\"https:\/\/www.deskmode.app\/wordpress-admin-tools\/\">Deskmode Pro Suite page<\/a>.\nDeskmode Pro Suite is a separate download from our own site: there is no upgrade\npath from within this plugin, and no account or licence key is needed to use the\nfree version.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin does not contact any external server on its own. Every request below\nhappens only after an explicit action by an administrator.<\/p>\n\n<p><strong>Network tools (WHOIS, DNS, SSL, IP and AS lookup)<\/strong>\nThese run only when you type an address or a domain into the Network Info screen\nand press the lookup button. What is sent is the address or domain you typed, and\nnothing else: no site content, no visitor data. The services involved are:<\/p>\n\n<ul>\n<li><strong>ip-api.com<\/strong> - IP geolocation: country, ISP and AS number for the address you\nentered. Terms: https:\/\/ip-api.com\/docs\/legal - Privacy: https:\/\/ip-api.com\/privacy<\/li>\n<li><strong>stat.ripe.net<\/strong> - autonomous system data, used when bgpview does not answer.\nTerms: https:\/\/www.ripe.net\/about-us\/legal\/terms-of-service\/ -\nPrivacy: https:\/\/www.ripe.net\/about-us\/legal\/ripe-ncc-privacy-statement\/<\/li>\n<li><strong>api.hackertarget.com<\/strong> - how many domains share the address you entered.\nTerms and privacy: https:\/\/hackertarget.com\/privacy-policy\/<\/li>\n<li><strong>rdap.org<\/strong> - domain registration data for the domain you entered.\nTerms and privacy: https:\/\/about.rdap.org\/<\/li>\n<li><strong>WHOIS servers of each registry<\/strong>, queried on port 43, for domain records not\navailable over RDAP. Only the domain you typed is sent.<\/li>\n<li><strong>openstreetmap.org<\/strong> - map tiles, loaded only when a lookup result is shown on\na map. Terms: https:\/\/osmfoundation.org\/wiki\/Terms_of_Use -\nPrivacy: https:\/\/osmfoundation.org\/wiki\/Privacy_Policy<\/li>\n<\/ul>\n\n<p><strong>Country lookup in the activity log (optional, off by default)<\/strong>\nIf you switch this on in the plugin settings, the IP addresses recorded in the\nactivity log are sent to <strong>ip-api.com<\/strong> to look up their country. The result is\ncached. Nothing is sent while the option is off.\nTerms: https:\/\/ip-api.com\/docs\/legal - Privacy: https:\/\/ip-api.com\/privacy<\/p>\n\n<p><strong>Plugin maintenance check (optional)<\/strong>\nRuns only when you press the scan button on the Site Health screen. The slugs of\nyour active plugins are sent to <strong>api.wordpress.org<\/strong> to check whether they are\nstill maintained. No site content and no personal data are sent.\nTerms: https:\/\/wordpress.org\/about\/ - Privacy: https:\/\/wordpress.org\/about\/privacy\/<\/p>\n\n<p>No telemetry, no usage statistics and no site content are ever transmitted, and\nthe plugin does not phone home to its author. The fonts are bundled with the\nplugin rather than loaded from Google Fonts, so no request leaves your site to\nrender the interface.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>, or install it from the\nPlugins screen in WordPress.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Open Deskmode Suite in the admin menu.<\/li>\n<\/ol>\n\n<p>Nothing is switched on that you did not ask for: each module is independent and\nruns only when you enable it.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20change%20anything%20on%20my%20public%20site%3F\"><h3>Does it change anything on my public site?<\/h3><\/dt>\n<dd><p>No. The plugin loads in the admin area only. Your theme is untouched and no\nscripts are added to the pages your visitors see.<\/p><\/dd>\n<dt id=\"is%20dark%20mode%20a%20site%20setting%20or%20a%20personal%20one%3F\"><h3>Is dark mode a site setting or a personal one?<\/h3><\/dt>\n<dd><p>Personal. It is saved on each user's profile and in the browser, so it applies\ninstantly and follows your account to another computer. Colleagues on the same\nsite are unaffected by your choice.<\/p><\/dd>\n<dt id=\"why%20does%20dark%20mode%20switch%20itself%20off%20on%20some%20screens%3F\"><h3>Why does dark mode switch itself off on some screens?<\/h3><\/dt>\n<dd><p>On the theme customizer and on Elementor screens. Both are designed around a\nlight background, and layering a dark theme over them produces unreadable text.\nReadable and slightly inconsistent beats consistent and broken.<\/p><\/dd>\n<dt id=\"does%20the%20activity%20log%20slow%20the%20site%20down%3F\"><h3>Does the activity log slow the site down?<\/h3><\/dt>\n<dd><p>No. Entries go into a dedicated, indexed database table rather than a WordPress\noption, and the log keeps its ten thousand most recent entries. Writing an entry\nnever triggers an outbound request.<\/p><\/dd>\n<dt id=\"does%20the%20log%20store%20personal%20data%3F\"><h3>Does the log store personal data?<\/h3><\/dt>\n<dd><p>It stores IP addresses and usernames, which count as personal data under the\nGDPR. Collection can be switched off entirely and the log can be emptied at any\ntime. Mention it in your privacy policy along with the retention you apply.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20the%20plugin%3F\"><h3>What happens if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>The site returns to exactly how it was: the default dashboard, no access rules,\nyour theme's own pages. Your settings stay saved, so reactivating brings\neverything back without reconfiguring.<\/p><\/dd>\n<dt id=\"something%20is%20stopping%20me%20from%20signing%20in.%20what%20now%3F\"><h3>Something is stopping me from signing in. What now?<\/h3><\/dt>\n<dd><p>Every module can be switched off from <code>wp-config.php<\/code>, which takes precedence\nover any setting stored in the database, so you do not need dashboard access to\nundo something.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.24<\/h4>\n\n<ul>\n<li>Bug fixes.<\/li>\n<\/ul>\n\n<h4>1.0.23<\/h4>\n\n<ul>\n<li>Bug fixes.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Bug fixes.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Bug fixes.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First public release.<\/li>\n<\/ul>","raw_excerpt":"Give the WordPress admin your colours and dark mode, reorder the menu, keep an activity log, and run WHOIS, DNS and SSL checks.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/352237","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=352237"}],"author":[{"embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/3webit"}],"wp:attachment":[{"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=352237"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=352237"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=352237"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=352237"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=352237"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ca-valencia.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=352237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}