You can remove the capabilites delete_pages, delete_others_pages and delete_published_pages from the role which the user is assigned to. This will prevent the complete user role from deleting pages.
To restrict this behavior only to one user, you have to create and assign a dedicated, new role to the user. Look at the Members plugin from Justin Tadlock for more information.
Example: Remove the ability to delete pages from admin role
$role = get_role('administrator');
$role->remove_cap('delete_pages');
$role->remove_cap('delete_others_pages');
$role->remove_cap('delete_published_pages');
More resources
Related Posts:
- get_pages() not ordering as it should
- Editing the Number at the end of Page URLs / Editing Page Slugs
- Pagination Help on Crazy Custom Authors Page
- Create subpage /user/ or /my-profile/ like /author/ with additional query like /user/user123
- Hide page title in WordPress 3.0
- Selecting An image from the Media LIbrary on the frontend
- Custom protected password page with ACF
- Page load requires a trailing “/” [closed]
- Virtual Pages plugins
- Programmatically add a custom page/path/url/route to WordPress
- What is the most idiomatic way to let clients edit phrases in HTML?
- How to merge all my pages into one, while keeping a menu bar?
- How to change URL Custom Page?
- redirect product-category to a custom page
- custom headers for static home page and posts page
- Show posts on a page based on a category and tag(s)
- Split Conference WordPress Page in different years
- Add google org chart to wordpress page
- How to get custom page template being edited in gutenberg editor
- Control Content On Non-Blog Pages
- custom meta box for page default template
- Best practice – pages – ACF or inline coding
- How to hook up search results page to a back-end page?
- How to structure model showcase
- How to customize
- Add a searchbox to the body of a page
- Create page as a file in my theme?
- Featured Image If Else Condition
- Insert menu with a custom walker into page / post body using shortcode?
- How to create “custom page types” with different custom fields in them?
- How to create custom search page
- Creating php pages in wordpress and assigning them to wordpress pages
- How to display page ids as page slug names?
- How to create custom layouts and static pages in themes for clients
- How to make the Pages in WordPress Customized?
- Creating custom page template
- Change Site Logo or Menu Logo Per Page
- change top banner content on specific page
- How to add page content into another page
- Display a specified content on a Page and all its child pages
- Use a custom page with dynamic content as a user profile page
- I want to embed mystream video in my wordpress site
- Swap home page based on user role, Elementor layout breaking
- Taxonomy template is not reading
- New Page/Post Screen Opens an Existing Post
- Static Page, need Last and Next links at the bottom
- How can I create a Custom Page? (not a page template!!)
- wordpress custom posts page not showing
- How to serve an already coded html page in a WP page, to assign a simpler url
- Admin menu disable new/delete page
- Show different pages on site depending on user choice
- WordPress post submit page
- Redirect Every Instance of The Author Template Pages to Custom Author Pages
- Allow arbitrary text after page URL
- Best way to create a page outside of the pages list
- Want home page to click through to two different page types
- Custom single page based on which custom page template is selected
- How to duplicate “Pages” section in the control panel?
- Page template with custom html fields inside a content
- Pass query param to custom page
- Is there a way to have information on one page automatically feed into another? [closed]
- how to add a page
- How to apply styles to the custom page template
- How can I make a search term redirect to a page
- Custom CSS working on home page but not on NEW created PAGE
- Create a page for each database table entries
- How to use standalone Gutenberg (block editor) instance on any my own admin page in WordPress
- Querying multiple WordPress custom fields with AND qualifier
- WordPress custom post types breaks permalink on theme reinstall
- Create a Custom menu item fetched by Product Categories and Sub Categories
- Multi-Site Plugin Activated (Not Network-Activated), What Happens?
- Adding action to save_post, post needs to be saved twice for function to work
- 1 bit audio player
- Outputting posts from post id´s in variable
- How to get pages id in array in get_pages?
- Access post meta in future_to_publish function
- Javascript Solution Remove Specific Tag but leave the rest in a specific DIV
- woocommerce_checkout_fields modifying existing billing_phone label created new field
- How to host 2 subdomains as lookalike destinations under one master domain?
- Custom column working problem
- WPML Plugin Not displaying multilingual Menus
- How to recover permanently deleted blog posts?
- Custom font size nav bar
- Show title bar only on archives / hide it on all posts and pages
- Taking over my late husbands wordpress blog that we shared
- How to customize the WordPress 2014 theme, to have page using less horizontal margin?
- Position a hard-coded menu item
- Trying to set specific image dimensions and crop with ACF
- Using static pages on WordPress site
- Adding Multiple “Parents” in get_categories
- Where’s did this div element come from?
- Adding pub_Date to an RSS feed hosted on WordPress
- Problem with deleting a “Page”
- Remove distraction free mode from teeny editor
- Should disabling a plugin that has been customized by a developer crash the site?
- Show specific posts as static html/php
- Display Custom Posts
- How to place the captcha just below the comments text area
- Multiple posts categorized by day?
- hello can you advise how to fix the error?