Urdu Deutsch
English English Deutsch Deutsch Español Español Français Français Italiano Italiano Nederlands Nederlands Português Português Русский Русский Ελληνικά Ελληνικά
Login



 
Добро пожаловать в Jumi! Учебник >> >> Отражение Википедии

Этот скрипт позволяет отображать содержимое Википедии на ваш сайт.

wiki_reflect.php

Вам нужно создать новый Jumi приложения с помощью следующего кода ниже.

Вы можете добавить / * конфигурации * / часть сценария Пользовательские поля Script, для внесения изменений легко с Joomla! интерфейс администратора. В противном случае вам нужно отредактировать файл wiki_reflect.php каждый раз, когда вам нужно внести изменения.

<?PHP определенный("_JEXEC") or умереть("Ограничение доступа"); ?>
<?PHP
/* конфиг */
$wiki_url   = 'http://en.wikipedia.org';
$название      = 'Joomla';
$cache_time = 30*24*60*60; // 30 дней
$file_name  = 'Кэш /'.md5($название);

$nice_title = str_replace('_', ' ', stripslashes($название));

// Проверьте кэш
if(file_exists($file_name) а так же StrToTime('сейчас') - filemtime($file_name) < $cache_time) {
    эхо file_get_contents($file_name);
} еще {
    // получить статью из Википедии
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $wiki_url.'/ Вики /'.$название);
    curl_setopt($ch, CURLOPT_HEADER, 1);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $wiki_content = curl_exec($ch);
    curl_close($ch);

    /* изменить статью для включения */
    // отделить содержание статьи
    $wiki_content = подстрока($wiki_content, strpos($wiki_content, ''));
    $wiki_content = подстрока($wiki_content, 0, strpos($wiki_content, ''));
    // заменить относительные ссылки
    $wiki_content = str_replace('"/ с кожей', '"'.$wiki_url.'/ Б / кожи', $wiki_content);
    $wiki_content = str_replace('"/Оболочки', '"'.$wiki_url.'/ Скинов', $wiki_content);
    $wiki_content = str_replace('"/ wiki', '"'.$wiki_url.'/ Вики', $wiki_content);
    // удалить ссылки редактирования
    $wiki_content = str_replace('> редактировать', '><', $wiki_content);
    $wiki_content = str_replace('[<', '<', $wiki_content);
    $wiki_content = str_replace('>]', '>', $wiki_content);
    $wiki_content = str_replace('href = "/ w / index.php?', 'target = "_ blank" href = "'.$wiki_url.'/ Ш / index.php?', $wiki_content);
    // Кэш статье 
    if(StrLen($wiki_content) < 3000) {
        эхо 'К сожалению, извлечь контент не удалось! ';
        эхо 'Вы можете получить доступ к статье вики напрямую'.$wiki_url.'/ Вики /'.$название.'"target =" _ blank ">'.$nice_title.'';
    } еще {
        file_put_contents($file_name, $wiki_content);
        эхо $wiki_content;
    }
}

Ваш компьютер должен поддерживать PHP Curl библиотека.

Благодарности