Хлебные крошки

Привет, гуру.

Нужна помощь с хлебными крошками.
У мене в теме есть кустомные типы записей и отдельные шаблоны страниц на которых они выводятся.
Когда ставлю хлебные крошки (код ниже), то вместо того чтобы отобразить страницу (на которой отображаються все касомные посты) выводит ссылку на категорию (имя таксономии).
Нужна следующая последовательность: Главная / Старица с касомными постами / Сингле поста, сейчас отображает Главная / Ссылка на категорию таксономии / Сингле поста

Вот код:
[code- function breadcrumbs() {

/* === ОПЦИИ === */
$text[‘home’] = ‘Главная’; // текст ссылки "Главная"
$text[‘category’] = ‘Архив рубрики "%s"’; // текст для страницы рубрики
$text[‘search’] = ‘Результаты поиска по запросу "%s"’; // текст для страницы с результатами поиска
$text[‘tag’] = ‘Записи с тегом "%s"’; // текст для страницы тега
$text[‘author’] = ‘Статьи автора %s’; // текст для страницы автора
$text[‘404’] = ‘Ошибка 404’; // текст для страницы 404
$text[‘page’] = ‘Страница %s’; // текст ‘Страница N’
$text[‘cpage’] = ‘Страница комментариев %s’; // текст ‘Страница комментариев N’

$delimiter = ‘ / ‘; // разделитель между "крошками"
$delim_before = ‘<span class="divider">’; // тег перед разделителем
$delim_after = ‘</span>’; // тег после разделителя
$show_home_link = 1; // 1 – показывать ссылку "Главная", 0 – не показывать
$show_on_home = 0; // 1 – показывать "хлебные крошки" на главной странице, 0 – не показывать
$show_title = 1; // 1 – показывать подсказку (title) для ссылок, 0 – не показывать
$show_current = 1; // 1 – показывать название текущей страницы, 0 – не показывать
$before = ‘<span class="current">’; // тег перед текущей "крошкой"
$after = ‘</span>’; // тег после текущей "крошки"
/* === КОНЕЦ ОПЦИЙ === */

global $post;
$home_link = home_url(‘/’);
$link_before = ‘<span>’;
$link_after = ‘</span>’;
$link_attr = ‘ itemprop="url"’;
$link_in_before = ‘<span itemprop="title">’;
$link_in_after = ‘</span>’;
$link = $link_before . ‘<a href="%1$s"’ . $link_attr . ‘>’ . $link_in_before . ‘%2$s’ . $link_in_after . ‘</a>’ . $link_after;
$frontpage_id = get_option(‘page_on_front’);
$parent_id = $post->post_parent;
$delimiter = ‘ ‘ . $delim_before . $delimiter . $delim_after . ‘ ‘;

if (is_home() || is_front_page()) {

if ($show_on_home == 1) echo ‘<div class="breadcrumbs"><a href="’ . $home_link . ‘">’ . $text[‘home’] . ‘</a></div>’;

} else {

echo ‘<div class="breadcrumbs">’;
if ($show_home_link == 1) echo sprintf($link, $home_link, $text[‘home’]);

if ( is_category() ) {
$cat = get_category(get_query_var(‘cat’), false);
if ($cat->parent != 0) {
$cats = get_category_parents($cat->parent, TRUE, $delimiter);
$cats = preg_replace("#^(.+)$delimiter$#", "$1", $cats);
$cats = preg_replace(‘#<a([^>]+)>([^<]+)<\/a>#’, $link_before . ‘<a$1′ . $link_attr .’>’ . $link_in_before . ‘$2′ . $link_in_after .'</a>’ . $link_after, $cats);
if ($show_title == 0) $cats = preg_replace(‘/ title="(.*?)"/’, ”, $cats);
if ($show_home_link == 1) echo $delimiter;
echo $cats;
}

if ( get_query_var(‘paged’) ) {
$cat = $cat->cat_ID;
echo $delimiter . sprintf($link, get_category_link($cat), get_cat_name($cat)) . $delimiter . $before . sprintf($text[‘page’], get_query_var(‘paged’)) . $after;
} else {
if ($show_current == 1) echo $delimiter . $before . sprintf($text[‘category’], single_cat_title(”, false)) . $after;
}

} elseif ( is_search() ) {
if ($show_home_link == 1) echo $delimiter;
echo $before . sprintf($text[‘search’], get_search_query()) . $after;

} elseif ( is_day() ) {
if ($show_home_link == 1) echo $delimiter;
echo sprintf($link, get_year_link(get_the_time(‘Y’)), get_the_time(‘Y’)) . $delimiter;
echo sprintf($link, get_month_link(get_the_time(‘Y’), get_the_time(‘m’)), get_the_time(‘F’)) . $delimiter;
echo $before . get_the_time(‘d’) . $after;

} elseif ( is_month() ) {
if ($show_home_link == 1) echo $delimiter;
echo sprintf($link, get_year_link(get_the_time(‘Y’)), get_the_time(‘Y’)) . $delimiter;
echo $before . get_the_time(‘F’) . $after;

} elseif ( is_year() ) {
if ($show_home_link == 1) echo $delimiter;
echo $before . get_the_time(‘Y’) . $after;

} elseif ( is_single() && !is_attachment() ) {
if ($show_home_link == 1) echo $delimiter;
if ( get_post_type() != ‘post’ ) {
$post_type = get_post_type_object(get_post_type());
$slug = $post_type->rewrite;
printf($link, $home_link . ‘/’ . $slug[‘slug’] . ‘/’, $post_type->labels->singular_name);
if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;
} else {
$cat = get_the_category(); $cat = $cat[0];
$cats = get_category_parents($cat, TRUE, $delimiter);
if ($show_current == 0 || get_query_var(‘cpage’)) $cats = preg_replace("#^(.+)$delimiter$#", "$1", $cats);
$cats = preg_replace(‘#<a([^>]+)>([^<]+)<\/a>#’, $link_before . ‘<a$1′ . $link_attr .’>’ . $link_in_before . ‘$2′ . $link_in_after .'</a>’ . $link_after, $cats);
if ($show_title == 0) $cats = preg_replace(‘/ title="(.*?)"/’, ”, $cats);
echo $cats;
if ( get_query_var(‘cpage’) ) {
echo $delimiter . sprintf($link, get_permalink(), get_the_title()) . $delimiter . $before . sprintf($text[‘cpage’], get_query_var(‘cpage’)) . $after;
} else {
if ($show_current == 1) echo $before . get_the_title() . $after;
}
}

// custom post type
} elseif ( !is_single() && !is_page() && get_post_type() != ‘post’ && !is_404() ) {
$post_type = get_post_type_object(get_post_type());
if ( get_query_var(‘paged’) ) {
echo $delimiter . sprintf($link, get_post_type_archive_link($post_type->name), $post_type->label) . $delimiter . $before . sprintf($text[‘page’], get_query_var(‘paged’)) . $after;
} else {
if ($show_current == 1) echo $delimiter . $before . $post_type->label . $after;
}

} elseif ( is_attachment() ) {
if ($show_home_link == 1) echo $delimiter;
$parent = get_post($parent_id);
$cat = get_the_category($parent->ID); $cat = $cat[0];
if ($cat) {
$cats = get_category_parents($cat, TRUE, $delimiter);
$cats = preg_replace(‘#<a([^>]+)>([^<]+)<\/a>#’, $link_before . ‘<a$1′ . $link_attr .’>’ . $link_in_before . ‘$2′ . $link_in_after .'</a>’ . $link_after, $cats);
if ($show_title == 0) $cats = preg_replace(‘/ title="(.*?)"/’, ”, $cats);
echo $cats;
}
printf($link, get_permalink($parent), $parent->post_title);
if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;

} elseif ( is_page() && !$parent_id ) {
if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;

} elseif ( is_page() && $parent_id ) {
if ($show_home_link == 1) echo $delimiter;
if ($parent_id != $frontpage_id) {
$breadcrumbs = array();
while ($parent_id) {
$page = get_page($parent_id);
if ($parent_id != $frontpage_id) {
$breadcrumbs
= sprintf($link, get_permalink($page->ID), get_the_title($page->ID));
}
$parent_id = $page->post_parent;
}
$breadcrumbs = array_reverse($breadcrumbs);
for ($i = 0; $i < count($breadcrumbs); $i++) {
echo $breadcrumbs[$i];
if ($i != count($breadcrumbs)-1) echo $delimiter;
}
}
if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;

} elseif ( is_tag() ) {
if ($show_current == 1) echo $delimiter . $before . sprintf($text[‘tag’], single_tag_title(”, false)) . $after;

} elseif ( is_author() ) {
if ($show_home_link == 1) echo $delimiter;
global $author;
$author = get_userdata($author);
echo $before . sprintf($text[‘author’], $author->display_name) . $after;

} elseif ( is_404() ) {
if ($show_home_link == 1) echo $delimiter;
echo $before . $text[‘404’] . $after;

} elseif ( has_post_format() && !is_singular() ) {
if ($show_home_link == 1) echo $delimiter;
echo get_post_format_string( get_post_format() );
}

echo ‘</div><!– .breadcrumbs –>’;

}
}[/code]
Помогите, пожалуйста

Синхронизация в WooCommerce

Всем привет,
Поделитесь пожалуйста опытом,
Нужно в WooCommerce, wp4.3 загрузить продукты с категориями из внешних таблиц
Я погуглил и нашел такую ссылку http://wordpress.stackexchange.com/questions/137501/how-to-add-product-in-woocommerce-with-php-code
с примером кода

        $post = array(
     'post_author' => $user_id,
     'post_content' => '',
     'post_status' => "publish",
     'post_title' => $product->part_num,
     'post_parent' => '',
     'post_type' => "product",

     );
      //Create post
     $post_id = wp_insert_post( $post, $wp_error );
     if($post_id){
     $attach_id = get_post_meta($product->parent_id, "_thumbnail_id", true);
     add_post_meta($post_id, '_thumbnail_id', $attach_id);
    }
    wp_set_object_terms( $post_id, 'Races', 'product_cat' );
     wp_set_object_terms($post_id, 'simple', 'product_type');



     update_post_meta( $post_id, '_visibility', 'visible' );
     update_post_meta( $post_id, '_stock_status', 'instock');
     update_post_meta( $post_id, 'total_sales', '0');
     update_post_meta( $post_id, '_downloadable', 'yes');
     update_post_meta( $post_id, '_virtual', 'yes');
     update_post_meta( $post_id, '_regular_price', "1" );
     update_post_meta( $post_id, '_sale_price', "1" );
     update_post_meta( $post_id, '_purchase_note', "" );
     update_post_meta( $post_id, '_featured', "no" );
     update_post_meta( $post_id, '_weight', "" );
     update_post_meta( $post_id, '_length', "" );
     update_post_meta( $post_id, '_width', "" );
     update_post_meta( $post_id, '_height', "" );
     update_post_meta($post_id, '_sku', "");
     update_post_meta( $post_id, '_product_attributes', array());
     update_post_meta( $post_id, '_sale_price_dates_from', "" );
     update_post_meta( $post_id, '_sale_price_dates_to', "" );
     update_post_meta( $post_id, '_price', "1" );
     update_post_meta( $post_id, '_sold_individually', "" );
     update_post_meta( $post_id, '_manage_stock', "no" );
     update_post_meta( $post_id, '_backorders', "no" );
     update_post_meta( $post_id, '_stock', "" );

     // file paths will be stored in an array keyed off md5(file path)
    $downdloadArray =array('name'=>"Test", 'file' => $uploadDIR['baseurl']."/video/".$video);

    $file_path =md5($uploadDIR['baseurl']."/video/".$video);


    $_file_paths[  $file_path  ] = $downdloadArray;
    // grant permission to any newly added files on any existing orders for this product
    //do_action( 'woocommerce_process_product_file_download_paths', $post_id, 0, $downdloadArray );
    update_post_meta( $post_id, '_downloadable_files ', $_file_paths);
    update_post_meta( $post_id, '_download_limit', '');
    update_post_meta( $post_id, '_download_expiry', '');
    update_post_meta( $post_id, '_download_type', '');
    update_post_meta( $post_id, '_product_image_gallery', '');

Но гугл также выдал ссылку на http://woocommerce.wp-a2z.org/oik_api/wc_api_productscreate_product/
и
WC_API_Products::create_product() – Create a new product
также есть ссылки на REST API

Что предпочтительнее/надежнее?
Есть опыт программирования в wp(в том числе програмного добавления категорий и постов при помощи wp_insert_category и wp_insert_post ) – с WooCommerce не работал

И несколько слов о синхронизации как я ее вижу сейчас:
1) есть 2 внешние таблицы categories , products
2) К этим таблицама кроме их полей добавляю еще 2 поля status( возможные значения "unmodified", "new", "modified", "deleted"), wp_id – ссылка на строку в wp
3) синхронизацию нужно делать из wp, средствами wp о чем я выше спрашивал в кроне или по кнопке
4) Проверяя из wp-процедуры значение status – выполнять соответствующую операцию в wp присвоить status = "unmodified"
5) видимо нужно будет создать таблицу rows_deleted – где и хранить коды удаленных сатегорий и постов – так меньше будет переделок во внешней программе

что я упустил – и возможно в wp есть удобные средства для этого ?

Спасибо!

адрес страницы

Подскажите почему не правильно отображается адрес страницы? вот так site.ru/sfrsersrurres_rrrr_rr_srrrsoersf_srsr/

Не изменяет страницы и записи

Почему-то перестал сохранять изменения в страница и записях и добавлять новые –
при нажатии на кнопку "Обновить" бесконечно крутится колесико

Сам сайт работает нормально – Адрес сайта: http://oriontronix.marketingsupport.ru

Причем права на папки стоят 755

Версия WordPress 4.3

Плагины:
Advanced Custom Fields Pro
All In One SEO Pack
Contact Form 7
Disable XML-RPC
Login LockDown
MailChimp for WordPress Lite
Newsletter
RusToLat
uLogin
WP Robots Txt
Мета слайдер
Свой логин
Список страниц

Помогите умным советом, пожалуйста.

Как отображать время перед записями

Помогите с такой проблемой – в колонке записей с новостями надо сделать чтоб отображалась дата.
То есть если я поставил например новость в 11.45, и чтоб перед ней или после отображалось время.
Вы наверное видели на новостных сайтах. Как это можно сделать – только добавить код или может есть какой топлагин?

Админка со ссылками на внешние сайты

Всем привет,
Используя wp 4.3 при загрузке страниц админки(настройки по умолчанию) в статусе браузера вижу ссылки на внешние сайты – что мне крайне не нравиться, так как это замедляет загрузку страниц…\
Ищу в в коде по ссылкам и вижу функции вида :

    /**
     * Adds another stylesheet inside TinyMCE.
     *
     * @since 4.2.0
     * @access public
     *
     * @param string $styles URL to editor stylesheet.
     * @return string Possibly modified stylesheets list.
     */
    public function add_editor_style( $styles ) {
        if ( ! empty( $styles ) ) {
            $styles .= ',';
        }


            $open_sans_font_url = ',' . add_query_arg( $query_args, 'https://fonts.googleapis.com/css' );

Я когда-то вручную чистил такие ссылки – но нет ли плагинов или возможно тем для админок без внешних ссылок ?

Каталог категорий

Здравствуйте, 2 суток гуглил, искал разные решения, но в итоге решил найти ответ на вопрос у специалистов и гуру. Я хотел бы реализовать вывод списка категорий на главной, далее что бы при нажатии на категорию, я попадал на страницу под-категорий которые входят именно в эту категорию. Когда нажимаешь на подкатегорию в этом списке, открывается либо перечень подкатегорий нижнеего уровня, либо уже список постов, опубликованных в этой подкатегории.

Как такое возможно реализовать не трогая код, за счет плагинов или лупов ?

Шаблон для страниц и категорий не подойдет.

Спасибо, и буду рад любой подсказке с Вашей стороны!

редактирование виджетов

Добрый день! Помогите с проблемой: на сайте есть несколько виджетов и они все оформлены под один шаблон. А мне нужно для каждого виджета установить свои настройки. В редакторе кода это сделать возможно, а в каком файле на самом деле прописывается набор стилей для каждого установленного виджета, найти не могу. Сайт laguna-tur.ru

не рендится поле CF7 – Dynamic Select Extension

Всем привет,
Используя Contact Form 7 понадобилось вывести список на основе данных из бд

Порывшись в нете нашел плагин Contact Form 7 – Dynamic Select Extension и
описание к нему https://github.com/Hube2/contact-form-7-dynamic-select-extension
Установил этот плагин и он отобразился в форме настройки Contact Form 7

Делаю как в описании http://imgur.com/Fy3QY3i
В результате на экран выводятся текст этих полей. Эти поля не рендятся…
Функция cf7_dynamic_select_do_example1 я определил как и в описании…
В логах ошибок нет. Если предположить, что ошибка при вызове этой функции – то врядли выводился простой текст?
Никто с этим плагином не сталкивался?
Может есть что другое удобное для этих целей?

статьи на разных языках?

Всем привет
Делаю многоязычный сайт, Натягал несолько статей из википедии, но подумал спросить а нет ли готовых выложенных статей
на разных языках? Можно русский, английский, украинский, польский, французский, немецкий – то есть те языки которые различимы для меня на глаз…
Тематика не важна…

Спасибо!

Не меняется главная блога

Изменения в консоли для темы не применяются для главной страницы.
02web.ru/blog
Если перейти на любую страницу или пост в блоге, меняется заголовок и ссылки в сайдбаре. Так все должно быть.
На главной неактуальные данные. Плюс не отображается последний пост. Пробовал изменить тему – главная осталась такой же.
С чем может быть связано? Ошибка в коде? Делал небольшие изменения в коде, но ошибки не должно быть. Но не исключено, не специалист.

Проблема с миниатюрой записи

Добрый день.
Подскажите, как сделать, чтобы миниатюра записи масштрабировалась.
Сейчас с этим есть 2 проблемы:

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

Какой плагин поставить, чтобы происходило масштабирование картинке для миниатюры и записи.
Вот пример такой записи: http://pandora5.ru/uprazhneniya-dlya…hki-na-shpagat

Не получается зайти в админку сайта.

Установил плагин Admin Bar Login, на сайт http://www.bigfoto.in.ua.

После регистрации нового пользователя как учасника, приходить логин и пароль по указаному емейлу.
И ссылка для логин формы, после внесенния данных перенаправляет на страницу profile.php и выдает ошибку.
Прбовал подключать другой плагин но ошибка такая же.

http://www.bigfoto.in.ua/wp-admin/profile.php

(There was a problem loading this page, you may not have the necessary permissions.)

Спасибо.

Нужна помощь

Всем доброго времени суток!
Приобрели тему Пенни (скандинавского) аукциона с сайта sitemile.com. Все работает, кроме того, что по окончании времени отдельно взятого аукциона, он выбрасывает надпись "Аукцион Закрыт". А должен работать еще какоето время с определенным количеством секунд в обратном отсчете, которое мы указываем в админке. Служба поддержки наобещала исправить и испарилась. Помогите, кто может, проект стоит!

Версия WordPress + Версия PHP = Дружба

Приветствую!

Возникла такая ситуация, что на VPS стоит версия PHP 5.2, есть необходимость обновить ОС на VPS, но данная версия ОС работает с PHP 5.4. А у меня на VPS лежит несколько сайтов на WordPress, начиная с версии 2.9.2 и выше.

Будут ли корректно работать сайты, если установить PHP 5.4?

РЕдактировать доп поля в админке

Подскажите пожалуйста есть ли плагин для вывода доп полей в список записей в вордпресс, чтобы не заходить в каждую запись для редактирования поля. Наподобие как сделано в AllinOne Seo pack.

Плагин Page_htm

Доброго времени суток! Скажите, пожалуйста, имеет ли большое значение для ПС сейчас наличие .html в конце ссылки на страницу сайта? Иными словам на сколько важен плагин Page_Htm, ставить ли его в обязательном порядке или можно обойтись и, старым добрым, RusToLat ?

Записи

Всем добрый день! Не подскажите, как сделать так, чтобы в рубрике отображалось только название записи и несколько первых предложений, а сама запись отображалась при клике на ее заголовок.

Помогите новичку

Всем добра. Я тут решила начать работать на wordpress и для начала сделать для знакомой сайт. Вот она написала что нравятся ей http://plantica.net/product/ и http://www.sileninano.com/wines/
Можете подсказать какие темы или что вообще использовать лучше, чтобы создать нечто подобное?
А еще хочет чтобы была страница с видеоблогом. Как это реализовать лучше?

Не могу удалить картинку в 1px

Всем доброго дня!

У меня следующая проблема. В самом верху сайта (над шапкой) отображается картинка размером в 1 px, т.е. точка. Из-за нее весь сайт сдвигается вниз, и этот отступ смотрится не красиво. При просмотре кода этого элемента (точки) в браузере Хром вижу строку:

<img width="1" height="1" border="0" src="http://ad.admitad.com/b/undefined/">

Как удалить этот код в шаблоне сайта, не знаю. Ни в одном файле темы сайта слово "admitad" не встречается. Обращалась в техподдержку admitad.com, вот их ответ:

"Это рекламный пиксель, который отслеживал трафик, который шел через Адмитад. Если Вы больше не пользуетесь услугами нашей системы Вы можете просто удалить этот код с Вашей страницы."

Повторюсь, что не знаю, где установлен этот код.

Хотелось бы или найти его и удалить или сделать так, чтобы картинка просто не отображалась, т.е. прописать для нее в стилях "display: none;", но опять же я не знаю, как.

Спасибо всем, кто отзовется.

Anonymous
Отправить
Ответ на: