First I want to thank all of you who responded. I truly love this community and wish I was as great a programmer as you all!
I decided to go with my own custom Javascript buttons because 1) I am trying to keep my plugins to a minimum, and 2) this way gives me more control.
If anyone is interested, I will explain below about what I did and why it works for me.
What I needed: a way to set an order status AND variable order-related text for my orders. This is important if you have many different messages you send to customers. For example, you may want to say something different to a shipped Download order versus a shipped Physical Item order.
Or let's say that you have one Order Status that says "Processing"........but that could mean a few different things, depending on the items you sell. For example, I could sell an item I have in my local stockroom, or I could sell an item that takes me 2 days to dropship from another location. Both orders would go into a "Processing" status, but I may want to email two different messages to those customers.
So I have two BUTTONS: "Processing" and "Processing 24-36". Depending on which button I click, it will set the status to PROCESSING for both, but it will copy to clipboard two completely different status messages.
Here is an image of what part of my Orders Page looks like, with different buttons:

How it works:
1. Press the button you want depending on the predefined status of your order. This will copy to clipboard your predefined text, and also set the status in the dropdown menu.
2. Paste the clipboard to the textarea box and UPDATE the customer.
The code is very simple. Create as many buttons as you need with this line of code:
Code:
<button onclick="myFunction('2','Hi <?php echo $FirstName[0]; ?>! Thank you for choosing to shop with us! We are currently processing your order. We expect your items to ship within the next 24 hours. We will email you again at that time. \r\rIf you have any other questions please let us know.')">Processing</button>
The first parameter ('2') is whatever you want the dropdown status to be. In our case (and probably most users), 2 = Processing. The next parameter is the text you want to copy to the clipboard. You can even put in variables like the customer's first name like we do, or anything else you can pass to it.
Then you simply need this function below your buttons:
Code:
<script>
function myFunction(status,text) {
document.getElementById("statusUpdateSelect").value = status; // Set the status
navigator.clipboard.writeText(text); // Copy text to clipboard for pasting
}
</script>
Again, I am not a very good programmer, but this solution is easy and works for me with minimal changes to the original ZenCart orders.php file.
Bookmarks