мНет описания правки
мНет описания правки
 
(не показано 28 промежуточных версий 2 участников)
Строка 1: Строка 1:
<div id="randomSongContainer"></div>
{{#ifeq: {{#vardefine:category|{{urlencode:Песни}}}}{{#vardefineecho:api_url|https://bard-wiki.net/w/api.php}}{{#vardefineecho:get_all_pages|{{#get_web_data: {{#var:api_url}}|action=query&list=categorymembers&cmtitle=Category:{{#var:category}}&cmlimit=max&format=json}}}}{{#vardefine:total_num_pages|{{#var: get_all_pages|totalhits}}}}|{{#expr: {{#var:total_num_pages}} > 0 }}
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|{{#vardefine:get_random_page|{{#get_web_data: {{#var:api_url}}|action=query&list=categorymembers&cmtitle=Category:{{#var:category}}&cmlimit=max&cmtype=page&format=json}}}}{{#vardefine:chosen_num_page|{{#expr: {{#var:get_random_page|totalhits}} - 1 }} }} {{#var:get_random_page|jsondata|["query"]["categorymembers",{{#var:chosen_num_page}},"title"]|urlencode}}
<script>
|Категория "Песни" не содержит ни одной страницы.
$(document).ready(function() {
}}
  // задаем параметры API запроса
 
  var apiUrl = "https://bard-wiki.net/api.php?action=query&list=categorymembers&cmtitle=Категория:Песни&format=json&cmlimit=500";
Ссылка на АPI{{#var:api_url}}
  // делаем запрос к API MediaWiki
 
  $.getJSON(apiUrl, function(data) {
Категория {{#var:category}}
    // получаем список страниц из указанной категории
 
    var songs = data.query.categorymembers;
get_web_data
    // выбираем случайную страницу
{{#get_web_data: {{#var:api_url}}|action=query&list=categorymembers&cmtitle=Category:{{#var:category}}&cmlimit=max&cmtype=page&format=json}}
    var randomSong = songs[Math.floor(Math.random()*songs.length)];
 
    // получаем заголовок случайной страницы
get_web_data2
    var songTitle = randomSong.title;
{{#get_web_data: url=https://bard-wiki.net/api.php?action=query&list=categorymembers&cmtitle=Category:%D0%9F%D0%B5%D1%81%D0%BD%D0%B8&format=json|format=json}}
    // формируем ссылку на случайную страницу
 
    var songLink = "https://bard-wiki.net/" + songTitle;
 
    // выводим результат на страницу
https://bard-wiki.net/api.php?action=query&list=categorymembers&cmtitle=Category:%D0%9F%D0%B5%D1%81%D0%BD%D0%B8
    $('#randomSongContainer').html("Случайная песня: <a href=\"" + songLink + "\">" + songTitle + "</a>");
 
  });
 
});
{{#vardefine:get_random_page|{{#get_web_data: {{#var:api_url}}|action=query&list=categorymembers&cmtitle=Category:{{#var:category}}&cmlimit=max&cmtype=page&format=json}}}}
</script>
 
get_random_page {{#var:get_random_page}}
 
{{#vardefine:chosen_num_page|{{#expr: {{#var:get_random_page|totalhits}} - 1 }} }}
{{#var:chosen_num_page}}
{{#var:get_random_page|jsondata|["query"]["categorymembers",{{#var:chosen_num_page}},"title"]|urlencode}}
 
chosen_num_page {{#var:chosen_num_page}}
 
<!--{{#ifeq: {{#vardefine:category|{{urlencode:Песни}}}}{{#vardefineecho:api_url|https://bard-wiki.net/w/api.php}}{{#vardefineecho:get_all_pages|{{#get_web_data: {{#var:api_url}}|action=query&list=categorymembers&cmtitle=Category:{{#var:category}}&cmlimit=max&format=json}}}}{{#vardefine:total_num_pages|{{#var: get_all_pages|totalhits}}}}|{{#expr: {{#var:total_num_pages}} > 0 }}
| {{#vardefine:get_random_page|{{#get_web_data: {{#var:api_url}}|action=query&list=categorymembers&cmtitle=Category:{{#var:category}}&cmlimit=max&cmtype=page&format=json}}}}{{#vardefine:chosen_num_page|{{#expr: {{#var:get_random_page|totalhits}} - 1 }} }} {{#var:get_random_page|jsondata|["query"]["categorymembers",{{#var:chosen_num_page}},"title"]|urlencode}}
| Категория "Песни" не содержит ни одной страницы.
}}-->
 
 
<!--<div id="randomSong"></div> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script> $(document).ready(function() { // задаем параметры API запроса var apiUrl = "https://bard-wiki.net/api.php?action=query&list=categorymembers&cmtitle=Категория:Песни&format=json&cmlimit=500"; // делаем запрос к API MediaWiki $.getJSON(apiUrl, function(data) { // получаем список страниц из указанной категории var songs = data.query.categorymembers; // выбираем случайную страницу var randomSong = songs[Math.floor(Math.random()*songs.length)]; // получаем заголовок случайной страницы var songTitle = randomSong.title; // формируем ссылку на случайную страницу var songLink = "https://bard-wiki.net/" + songTitle; // выводим результат на страницу $('#randomSong').html("Случайная песня: <a href=\"" + songLink + "\">" + songTitle + "</a>"); }); }); </script>-->

Текущая версия от 09:57, 23 июня 2023

Категория "Песни" не содержит ни одной страницы.

Ссылка на АPIhttps://bard-wiki.net/w/api.php

Категория %D0%9F%D0%B5%D1%81%D0%BD%D0%B8

get_web_data Не удалось получить URL https://bard-wiki.net/w/api.php после 3 попыток.

get_web_data2


https://bard-wiki.net/api.php?action=query&list=categorymembers&cmtitle=Category:%D0%9F%D0%B5%D1%81%D0%BD%D0%B8



get_random_page Не удалось получить URL https://bard-wiki.net/w/api.php после 3 попыток.


Ошибка выражения: неожидаемый оператор < Не удалось получить URL https://bard-wiki.net/w/api.php после 3 попыток.

chosen_num_page Ошибка выражения: неожидаемый оператор <