Preheat oven to 350°F (175°C). Grease and flour a 9×5 inch loaf pan.
In a large bowl, whisk together flour, sugar, baking powder, and salt.
In a separate bowl, whisk together eggs, milk, vegetable oil, orange zest, and orange juice.
Pour the wet ingredients into the dry ingredients and mix until just combined. Do not overmix.
Gently fold in the fresh cranberries (and walnuts/pecans, if using).
Pour the batter into the prepared loaf pan and bake for 50-60 minutes, or until a toothpick inserted into the center comes out clean or with a few moist crumbs.
Let the bread cool in the pan for 10 minutes before transferring it to a wire rack to cool completely before slicing.