uAPI и SEO (объединение)

голоса: 0

Аннотация: Благодаря SEO модулю можно задавть кастомные url для модулей и материалов, что я собственно и делаю. Мне нужно выполнить ajax запрос к конкретному материалу с измененным url, через php uAPI. Запрос по дефолтному url (к примеру load/1-2-1) выполняется нормально, но как выполнить запрос к кастомному url, не имея id? Приходила в голову идея с созданием бд, но на uCoz это запрещено, только если убивать модуль...

З.ы. Php и SEO оплачены

Собственно сам вопрос: есть ли возможность получать через uAPI информацию о материале по кастомному url? Если нет, то будет ли добавлена поддержка?

| Автор: | Категория: PHP и API на uCoz

Ответов: 1

Голоса: +1
 
Лучший ответ

В любом случае, чтобы обратиться по uAPI к конретному материалу нужно знать его id. Другим вариантом можно получить список всех материалов и в нем найти нужный материал по ссылке. Если бы вы описали что делаете и что хотите получить, то можно было бы что-то конкретное посоветовать.

| Автор:
Выбор ответа лучшим | | Автор: Yuri_Geruk
Получение списка всех материалов будет сильно замедлять работу (в теории).

Подобный вопрос вызван в результате написания кода для tooltip с ajax запросом, который обращается в вики базу(модуль board) и получает данные через uAPI. Но ссылка для ajax запроса строится на основе кастомного url (у каждого материала уникальна).
N1cE,

Т.е. у вас есть ссылка на материал в модуле board и вы хотите оттуда получить какие-то данные? Может вам проще обращаться методом get непосредственно на страницу материала модуля board  и брать нужные данные из id элементов? Допустим нужное описание содержится в div id="message". Делаете гет на страницу и берете текст из этого id:

$.get('/board/blabla', function(data) {
    var message = $('#message', data).text();
    $('#id тултипа').html(message);
});

Приходила в голову идея с созданием бд, но на uCoz это запрещено

Используйте текстовую БД SQLite. В ней хранить связь ссылка - id материала в board. Что такое SQLite и с чем едят я думаю найдете в интернете. Коротко, ajax`om передаете ссылку. Смотрите в бд соответствие этой ссылке id материала в board. Далее, зная id материала, получаете данные по api. Запросы в SQLite идентичные MySQL

Александр Леонов,

Получать данные через get или load не актуально, уже проверено + есть вероятность создания мобильного клиента для сайта, а там лучше использовать api с json результатом, нежели использовать парсеры html кода.

А вот идея с текстовой бд не плохая, хотя это опять же трата времени на написание парсера, чтобы ее заполнить + лишнее обращение. На данный момент актуальное решение.

Хотелось бы чтобы uCoz объеденили эти 2 "модуля", на базовом уровне...

...