Удалить category WordPress

Удалить category WordPress

Удалить category WordPress

Каждый кто создавал хоть раз блог на WordPress знает, что порой это критично, что ссылка которая имеет вид http://мойкрасивыйдомен.рф/category/название_статьи_от.21.08.2012.html выглядит странно благодаря слову «category». Без упоминания того, что этот раздел является категорией критичного для поиска ничего не случится, но эстетический вид портит. Поэтому было решено изыскать возможные варианты для решения сего вопроса. Варианты решений: красивый (установить плагин) и не очень (дописать код). Оба варианта работают кому какой больше нравится. Код дописывать можно как в файл functions.php так и в .htaccess, т.е. выбор на любой вкус. Этим «опусом» я закрою на сегодня веселые изучения и доработку бложика, который теперь и красив, и функционален! Вариант номер раз: а) WP No Category Base  – плагин удаляет именно базу категорий, которая ставится в админке (она может быть отличной от «category»). Для его работы структура ЧПУ может быть любой. Плюс этого плагина - это установка 301 редиректа (нужен для поисковиков, когда слово category удаляется из уже рабочего сайта/блога). б) Remove Parents – Плагин работает только если структура ЧПУ начинается с тега %category%. Функционал такой же реализация странновата.

Вариант номер дваз: а) Дописать код в файл темы functions.php

	//Удаляем category из УРЛа категорий
	add_filter('category_link', create_function('$a', 'return str_replace("category/", "", $a);'), 9999);
Эту строчку (код) нужно вставить в файл темы functions.php. Также нужно, чтобы структура ЧПУ начиналась с/%category%/ и нужно чтобы НЕ был установлен префикс категории в настройках постоянных ссылок в админке (см.картинку). Если префикс категорий уже установлен, то просто удалите его, но запомните этот префикс для установки редиректа (см. хак ниже) б) Удаляем category через .htaccess (не самый очевидный способ, но имеет право на жизнь) Еще один вариант с редактированием файла .htaccess. В этом файле нужно прописать перенаправление с 301 статусом, выглядет так ©:
RewriteRule ^(.*?/)category/(.+)$ $1$2 [R=301,L]
Важно понимать, что эту строчку нужно вставлять после включения модуля mod_rewrite и до перенаправления самого WordPress, т.е. ставить нужно так:
	
  • # BEGIN WordPress
  • IfModule mod_rewrite.c RewriteEngine On RewriteBase / RewriteRule ^(.*?/)category/(.+)$ $1$2 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] /IfModule # END WordPress
    Однако такой способ не лишен недостатков, работает только если ЧПУ начинается с /%category%/ и WordPress будет создавать ссылки на категории по-прежнему со словом category, просто по нажатию на такую ссылку пользователя будет перекидывать на ссылку без category. Но думаю, этот вариант очень даже имеет место быть. в) Последний вариант «танцев с бубном»: Добавить в functions.php пару строк:
    function seocategorydel($catlink1) {
    $catlink1 = str_replace('/category', '', $catlink1);
    return $catlink1;
    }
    add_filter('category_link', 'seocategorydel'>, 1, 1);
    
    Выбирая способ помните: любые манипуляции с кодом файлов при следующем обновлении вероятнее всего будет утерян. Поэтому, либо сохраняем все изменения и при обновлениях дописываем заново, либо ставим плагины и обновляем их так же. Выбирать Вам!

    Полезная информация:

    Как убрать точки li в меню

    Красивые письма с WP Better Emails

    Woocommerce заказы со статусом "ожидание оплаты" автоматически отменяются

    При обновлении произошла ошибка: Не удалось определить директорию содержимого

    Как удалить ссылки на картинки в новостях WordPress

    WordPress не работают постоянные ссылки (404 Not Found)

    Отображение и текста и логотипа в шаблоне WordPress

    Сделать изображения одинаковыми по высоте средствами CSS

    Woocommerce: изменить "Спасибо. Ваш заказ был принят."

    Полная русификация Woocommerce

    Простой плагин email рассылки (Newsletter) для WordPress

    Joomla/Mambo To WordPress Migrator Fatal error (решение)

    Форма контактов для WordPress

    Как выводить первую картинку поста wordpress

    Как изменить длину анонса (excerpt) плагин

    Шаблон Mantra изменение текста Read more

    Шаблон Mantra изменения вида пагинации

    Woocommerce WaitingList

    WordPress http error - решение проблемы

    Вывод материалов из рубрики списком WordPress

    Html в конце ссылки статей в WordPress

    iSape vs VKontakte API и iMoney + VK comments

    WP-PageNavi добавление пагинации

    Случайный вывод кода (видео, текст, картинки)

    Полезные плагины WordPress

    Разделитель в iSape / Sape

    Удаляем второй meta name=description от All in One Seo Pack

    Убрать category из ссылки WP (продолжение)

    Грамотный robots.txt для WordPress 4.х

    Удаляем строки Saphali Lite, Woocommerce, All in one seo pack

    MainWP Child не добавляется при успешном подключении [Решено]

    Добавление PageNavi (постраничной навигации) в нестандартные шаблоны

    Html в конце ссылок страниц WordPress

    Исправляем проблемы с кодировкой (utf-8 charset)

    Обновление url и адрес картинок после изменения адреса блога

    Повышение безопасности – редактируем .htaccess

    Не показывать виджет iMoney если он пуст

    Русификация плагина «NextGEN Gallery» (файл)

    Jazzy Forms плагин, который радует!

    Footer в functions.php для дочерней (child) темы StoreFront WordPress

    Добавить html в категорию и страницу

    Удаление плагинов WordPress

    Как убрать ссылку из плагина iSape в WordPress

    Добавить валюту (руб.) в woocommerce

    Правильный robots.txt

    Cherry FrameWork logo + description

    Добавить новый sidebar

    Количество сопутствующих товаров в Woocommerce

    Во время загрузки произошла ошибка... WordPress

    Локализация woocommerce Print Invoice & Delivery Note

    Красивые WordPress caption

    WordPress Super Cache - кто такой?

    Плагин карты сайта XML

    Заменить слова в базе MySQL средствами phpMyAdmin

    Breadcrumbs редактировать в Cherry FrameWork

    Метки: . Закладка Постоянная ссылка.

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

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.