Поддержка Проблемы и решения Настройка Permalinks

  • Решено DirtyDan

    (@dirtydan)


    Очень странная ситуация с Permalinks. Для страниц с материалом я установил вот такую структуру:
    /photo/%postname%
    А, для категорий (Category base) я сделал так:
    photo

    После этого можно зайти только на главную страницу и в категории, но невозможно зайти на страницу с материалом. Выдается что-то типа 404 ошибки «I’m sorry but the Page You’re Looking for Is Not Here». Хотя, если убрать приставку photo в настройках категории, то все работает нормально. Я переношу сайт из другой CMS в wordpress поэтому мне нужно обязательно сохранить так как я показал выше. Как это можно сделать?

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Можно добавить фрагмент в functions.php активной темы:

    function add_fixed_rules_for_categories($rules) {
    	$rules = array();
    	$categories = get_categories('hide_empty=0');
    	foreach ( (array) $categories as $category ) {
    	    $rules["photo/({$category->slug})/feed/(feed|rdf|rss|rss2|atom)/?$"] = 'index.php?category_name=$matches[1]&feed=$matches[2]';
    		$rules["photo/({$category->slug})/(feed|rdf|rss|rss2|atom)/?$"] = 'index.php?category_name=$matches[1]&feed=$matches[2]';
    		$rules["photo/({$category->slug})/page/?([0-9]{1,})/?$"] = 'index.php?category_name=$matches[1]&paged=$matches[2]';
    		$rules["photo/({$category->slug})/?$"] = 'index.php?category_name=$matches[1]';
    	}
    	return $rules;
    }
    add_filter('category_rewrite_rules', 'add_fixed_rules_for_categories');
    
    function flush_rules_for_categories() {
    	global $wp_rewrite;
       	$wp_rewrite->flush_rules();
    }
    add_action('create_category', 'flush_rules_for_categories');
    add_action('edit_category', 'flush_rules_for_categories');
    add_action('delete_category', 'flush_rules_for_categories');

    Затем зайти в настройки постоянных ссылок и пересохранить их.

    Можно попробовать пользовательские типы задействовать, создать тип

    фото

    со слагом

    photo

    .

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Тема «Настройка Permalinks» закрыта для новых ответов.