TYPO3 (v9.5) Загрузка новостей с помощью Ajax
Я хотел бы загрузить подробное представление списка новостей через Ajax. Перезагрузка страницы не является хорошим UX - было бы лучше, если бы старые детали исчезали, в то время как список остается на месте слева (или где бы то ни было), и менялся только подробный вид статьи.
Проблемы:
- SEO может сломаться
- Уникальные URL-адреса для статьи могут быть проблемой без расширения Новости
Я пытаюсь заставить это работать: https://gist.github.com/markhowellsmead/98de3dbaaec2faf52e0863907b5e403e
также смотрите: http://unterricht.lacheiner.net/index.php?id=217 Это пример загрузки дополнительных элементов списка новостей.
Я также смотрю на получение подробного URL-адреса и использую его для загрузки сведений со страницы с уникальным шаблоном только для сведений, например www.example.com/?type=9999, который содержит только подробности.
наконец, глядя на URL-маршрутизации http://www.softfinity.com/blog/an-simple-introduction-to-url-routing/
1 ответ
Я бы не рекомендовал это, поскольку это нарушит поведение браузера по умолчанию, например, вперед и назад, затруднит прямую ссылку на новость и т. Д. Но если вы действительно хотите это сделать, я бы сделал это, добавив click
событие для тега a для ссылки на страницу сведений в представлении списка, получение URL-адреса, получение страницы сведений с помощью ajax, затем получение только той части страницы, которую я хочу, и ее отображение.
Например (используя jQuery):
$('div.newsList div.item a').click(function() {
doStuffToShowItsLoading();
//
$.ajax(this.href, {
dataType: 'html',
success: function(jqXHR, textStatus) {
var detailHtml = $(jqXHR.responseText).find('div.newsDetails');
$('div.newsDetail').html(detailHtml);
doStuffToStopShowingItsLoading();
},
error: function() {
alert('Something went wrong');
}
});
return false;
});
Таким образом, ссылки могут все еще следовать поисковым системам или людям, у которых отключен JavaScript.