Yes. There are many ways to do it. The one that I will show you is compatible with all kind of themes that you may use whether it is classic, block, etc.
You will have to create a custom plugin integrating shortcodes that will read your spreadsheet file, extract a specific field corresponding to an ID sent as a URL parameter, and finally display that content.
==== INSTRUCTIONS FOR USE ====
Create your spreadsheet with the following columns as header:
Those Names will be used to identify the column position when extracting a specific field field.
Next, export that spreadsheet as a CSV file. (For example database.csv)
‘ID’ will contain a unique ID identifying the guest name records. This value will be sent as the URL parameter of the digital invitation. It is better not to use an incremented number to avoid people to iterate and see all the invitations.
Design the page of the invitation and name it for example “invitation”. That page is then accessed as for example https://www.example.com/invitation/?id=XYZ
'XYZ'
will indicate the ID of the guest name in your spreadsheet for the extraction of the data to populate the invitation page.
That invitation page, will contain some placeholders for the guest name and the number of seats. They will be filled using shortcodes. For example:
[csv-data filename="database.csv" ID="XYZ" displayColumn="Name" ]
This shortcode will be designed to read a CSV file named ‘database.csv'
, extract the line having 'XYZ'
as ID and finally display the column named "Name"
.
==== IMPLEMENTATION ====
You can find the implementation steps below:
- Create the plugin structure. https://developer.www.ads-software.com/plugins/
- Create the code for the shortcode. https://codex.www.ads-software.com/Shortcode_API
- The shortcode will execute the following actions:
I hope this will help.