Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

VEL API by Phil Taylor

Больше
8 года 1 мес. назад - 8 года 1 мес. назад #1 от Aleksej
Aleksej создал тему: VEL API by Phil Taylor



Ура, VEL API by Phil Taylor снова доступен для России, удалось и мне сделать наконец что-то действительно ценное для своей родины. :) Увы, сдается мне, дело было не в ошибке, сам делал нечто подобное в отношении того или иного геотаргетинга... и потом, случалось, бывало очень неудобно. Думаю, всем понятно, о чем я? Постараюсь в ближайшее время подредактировать старый js (не работает вследствие последних изменений) или придумать что-то новое.
Последнее редактирование: 8 года 1 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 1
Больше
8 года 1 мес. назад #2 от Vasilij
Vasilij ответил в теме VEL API by Phil Taylor

Aleksej пишет: Постараюсь в ближайшее время подредактировать старый js (не работает вследствие последних изменений) или придумать что-то новое.


Изменилась структура JSON вероятно.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 1 мес. назад - 8 года 1 мес. назад #3 от Aleksej
Aleksej ответил в теме VEL API by Phil Taylor
Нет, попросту не работает указанный JSONPROXY. Необходимо заменить на любой другой, например вот так:


Code:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.js"></script> <script> $(document).ready( function(){ $.getJSON("https://jsonp.afeld.me/?callback=&url=https%3A%2F%2Fvel.myjoomla.io%2F") .done( function(data){ var output = '<ul>'; $(data.data).each(function(i, item){ output += '<li>'+ item.published_date + ' ' + item.title + ' - ' + item.com_whatever + ' ' + item.version_effected + ' : ' + item.type +'</li>'; } ); output += '</ul>'; $('#vel').append($(output)); } ) } ); </script> <div id="vel" /> <style type="text/css"> #vel { height: 400px; overflow: auto; } </style>
Последнее редактирование: 8 года 1 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 1 мес. назад - 8 года 1 мес. назад #4 от savage
savage ответил в теме VEL API by Phil Taylor
Джаваскриптами неудобно. PHP как то ближе и привычнее.... Опять же редактировать проще.
А если б был модуль джумла, это вообще оптимально.
:)
Последнее редактирование: 8 года 1 мес. назад пользователем savage.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 1 мес. назад #5 от Aleksej
Aleksej ответил в теме VEL API by Phil Taylor
Демка в блоге.

Code:
<?php //Получаем и декодируем JSON: $json = file_get_contents('http://vel.myjoomla.io'); $arr = json_decode($json, true); // Преобразуем даты в метку времени Unix: function vel_date_parse($str_date){ return strtotime(str_replace('/', '-', $str_date)); } //Сортируем по [published_date] и реверсируем элементы массива: function date_compare($a, $b){ $a = vel_date_parse($a); $b = vel_date_parse($b); if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; } uasort($arr['data'], function($a, $b){ return -date_compare($a['published_date'], $b['published_date']);} ); //Выводим в HTML: foreach ($arr['data'] as $arr) { $html .= $arr['published_date'] . "<br />"; $html .= "<strong>" .$arr['title'] . "</strong>" . "<br />"; $html .= $arr['version_effected'] . "<br />"; $html .= $arr['type'] . "<br />"; $html .= "<br />"; } echo $html;

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 1 мес. назад - 8 года 1 мес. назад #6 от Aleksej
Aleksej ответил в теме VEL API by Phil Taylor
Шпаргалка.... как извлечь из JSON Фила Тейлера все, предположим, тайтлы уязвимых расширений? - вот так:

Code:
<?php $json = file_get_contents('http://vel.myjoomla.io'); $arr = json_decode($json, true); $arr = array_map(function($item){return $item['title'];},$arr['data'] ); print_r ($arr);
Последнее редактирование: 8 года 1 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум