Recipes adapted from Fiesta at Rick's and Mexican Everyday by Rick Bayless (W. W. Norton & Company; 2010 and 2005).
In a blender, combine achiote, chiles and sauce, 1/4 cup oil, and 3/4 cup water; blend until smooth, about 5 seconds. Use one-third the marinade to coat pork all over (refrigerate or freeze remaining marinade to use on other meat or fish). Cover pork and refrigerate 1 hour.
Set up a grill for indirect cooking over medium-high. Clean and lightly oil hot grill. Brush onion slices with oil and season with salt. Arrange in a single layer over hot side of grill. Cook until grill marks are dark brown on both sides, 3 to 5 minutes per side, flipping once. Move to cool side of grill and cook until soft, 5 to 8 minutes. Repeat with pineapple. In batches, grill pork over direct heat, about 1 minute per side.
Transfer pork to a cutting board; chop into 1/4- to 1/2-inch pieces. Add to a skillet set on grill to keep warm. Chop onion and pineapple into small pieces, add to skillet, and toss. Season with salt. Serve pork mixture with tortillas and salsa.