Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Точка в url заменяется на "тире"

Тема в разделе "Вопросы новичков", создана пользователем RuNet, 7 дек 2017 в 12:14.

  1. RuNet

    RuNet

    Сообщения:
    2
    Симпатии:
    1
    Баллы:
    1
    Как сделать так, чтобы в адресной строке оставалась точка, а не тире?
     
  2. ADv

    ADv Местный

    Сообщения:
    692
    Симпатии:
    261
    Баллы:
    63
    • Нравится Нравится x 3
  3. RuNet

    RuNet

    Сообщения:
    2
    Симпатии:
    1
    Баллы:
    1
    Благодарю, указал код в файле function.php активированной темы, заменил в ссылке товара тире на точку, обновил, всё заработало!
    Код:
    <?php
    
    remove_filter('sanitize_title', 'sanitize_title_with_dashes');
    function sanitize_title_with_dots_and_dashes($title) {
            $title = strip_tags($title);
            // Preserve escaped octets.
            $title = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', '---$1---', $title);
            // Remove percent signs that are not part of an octet.
            $title = str_replace('%', '', $title);
            // Restore octets.
            $title = preg_replace('|---([a-fA-F0-9][a-fA-F0-9])---|', '%$1', $title);
            $title = remove_accents($title);
            if (seems_utf8($title)) {
                    if (function_exists('mb_strtolower')) {
                            $title = mb_strtolower($title, 'UTF-8');
                    }
                    $title = utf8_uri_encode($title);
            }
            $title = strtolower($title);
            $title = preg_replace('/&.+?;/', '', $title); // kill entities
            $title = preg_replace('/[^%a-z0-9 ._-]/', '', $title);
            $title = preg_replace('/\s+/', '-', $title);
            $title = preg_replace('|-+|', '-', $title);
            $title = trim($title, '-');
            $title = str_replace('-.-', '.', $title);
            $title = str_replace('-.', '.', $title);
            $title = str_replace('.-', '.', $title);
            $title = preg_replace('|([^.])\.$|', '$1', $title);
            $title = trim($title, '-'); // yes, again
            return $title;
    }
    add_filter('sanitize_title', 'sanitize_title_with_dots_and_dashes'); ?>
     
    • Нравится Нравится x 1
    • Это здорово! Это здорово! x 1