Creating an custom admin page from scratch

Yes, WordPress does have plugins that allow you to create a custom admin page or dashboard with limited access — so that users (like other admins or staff) can access only selected features, not the full admin panel. Recommended Plugins for Custom Admin Pages / Access Control Adminimize (Free) User Role Editor (Free + Pro) … Read more

How to restore post to pending status (no draft)

The official documentation for wp_untrash_post documents a filter for setting the status that it will use: https://developer.wordpress.org/reference/functions/wp_untrash_post/ This filter can be used to return pending instead as the status. If that’s not an option though, you could set the post status to pending after calling wp_untrash_post, it doesn’t have to happen in a single function … Read more

How to prevent a user from updating other users in WordPress?

I’ve implemented my “dirty” solution as follows. If there is an better or cleaner approach, feel free to provide an answer: function stop_access_profile() { global $pagenow; if ($pagenow != ‘user-edit.php’) { return; } $user_id = get_current_user_id(); $profile_id = intval($_GET[‘user_id’]); // Some logic implementation to decide whether the current user can see the current profile // … Read more

When using https, WordPress doesn’t use https for CSS and JavaScript, and admin doesn’t work. How do I fix this?

Check two things: in the wp-options table, the site URLs (in two places) should be the full URL, as in https://www.example.com . check the site’s htaccess file for proper rewrite of http to https. For a htaccess rule, this one works in most case: RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] Then look … Read more