Как отобразить хороший URL для страницы категории Wordpress? - PullRequest
1 голос
/ 10 августа 2010

У меня есть сайт, домашняя страница которого показывает одну страницу категории Wordpress.Я использую пользовательскую тему, и файл index.php там перенаправляет 301 на «mysitename.com/?cat=3».Эта страница создается с плагином календаря событий и большим количеством пользовательского кода.Это работает, но отображаемым URL является «mysitename.com/?cat=3», который я бы предпочел, чтобы мои посетители не видели;Я бы предпочел, чтобы URL был просто «mysitename.com», «mysitename.com/index.php» или даже «mysitename.com/calendar".

Посетитель может просматривать« предыдущий месяц »и«в следующем месяце», в результате чего URL-адреса, такие как «mysitename.com?cat=3&eventDate=2010-07&bt=a», остаются в той же категории, но с дополнительными параметрами в URL-адресе.(У меня есть ОК, у меня более запутанный URL, как этот, который был показан моим посетителям в предыдущем / следующем месяце; это просто начальный URL-адрес страницы, который я хотел бы сделать лучше.)

I 'Мы все перепутали с постоянными ссылками, но не можем заставить хорошие URL работать правильно таким образом.Есть ли способ сделать это .htaccess?

Ответы [ 2 ]

1 голос
/ 10 августа 2010

В разделе «Постоянные ссылки» на вкладке «Настройки» можно добавить базу категорий к категориям.

Таким образом, если у вас есть база категорий "category" и название категории "Cool Stuff" с слагом "cool_stuff"

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

http://yoursite.com/category/cool_stuff/


Хорошо. Мой последний ответ не основывался на вашем "отредактированном вопросе".

Если вы удалите перенаправление 301 на «mysitename.com/?cat=3» Вы можете редактировать файл index.php.

Это, скорее всего, решит вашу проблему с URL.

Вы можете редактировать цикл, чтобы показывать только категории с id: 3

Таким образом, вы создадите столбец запроса для категории 3 следующим образом:

<?php query_posts('showposts=9'); ?>

См. Query Post @ Wordpress для получения дополнительной информации.

Поместите это перед циклом.

Кодировка может выглядеть следующим образом:

<?php query_posts('cat=3'); ?>
<?php if (have_posts()) {?>
    <?php while (have_posts()) : the_post(); ?>
        <li>
            <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a>
            <span style="float: right;"><?php the_time('m/d/y'); ?></span>
        </li>
<?php endwhile; }?>
0 голосов
/ 11 августа 2010

Вы можете использовать .htaccess для сопоставления mywebsite.com/calendar с mywebsite/?cat=3, но WordPress по-прежнему будет смотреть на исходный URL, чтобы выяснить, какую категорию использовать, поэтому это не будет работать.

Я предлагаюВы смотрите в коде плагина, чтобы узнать, как он получает текущую категорию, и, возможно, обманываете его (путем дополнительного вызова query_posts('cat=3')), чтобы думать, что мы смотрим на URL для категории 3 (вам не нужноотображать сообщения, просто сделайте запрос).Вы даже можете сделать это на своей домашней странице (но, возможно, использовать home.php, а не index.php, поскольку последняя является запасным вариантом для других страниц шаблона), поэтому вам не нужно перенаправлять.Но главное в том, что вам нужно посмотреть на код вашего плагина (можете ли вы назвать его название?), Чтобы узнать, как он работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...