Это просто темы для вп такие тормознутые, особенно платные. В коде 60 скриптов грузится и 60 таблиц стилей, аш браузер подвисает. Некоторые темы для пробы ставил, там на пустом сайте больше 150 запросов к базе делают и скорость генерации страницы больше 2 секунд.
Это я к тому, что сам ВП не виноват.
У меня тоже доски объявлений, даже не знаю что делать, хоть сноси все.
Решил оставить только размещение компаниям, (не знаю будет это считаться персональными данными или нет?).
Все формы обратной связи и комменты убрал.
Пользовательское соглашение заказал (накатали текста на 17 000 символов).
Как это на самом деле? не знаю!
Может поможет window.history.replaceState
Динамически менять урл, по крайней мере так можно загружать последнюю страницу пагинации, если вернуться назад из объявления.
так можно тогда попробовать
<div class="crumbs" xmlns:v="http://rdf.data-vocabulary.org/#"><span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="http://сайт.com/" >Главная</a></span> / <?php$args=array('orderby' => 'count', 'order' => 'DESC');$terms = wp_get_post_terms( $post->ID , 'category', $args);$recc = array_pop($terms);echo '<span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="'.get_category_link($recc->term_id ) .'" >' . $recc->name.'</a></span>'; ?> / <?phpecho '<span class="current">'.the_title().'</span>'; ?></div>
<div class="crumbs" xmlns:v="http://rdf.data-vocabulary.org/#"><span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="http://сайт.com/" >Главная</a></span> / <?php$terms = get_the_terms($post->ID,'category');$list = '';$find_parent = 0;for( $i = 0; $i < sizeof($terms); ++$i) { foreach ($terms as $term) { if ($term->parent == $find_parent) { $find_parent = $term->term_id;$list = '<span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="'.get_category_link($term->term_id ) .'" >' . $term->name.'</a></span>'; } }echo $list;}?> / <?phpecho '<span class="current">'.the_title().'</span>'; ?></div>
Без основной рубрики чтоли? т.е. без всей цепочки
Для правильной последовательности подрубрик в крошках
Способ номер раз:
<?php$terms = get_the_terms($post->ID,'category');$sep = '';$list = '';$find_parent = 0;for( $i = 0; $i < sizeof($terms); ++$i) { foreach ($terms as $term) { if ($term->parent == $find_parent) { $find_parent = $term->term_id; $list .= $sep . '<span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="'.get_category_link($term->term_id ) .'" >' . $term->name.'</a></span>'; $sep = ' › ';//разделитель } }}echo "$list";?>
Способ номер два:
<?php$cnt = 0;$args=array('orderby' => 'count', 'order' => 'DESC');$terms = wp_get_post_terms( $post->ID , 'category', $args);foreach($terms as $term) {if ($cnt>0) $regregy .= ' / ';//разделитель$regregy .= '<span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="'.get_category_link($term->term_id ) .'" >' . $term->name.'</a></span>'; ++$cnt;}echo $regregy;?>
Во втором способе сортировка по количеству постов в категории. в родительской постов больше(хотя не всегда)
Привязку делайте на основе пользователя.
Например зарегистрированный пользователь добавил компанию и он же добавил услуги, теперь на странице этой компании можно вывести и услуги компании
<?php
$author = get_the_author(); // получаем автора разместившего компанию
$args = array(
'author_name' => $author,
'category_name' => 'uslugi',//категория услуги
);
$query = new WP_Query( $args );
?>
Далее выводятся все услуги компании.
(Вместо категории услуги, лучше сделать произвольный тип записи)
Тоже самое и на странице услуги, можно вывести информацию о компании.
Ну и нужно сделать так, чтобы один зареганый юзер, мог добавить только одну компанию.
Вот я нечто подобное делал http://scrollmaster.ru/moskva/user/shik-blesk-krasota-mobilnyj-salon-krasoty/
Правда так и не доделал, забросил.
У вас поисковый запрос это слаг метки s=$tag->slug, а надо s=$tag->name
Спасибо, Кэп!