Необходимо отобразить путь URL на странице WordPress.

Вопрос или проблема

Мне нужно извлечь номер пути URL для шорткода… Вот пример ниже…

https://example.com/page/c/1

Мне нужно, чтобы номер “1” отображался с помощью шорткода…

[url_path_number]

Вы можете найти это с помощью чего-то подобного следующему

add_shortcode( 'url_path_number', function ( $atts ) {

    // используйте атрибут или текущий URL
    $a = shortcode_atts( array(
        'url' => get_permalink(),
    ), $atts );

    // получите путь из URL
    $path = parse_url($a['url'],PHP_URL_PATH);
    $parts = array_filter(explode("https://wordpress.stackexchange.com/", $path),function($v) { return $v !== ''; });

    // получите последний каталог пути
    return end($parts); 
} );

Использование шорткода вернёт текущий URL

[url_path_number]

или вы можете указать URL

[url_path_number url="https://example.com/page/c/1"]

ОБНОВЛЕНИЕ:

чтобы получить только после пути и не использовать get_permalink()

add_shortcode( 'url_path_number', function ( $atts ) {
    $a = shortcode_atts( array(
        'path' => $_SERVER['REQUEST_URI'],
    ), $atts );
    $parts = array_filter(explode("https://wordpress.stackexchange.com/",$a['path']),function($v) { return $v !== ''; });
    return end($parts); 
} );

.

Ответ или решение

Для того чтобы отобразить номер из URL пути на странице WordPress, можно воспользоваться шорткодом. В вашем случае необходимо создать функционал, который будет извлекать число (например, "1") из указанного URL. Вот подробное руководство по созданию шорткода, который решит вашу задачу.

Шаги по созданию шорткода

  1. Создание шорткода:
    В первую очередь, вам нужно добавить код в файл functions.php вашей темы (или в плагин, если вы его используете). Этот код будет обрабатывать шорткод [url_path_number].
add_shortcode('url_path_number', function($atts) {
    // Используем атрибуты для извлечения URL или берем текущий URI
    $a = shortcode_atts(array(
        'path' => $_SERVER['REQUEST_URI'],
    ), $atts);

    // Разбиваем путь на части
    $parts = array_filter(explode('/', $a['path']), function($v) { return $v !== ''; });

    // Проверяем и возвращаем последний элемент массива
    return end($parts) ?: 'N/A'; // Вернем 'N/A', если элемент не найден
});
  1. Использование шорткода:
    После добавления кода в functions.php, вы можете использовать шорткод на своей странице или в посте следующим образом:

    • Для получения номера из текущего URL:

      [url_path_number]
    • Для указания конкретного URL:

      [url_path_number path="/page/c/1"]

Как это работает?

  • Функция shortcode_atts позволяет задавать значения по умолчанию для атрибутов шорткода. В данном случае, если атрибут path не передан, функция берет текущий запрос к странице ($_SERVER['REQUEST_URI']).

  • Функция explode разбивает строку URL на части по символу /, а array_filter очищает массив от пустых значений.

  • Функция end возвращает последний элемент массива, который, как ожидается, должен содержать желаемый номер.

SEO оптимизация

Использование шорткодов может улучшить пользовательский опыт, так как позволяет динамически выводить контент. При этом следует помнить о следующих моментах:

  • Качество контента: Убедитесь, что представленный номер имеет смысл для страницы и не уменьшает ценность контента для пользователя и поисковых машин.

  • Оптимизация скорости: Для увеличения скорости загрузки страницы, убедитесь, что шорткод не вызывает избыточных запросов к базе данных.

Заключение

Создание шорткода для извлечения номера из URL – это простой и эффективный способ добавления динамического контента на ваши страницы в WordPress. Воспользуйтесь приведённым выше кодом и рекомендациями, чтобы наладить функциональность на своём сайте.Если у вас остались вопросы или требуется дополнительная помощь, не стесняйтесь обращаться к сообществу WordPress или искать решения в документации.

Оцените материал
Добавить комментарий

Капча загружается...