WHAT IS THIS MODULE FOR?
You may need it when you want to:
-
export and/or import menu(s)
-
create a menu, without specific details about where the menu links
will point to. You may need this when you want to create a prototype of your future site,
or when you haven't decided yet where each menu link will point to. The module will
create the menu for you using optionally provided external URLs or local Backdrop paths.
See the import file structure for details. -
create a menu with some/all links pointing to stub content.
You may need this when you want to create a prototype of your future site,
and you haven't decided yet about the content but you need some tangible content
to be available. -
update an existing menu by adding new items. You may add new items the same way as described
in points 1 and 2 above. -
reorganize existing menu by means of a text file instead of manual dragging.
-
create a site from scratch using exportables (features) and need a way to create menus
Installation
- Install this module using the official Backdrop CMS instructions at
https://backdropcms.org/guide/modules.
USAGE INSTRUCTIONS
IMPORT
-
Install the module and configure permissions to allow import.
-
Prepare a site map file
Menu structure must follow this example:
Page1
- Page2
- Page3
Page4
- Page5
-- Page6
or this
Page1
* Page2
** Page3
Page4
* Page5
** Page6
*** Page7
You may optionally specify path alias (alternative path)
or external URL. You need to put it after node's title using JSON format:
External URLs should ALWAYS start with "http://". Also, you can provide
a description for menu item(s), language code ("en","it","fr" etc.), hidden/expanded attributes.
Use examples from "tests" directory for better understanding of the syntax.
Here is a quick sample:
Page1 {"url": "node/1", "description": "This is an optional description"}
- Page2 {"hidden":true}
- Page3 {"description": "The line above and this one will point to <front>"}
Page4 {"url": "http://domain.com/", "description": "Visit domain.com!", "expanded":true}
- Page5 {"url": "http://mail.com/index.php"}
-- Page6 {"url": "non/existent/path", "description": "will be replaced with <front>"}
Space(s) between indentation symbol "" or "-" and menu/node title are optional,
however you cannot put spaces between indentation symbols like " * *" or "-- - -".
-
Go to "Structure" -> "Menus"
-
Select "Menu import" tab.
-
Select the site map file created earlier and specify necessary options.
You may want to create empty nodes on import here. If this is the case,
you have to specify additional information. A handy feature could be creation
stub nodes with path aliases instead of default node/x. Be sure to provide
aliases and choose "Create path alias" option. -
Submit and see the new menu structure with stub content created automatically.
EXPORT
-
Go to "Structure" -> "Menus"
-
Select "Menu export" tab.
-
Select the menu and your options.
-
Save the file (and probably use it later for import)
Issues
Bugs and Feature requests should be reported in the Issue Queue:
https://github.com/backdrop-contrib/menu_import/issues
Current Maintainer
- Attila Vasas (https://github.com/vasasa).
Credits
- Ported to Backdrop CMS by Attila Vasas (https://github.com/vasasa).
- Originally written for Drupal by lex0r (https://www.drupal.org/u/lex0r).
License
This project is GPL v2 software. See the LICENSE.txt file in this directory for
complete text.