Новости Joomla

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks.Этот контент-плагин - одно из старейших расширений для Joomla. Его задача - преобразовывать шорт-коды вида {YOUTUBE}...{/YOUTUBE}, {MP3}parth/to/file.mp3{/MP3} и подобные во встроенные видео или аудио.👩‍💻 v.7.0.0. Что нового?- Добавлена поддержка Youtube Shorts. Просто скопируйте полный url видео и вставьте его внутри тегов {YOUTUBE}...{/YOUTUBE}.- Поддержка Joomla 5.x без плагина обратной совместимости. PHP 5, PHP 7, PHP 8. - Индексация умным поиском в CLI. В Joomla 5 плагин перестал вызывать ошибку при индексации контента умным поиском через CLI,Заметьте, что этот один и тот же пакет для всех версий Joomla, начиная с 1.5.x и заканчивая 5.x. Технически "под капотом" код плагина по сути не менялся, а для поддержки следующих версий Joomla авторы вставляют "заплатки". Плагин всё ещё использует старую архитектуру файлов и классов Joomla, что, к сожалению, заставляет прибавлять к его описанию слова "пока ещё" - "пока ещё работает".Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 За ссылку спасибо самому внимательному участнику нашего сообщества - Ринату Кажетову (@rkazhet).@joomlafeed#joomla #расширения

0 Пользователей и 1 Гость просматривают эту тему.
  • 15 Ответов
  • 1683 Просмотров
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Дубли Joomla 5
« : 25.12.2024, 20:28:18 »
Здравствуйте, может кто помочь? В Я.Вебмастер появились дубли страниц с .html) как сделать редирект с «html)» на html или запретить индексацию страниц .html)
Такая конструкция сработает? Disallow: *)*
Дополнение. Пока таких страниц мало, сделал на них редирект. Что делать если появятся дубли в массовом порядке. «Доброжелатель», видно, подставляет к url всякие знаки, а метрика подхватывает эти страницы как новые.
« Последнее редактирование: 25.12.2024, 22:34:41 от bormir »
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #1 : 26.12.2024, 10:06:34 »
Добрый день, если хотите, чтоб ваши ссылки открывались с .html на конце, то вам нужно включить эти параметры в общих настройках.

Общие настройки > Система > Параметры SEO

Включить SEF
Да

Перенаправлять URL
Да

Добавлять суффикс к URL
Да

Также важно не забыть переименовать htaccess.txt в .htaccess

Если вы хотите запретить индексацию всех страниц с окончанием .html, то в robots.txt нужно добавить следующие:

Disallow: *html

Вроде бы так, удачи, всех благ!
« Последнее редактирование: 26.12.2024, 10:11:09 от web1 »
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #2 : 26.12.2024, 11:34:42 »
Добрый день, если хотите, чтоб ваши ссылки открывались с .html на конце, то вам нужно включить эти параметры в общих настройках.

Общие настройки > Система > Параметры SEO

Включить SEF
Да

Перенаправлять URL
Да

Добавлять суффикс к URL
Да

Также важно не забыть переименовать htaccess.txt в .htaccess
Все, конечно, включено, сайт с 2009 г. (начинал еще с Joomla 1.5). Дело в дублях страниц. Яндекс стал индексировать такие url: stranica.html) Вот и нужно запретить индексировать знак закрывающаяся скобка «)» или настроить редирект.
Такой вариант сработает? Disallow: *html)
Кстати, страницы доступны и с другими знаками, если их добавить к html: точка «.», открывающаяся скобка и т.д.
« Последнее редактирование: 26.12.2024, 11:51:11 от bormir »
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #3 : 26.12.2024, 11:53:48 »
Если нужно запретить индексировать к примеру https://site.com/blog/add.html) то в robots.txt добавьте :

Disallow: *html)

Хотя у вас должна срабатывать страница 404
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #4 : 26.12.2024, 11:55:23 »
У вас некорректно скорее всего работает страница 404
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #5 : 26.12.2024, 12:44:21 »
Если у вас открывается корректно страница 404, то больше не нужно нечего делать, робот сам поймет, что таких страниц не существует.
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #6 : 26.12.2024, 13:17:28 »
Если у вас открывается корректно страница 404, то больше не нужно нечего делать, робот сам поймет, что таких страниц не существует.
Спасибо, если еще появятся дубли, то попробую Disallow: *html)
Страница 404 не срабатывает на url такого вида. Установлен Aimy Canonical и в индекс попадают дубли с двумя каноническими страницами.
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #7 : 26.12.2024, 13:36:14 »
Код ответа сервера должен быть 404, если это так, то все в порядке будет. Удачи, всех благ!
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #8 : 26.12.2024, 13:39:03 »
Проверить код ответа сервера можно здесь https://2ip.ru/server-response/
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #9 : 27.12.2024, 11:29:41 »
Может, кому и будет полезно. Нашел такой вариант редиректа, убирает всё после .html (не затрагивая знак ?, который используется в пагинации):
RewriteEngine On
RewriteRule (.+?)\.html.+$ https://%{HTTP_HOST}/$1.html [L,R=301]
Теперь бы еще с умным поиском разобраться. База разрослась до огромных размеров, да еще на запросы с точкой тупит (такого вида Калинин М.И., С.П. Боткин и т.д.), иногда минуты через две выскакивает ошибка 500. Посмотрел, что некоторые вместо умного поиска используют поиск Яндекс или Google.
*

web1

  • Захожу иногда
  • 339
  • 19 / 1
Re: Дубли Joomla 5
« Ответ #10 : 27.12.2024, 11:33:25 »
Поздравляю, я знаю, что умный поиск и вообще поиск, если он настроен неправильно может грузить сервер, по этому я поиск у себя не использую, смысла нет.
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #11 : 18.05.2025, 18:28:23 »
После обновления на Joomla 5.3.0 новые проблемы с дублями. Для сайта использовали плагин Console - Save old articles aliases. Теперь с такой конструкцией: sait.ru/katalog/podkatalog/*-statya могут появиться огромное количество дублей.
* - любая цифра (совпадает с id)
Поздно заметил, лучше бы оставил Joomla 5.26
Плагин: https://joomlaportal.ru/news/fastnews/3751-problema-s-id-v-url-materialov-joomla-pri-obnovlenii-bolshogo-starogo-sajta-do-joomla-5
« Последнее редактирование: 18.05.2025, 18:33:42 от bormir »
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #12 : 19.05.2025, 06:25:03 »
Из анонса (версия 5.3.0) на Joomlaportal.ru: «Строгая маршрутизация и улучшенные параметры SEF URL уменьшают количество дублированного контента и ненужных перенаправлений, повышая SEO вашего сайта».
На этом сайте для ряда подразделов также применили плагин: Console - Save old articles aliases, где теперь срабатывает неправильный редирект по ID и создает много дублей. Какие есть варианты исправления, помимо возвращения на Joomla 5.2.6?
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #13 : 19.05.2025, 17:25:12 »
Где-то нужно в этом коде "копать", чтобы вместо редиректа на дубли, была страница 404. 
Код
public function setTainted()
    {
        $this->tainted = true;
    }

    /**
     * Return if the last parsed URL was tainted.
     *
     * @return  bool
     *
     * @since  5.3.0
     */
    public function isTainted()
    {
        return $this->tainted;
    }

    /**
     * Process the parsed router variables based on custom defined rules
     *
     * @param   \Joomla\CMS\Uri\Uri  &$uri   The URI to parse
     * @param   string               $stage  The stage that should be processed.
     *                                       Possible values: 'preprocess', 'postprocess'
     *                                       and '' for the main parse stage
     *
     * @return  void
     *
     * @since   3.2
     */
    protected function processParseRules(&$uri, $stage = self::PROCESS_DURING)
    {
        if (!\array_key_exists('parse' . $stage, $this->rules)) {
            throw new \InvalidArgumentException(\sprintf('The %s stage is not registered. (%s)', $stage, __METHOD__));
        }

        foreach ($this->rules['parse' . $stage] as $rule) {
            $rule($this, $uri);
        }
    }

    /**
     * Process the build uri query data based on custom defined rules
     *
     * @param   \Joomla\CMS\Uri\Uri  &$uri   The URI
     * @param   string               $stage  The stage that should be processed.
     *                                       Possible values: 'preprocess', 'postprocess'
     *                                       and '' for the main build stage
     *
     * @return  void
     *
     * @since   3.2
     */
    protected function processBuildRules(&$uri, $stage = self::PROCESS_DURING)
    {
        if (!\array_key_exists('build' . $stage, $this->rules)) {
            throw new \InvalidArgumentException(\sprintf('The %s stage is not registered. (%s)', $stage, __METHOD__));
        }

        foreach ($this->rules['build' . $stage] as $rule) {
            \call_user_func_array($rule, [&$this, &$uri]);
        }
    }

    /**
     * Create a uri based on a full or partial URL string
     *
     * @param   string  $url  The URI or an associative array
     *
     * @return  Uri
     *
     * @since   3.2
     */
    protected function createUri($url)
    {
        if (!\is_array($url) && !str_starts_with($url, '&')) {
            return new Uri($url);
        }

        $uri = new Uri('index.php');

        if (\is_string($url)) {
            $vars = [];

            if (str_contains($url, '&')) {
                $url = str_replace('&', '&', $url);
            }

            parse_str($url, $vars);
        } else {
            $vars = $url;
        }

        $vars = array_merge($this->getVars(), $vars);

        foreach ($vars as $key => $var) {
            if ($var == '') {
                unset($vars[$key]);
            }
        }

        $uri->setQuery($vars);

        return $uri;
    }
}
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #14 : 19.05.2025, 21:19:57 »
Надеюсь, что Вадим Куницын (автор размещения плагина) или другой специалист посоветует как отменить редиректы, если удалить часть кода:
 
Код
 public function setTainted()
    {
        $this->tainted = true;
    }
ошибка 500, а не 404.
*

bormir

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: Дубли Joomla 5
« Ответ #15 : 25.05.2025, 09:16:03 »
Простое решение: components\com_content\src\Service\Router.php
Код
           
        $id = (int) $segment;

        if ($id) {
            $dbquery = $this->db->getQuery(true);
            $dbquery->select($this->db->quoteName('alias'))
                ->from($this->db->quoteName('#__content'))
                ->where($this->db->quoteName('id'). ' = :id')
                ->bind(':id', $id, ParameterType::INTEGER);
            $this->db->setQuery($dbquery);
            $alias = $this->db->loadResult();

            if ($alias && $id . '-' . $alias != $segment) {
                $this->app->getRouter()->setTainted();
            }
        }

        return $id;
    }
return $id; заменить на: return false;
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Сделал шаблон для Joomla 5

Автор fbr

Ответов: 5
Просмотров: 783
Последний ответ 11.06.2025, 20:46:04
от fbr
Joomla 5 и MySQL 5.7

Автор n_nickon

Ответов: 6
Просмотров: 693
Последний ответ 20.05.2025, 22:23:56
от n_nickon
Сломался сайт Joomla 4 после обновления одного модуля

Автор androv77

Ответов: 4
Просмотров: 645
Последний ответ 17.05.2025, 06:12:07
от azm1n
Как найти и исправить ошибки php на Joomla?

Автор azm1n

Ответов: 0
Просмотров: 374
Последний ответ 07.05.2025, 11:44:31
от azm1n
Ошибка при установке Joomla 5 на Open Server 6.0

Автор Mnojitell

Ответов: 5
Просмотров: 824
Последний ответ 03.04.2025, 11:36:11
от Akeksandr