(Admin изменил модель содержимого страницы Шаблон:RandomSong с «JavaScript» на «вики-текст»)
Метка: изменение модели содержимого
мНет описания правки
Строка 1: Строка 1:
<div id="randomSong"></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";
// делаем запрос к 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>

Версия от 08:47, 23 июня 2023

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