Изменяем структуру постоянных ссылок через functions.php

Если вы хотите просто поменять структуру пермалинков на своём блоге, то лучше вам воспользоваться меню.

Настройка постоянных ссылок в меню WordPress

Если всё это настраивается в админке, тогда зачем лезть в functions.php?

  • если нету доступа к админке
  • при создании плагина или темы
  • по какой-то вашей собственной причине

И сразу к делу — вот вам код, если не знаете, куда вставлять — прочитайте пожалуйста заголовок статьи 🙂

function my_permalink_function(){
    global $wp_rewrite;
    $wp_rewrite->set_permalink_structure('/%category%/%postname%.html');
    $wp_rewrite->flush_rules();
}
add_action('init', 'my_permalink_function');

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

Итак, структура постоянных ссылок задается на 3-й строчке (в скобках и кавычках) при помощи структурных тегов.

Если использовать тот пример, то ссылки на страницах с постами будут выглядеть так же, как у меня на блоге (на этом блоге).

Существуют и другие теги:

  • %year%
    год публикации (пример: 2012)
  • %monthnum%
    месяц (пример: 11)
  • %day%
    день (пример: 27)
  • %hour%
    час (пример: 14)
  • %minute%
    минута (пример: 59)
  • %second%
    секунда (пример: 11)
  • %post_id%
    id записи (пример: 505)
  • %postname%
    ярлык записи (пример: change-permalinks-in-functions-php)
  • %category%
    ярлык категории (пример: wordpress)
  • %author%
    ник автора (пример: admin)

Думаю имеет смысл рассмотреть один пример.

Запись в виде тегов:
/%year%/%monthnum%/%day%/%postname%.html

Как будет выглядеть ссылка:
https://misha.blog/2012/01/20/change-permalinks-in-functions-php.html

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

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

%d такие блоггеры, как: