You can have pages live in more than one place in your navigation by creating a redirect to one “official” place the page lives.
- Create a new template called “internal_link” with a PHP redirect and the custom field name for the URL value (PHP code below)
- Allow this template to use PHP under the template preferences
- Make a new channel named “Internal Link” with a custom field using only our StructureFrame fieldtype
- Make this channel managed by Structure under the module channel settings and set the default template to your new “internal_link” template
- Assign a new page to this new channel (named the exact same title if desired) and upon visiting you will be redirected to the original page location
Example
<?php
header( "Location: {exp:channel:entries}{your_structureframe_field}{/exp:channel:entries}" );
exit;
?>
Note: Make sure your channel has Automatically turn URLs and email addresses into links? turned off under the channel settings