Hi Christiane, Welcome
I think this is close to what you are trying to do, it looks weird because you don't have enough observations by site/month to calculate se, but you can use this as a starting point.
Also, notice the way I'm posting the data, this is the correct way of sharing sample data, you can use datapasta package to do the same.
library(tidyverse, quietly = TRUE)
StandardMethodChla <- data.frame(stringsAsFactors=FALSE,
date = as.Date(c("2013-07-18", "2013-08-14", "2013-09-19", "2013-07-18",
"2013-08-14", "2013-09-18", "2013-07-18", "2013-08-13",
"2013-09-18", "2013-07-19", "2013-08-13", "2013-09-18")),
year = c(2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013,
2013, 2013),
month = c("July", "August", "September", "July", "August", "September",
"July", "August", "September", "July", "August", "September"),
site = c("A1", "A1", "A1", "A2", "A2", "A2", "A3", "A3", "A3", "A4",
"A4", "A4"),
sample = c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3),
chla = c(0.001082, 0.010676, 0.00651, 0.000772, 0.002106, 0.009325,
0.000227, 0.011545, 0.015313, 0.000297, 0.014848, 0.028509)
)
StandardMethodChla %>%
group_by(site) %>%
mutate(se = sd(chla)/sqrt(length(chla))) %>%
ggplot(aes(x = site, y = chla, fill = month)) +
geom_bar(stat="identity", alpha=0.5,
position=position_dodge()) +
geom_errorbar(aes(ymin=chla-se, ymax=chla+se), width=.2, colour="orange",
position=position_dodge(.9))

Created on 2019-01-25 by the reprex package (v0.2.1)