Plugin – BP Custom Pages
BP Custom Pages is a BuddyPress plugin that allows site admin to set up to 20 custom pages within a BP users profile, to display any information that is required.
A big issue with BuddyPress is that in order to display user specific information within a custom page, the BP Displayed User ID has to be set. This plugin allows for such custom pages to be created within the users BP profile therefore allowing the displayed user to be set and retrieved by widgets and shortcodes used on the page.
The plugin also works with page builders, allowing advanced layouts to be created with ease.
The name of the “Custom Pages” directory can be changed via a simple setting, making sure you can have a completely custom setting.
On activation the plugin sets up a new custom post type – bp-custom-pages. This creates a directory menu in WordPress admin of “BP Custom Pages”. So long as there are no pages in this directory then the Custom Pages profile menu item will not be available, however create a new page here and the Custom Pages tab will appear in the users menu, it’s pane name will be used to create a menu item in the Custom Pages tab.
As an extra feature the profile specific url used to view the post has also been provided with a shortened alias, so for example instead of the rather long sitename/members/username/bp-custom-pages/pagename the shortened url structure of sitename/pagename/username can be used, allowing users to share short and easy to remember links.
Due to this, it’s important that some page names are avoided – basically do not use pagenames that duplicate existing BuddyPress slugs, for example groups, members etc.
Note: The pages this plugin creates on each profile are visible to every user visiting that members profile. If you want to set up private pages only viewable by the member who owns the profile you should use BP Custom Pages Pro which creates both public and private pages.
On activation, the plugin adds a new admin menu of “BP Custom Pages”:
Once active, you can navigate to “Settings” and change the menu name used for the custom pages:
Then the you can add your custom pages:
Once those pages are published, they will appear in the users profile menu: