2013-11-20 2 views
0

моя проблема: у меня есть таблица, которая обновляется каждые 8 ​​секунд через плагин «Tabledown Ajax Refresh». Внутри этой таблицы есть Галерея изображений, которая меняет изображения каждый раз после перезагрузки (другой плагин называется «случайные изображения»)!Проблема или проблема с кэшем AJAX в Wordpress

Все работает отлично, когда я вошел в Wordpress. Но в качестве незарегистрированного пользователя Галерея изображений не изменится. Ajax Reload все еще работает - только Галерея не изменится.

Я предполагаю, что это связано с крючками Ajax. Но я действительно потерялся здесь и не знаю, как я могу заставить его работать так, как это происходит, когда я вошел в Wordpress. Или, может быть, это проблема кэширования для незарегистрированных пользователей?

Вкратце: Ajax очищает кеш обновленного сайта (в данном случае таблицы) только при входе в систему как admin на wordpress.

Если это помогает, это один и только PHP файла для используемого АЯКС-обновления-плагин:

https://gist.github.com/atreju2204/7564597

Любые предложения ??

+0

Для этого вам необходимо использовать wp_ajax_nopriv_my_action, чтобы он работал без админ 'add_action ('wp_ajax_my_action', 'my_action_callback'); add_action ('wp_ajax_nopriv_my_action', 'my_action_callback'); ' – Popnoodles

+0

Привет, спасибо за подсказку. Я уже пробовал это. Но я php/js-Beginner и понятия не имею, что устанавливать как «my_action» и «action_callback». Можете ли вы сказать мне, посмотрев файл PHP? – atreju2204

+0

Я не слишком горячий на wp, поэтому я не публиковал ответ, но на это много раз ответили. Искать больше. – Popnoodles

ответ

0

oh и фактическая загрузка ajax отлично работает как не-админ! Так что я думаю, что, может быть, какой-то в «кеш до АЯКС перезагрузки» -thing не работает должным образом кэширование

Избегайте, делая URL уникальным JavaScript

url='yourpage.php'; 
url = url + '?_ts=' + new Date.getTime().toString(); 

Если уже вары

строку запроса
url='yourpage.php?a=b&c=d'; 
url = url + '&_ts=' + new Date.getTime().toString(); 
+0

Поскольку я очень новичок в этом. что именно мне нужно поместить в файл JS, когда URL-адрес моего сайта - index.php? Я узнал, что JS начинается с $ ... Извините, если я чувствую себя крайне глупо. – atreju2204

Смежные вопросы