Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Разработка расширений / TYPO3 extension development (http://forum.typo3.ru/forumdisplay.php?f=38)
-   -   API TYPO3 для стороннего индексатора (http://forum.typo3.ru/showthread.php?t=8072)

razawa 15.10.2009 11:28

API TYPO3 для стороннего индексатора
 
Подключаю внешний поисковик.
Для индексации содержимого вижу несколько вариантов:

1. Чисто SQL-запросом пройтись по таблице tt_content и pages
огромный минус этого - далеко не весь контент содержится в tt_content, есть много плагинов.
Но как вариант "быстрой" индексации - вполне рабочий.

2. type=xxx - сделать отдельный шаблон через TypoScript и пройтись по всем страницам.
минус - нагрузка на сервер. Несколько тысяч страниц положат сервер.
Хотя настройками TypoScript можно попытаться минимизировать нагрузку

По пунктам 1,2 вопросов нет.

3. Отдельный php-скрипт. С помощью API TYPO3 выдирать контент страницы по ее id с минимальной обработкой. И делать с ним что хочу.
Вот это самое подходящее решение, но и самое мне непонятное.

Можно ли внешнему скрипту воспользоваться функциями API TYPO3 по получению контента? Но так, чтобы не писать еще один API :)
Какие классы достаточно подключить?

P.S. Индексатору нужно на входе давать php.exe script.php (тоесть коммандную строку)

Valery Romanchev 15.10.2009 11:43

посмотрите, как Дулепов сделал в экстеншене mnogosearch

razawa 15.10.2009 12:04

Цитата:

Сообщение от Valery Romanchev (Сообщение 25930)
посмотрите, как Дулепов сделал в экстеншене mnogosearch

Точно. Спасибо.
Может и Mnogosearch попробую заодно :)

razawa 24.11.2009 14:49

Дошли руки. Полазил в экстеншене mnogosearch. Но так как у меня сервер Windows - запустить возможности нет. Только установил и коды поизучал.
Но, что я понял из кодов - там запуск индексатора по ссылкам. То есть нет прямого индексирования контента с помощью функций API. А только генерация всей страницы и потом уже индексирование.

Так что буду еще копать в TYPO3 API. Подключаю tslib_pibase, а вот cObj получить не могу. Ругается на переопределение функций.

Либо сделаю по 2-му варианту.

P.S. Хотя мог не досмотреть и в mnogosearch

Valery Romanchev 24.11.2009 15:46

Цитата:

Сообщение от razawa (Сообщение 26324)
Но, что я понял из кодов - там запуск индексатора по ссылкам. То есть нет прямого индексирования контента с помощью функций API. А только генерация всей страницы и потом уже индексирование.

Так что буду еще копать в TYPO3 API. Подключаю tslib_pibase, а вот cObj получить не могу. Ругается на переопределение функций.

tslib_pibase - это не то.

Дело в том, наверное самый эффективный способ для получения контента всей страницы в тайпо3 - это сгенерировать эту страницу обычным образом (или взять ее из кеша, если она кешируется).

razawa 24.11.2009 16:12

Цитата:

Сообщение от Valery Romanchev (Сообщение 26325)
наверное самый эффективный способ для получения контента всей страницы в тайпо3 - это сгенерировать эту страницу обычным образом (или взять ее из кеша, если она кешируется).

Хотелось бы обойти всякие служебные функции. Это же равносильно открытию всех страниц.
А в кеше проверять - это мысль. Нету в кеше - только тогда генерировать. Хоть как-то проще.

То-есть 2 пункт, наверное, будет оптимальным. Ну что ж буду копать в этом направлении.


Часовой пояс GMT +4, время: 02:58.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot