Giter Site home page Giter Site logo

ichinya / yandex_turbo_for_mediawiki Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 0.0 100 KB

Яндекс Турбо для движка mediawiki

Home Page: https://ichiblog.ru/my-projects/yandex_turbo_for_mediawiki/

License: MIT License

PHP 100.00%
yandexturbo yandex yandex-turbo yandex-turbo-pages api-mediawiki mediawiki rss php

yandex_turbo_for_mediawiki's Introduction

Яндекс Турбо для сайта на MediWiki

Установка

Скопировать папку в корень сайта mediawiki. После чего лучше посмотреть настройки в файлах конфигурации скрипта config.inc.php и ленты rss rss_templates\turbo.params.php (стандартные настройки подойдут для многих)

Файлы с настройками создадутся автоматически при первом обращении. После чего их можно отредактировать и установить нужные параметры RSS ленты

Вызов ленты RSS

  • сайт/turbo выведется список адресов лент rss (для Яндекс Турбо)
  • сайт/turbo?page=0 лента RSS с шаблоном по умолчанию (задается в конфиге)
  • сайт/turbo?template=new выводится список лент RSS с шаблоном new (название шаблона указано для примера)
  • сайт/turbo?template=new&page=0 лента с шаблоном new (название шаблона указано для примера)

Возможности

  • Не требуется авторизация к сайту. По идее может работать даже из другого места. Работает полностью через api mediawiki
  • Есть кэширование страниц, при первом запуске создается файл cache.db, в котором будут храниться страницы для rss лент
  • Можно изменить почти что угодно. Код довольно простой, параметры апи храняться в файлах params_*.json
  • Можно добавить шаблоны, просто нужно создать три файла: шаблон.item.php (один элемент ленты), шаблон.rss.php (лента), шаблон.default_params.php (параметры ленты по умолчанию) и шаблон.params.php (параметры ленты, создается при первом обращении к ленте)
  • Вызов шаблона (при использовании не по-умолчанию) происходит с параметром GET template=шаблон
  • При обновлении скрипта на Git придет уведомление на e-mail, который указан в конфиге
  • При обновлении скрипта, обновляет кэш (можно удалить, но тут будет больше нагрузка на сервер)

Ограничения

  • Ограничения самим api у mediawiki, возможно потребуется настраивать авторизацию или доступ к api
  • На сайтах с большим количеством статей могут быть сильные нагрузки. При использовании кэша нагрузка меньше

yandex_turbo_for_mediawiki's People

Contributors

ichinya avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

yandex_turbo_for_mediawiki's Issues

What are the system requirements and the version of mediaviki?

А какая версия должна быть у mediawiki и что должно быть установлено? Попробовал на старой 1.30.0 и на чистой 1.35.1: генерирует 6кб cache.db, а сама ругается:

Fatal error: Uncaught TypeError: Return value of cContent::getContent() must be of the type array, null returned in /home/sites/htdocs/mediawikiupdate/turbo/libs/cContent.php:47 Stack trace: #0 /home/sites/htdocs/mediawikiupdate/turbo/libs/cContent.php(57): cContent->getContent() #1 /home/sites/htdocs/mediawikiupdate/turbo/libs/cPageList.php(27): cContent->getContentAll() #2 /home/sites/htdocs/mediawikiupdate/turbo/index.php(28): cPageList->init() #3 {main} thrown in /home/sites/htdocs/mediawikiupdate/turbo/libs/cContent.php on line 47

Стоит Ubuntu 16.04 с PHP 7.4.18 (fpm-fcgi) и nginx. Доставил sqlite.

cache_db

Не могу завести скрипт

MW 1.39.5
Скрипт я так понял 1.3.1 - последний короч

Что делал

  1. Залил за хостинг
    01

  2. Настройки оставил по дефолту:
    03

  3. Получаю ошибку о невозможности подцепиться к API или отсутствии статей
    02

В конфие MW ничего не менял. Но https://wiki.treneron.ru/api.php вроде открывается.
Не знаю показатель ли это подключенного АПИ))

Страниц в вики полно. Должно хватать для работы скрипта вроде как

I have an error.

Error: Parse error: syntax error, unexpected 'string' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in /var/www/u1005435/data/www/artemscraft.ru/wiki/libs/cPageList.php on line 5
If i need something to attach, please answer me. Thank you.
со мной можно по-русски если что)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.