Как получить данные $category_id в wordpress

Содержание материала:

Как я могу получить данные из базы данных, когда я получаю сообщение >

Я получаю сообщение id из url, как это

и в базе этого id я хочу получить данные из db, но ничего не получает, я пробовал этот код

Поэтому я хочу получить данные, используя id я получаю через URL. Поэтому, пожалуйста, скажите мне, что я могу сделать с моим кодом

Solutions Collecting From Web of «Как я могу получить данные из базы данных, когда я получаю сообщение >

  • Пользовательский виджет заголовка / кодировка HTML
  • Как отображать последние сообщения на домашней странице с помощью пользовательского HTML
  • Почему html-теги добавляются к моим фотографиям?
  • Форма представления WordPressUser
  • Добавление HTML в атрибут заголовка изображения
  • Как сделать мою страницу wordpress более дружественной для мобильных зрителей?
  • Будет ли мой сайт WordPress уязвимым для межсайтового сценария (XSS), если я разрешу теги img в области комментариев?
  • Как создать Shortcode с зависанием и сложными параметрами

Вы можете использовать параметр $ _GET для получения идентификатора.

Или попробуйте следующее:

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

И тогда вам не нужно зацикливаться, потому что у вас есть одно сообщение для показа.

Затем вы получаете сообщение в $post_data . Просто проверьте:

Это не работает по нескольким причинам.

  1. Вы пытаетесь запросить идентификатор страницы и задаете таксономию категории. У страниц нет категорий, связанных с ними.
  2. Вероятно, загрузка – это собственный тип сообщения, поэтому вы хотите указать, что вместо «страницы»,

Измените аргументы запроса на следующее, и это должно сделать трюк (на основе информации, которая у меня есть).

Загрузка, которую вы упомянули, вероятно, должна быть post_type, а не category_name

Попробуйте это и посмотрите, работает ли это

$ =>’download’, ‘posts_per_page’=> ‘-1’, ‘post_id’=> $ >post_title; >

поскольку полученные $ сообщения будут представлять собой массив std-объектов, вам нужно будет пройти через них, чтобы получить требуемую запись

И поскольку вы получаете идентификатор сообщения, вы можете напрямую получить сообщение, используя get_post (), как это

$ ]; $post=get_post($id); echo $post->post_title;

В столбце $ post-> post_title будет отображаться заголовок сообщения, если вы являетесь страницей или загружаете, если идентификатор верен.

Получение всех записей рубрики из базы данных WordPress

В WordPress есть штатные средства получения записей из конкретной рубрики. Но, как поступить, если они по каким либо причинам не устраивают разработчика и необходимо реализовать собственные?

Для этого требуется, прежде всего, получить записи конкретной рубрики из базы данных WordPress (БД).

В старых версиях WordPress данная задача решалась предельно просто, так как записи и рубрики были связаны напрямую через поле category. В новых версиях всё иначе.

Полное описание структуры БД приведено в документации. Для решения данной задачи потребуются только 4 из них

  • wp_posts – в ней, собственно, и хранятся записи;
  • wp_terms – в ней хранятся рубрики и метки (теги);
  • wp_term_taxonomy – В ней находится таксономия записей из таблицы terms;
  • wp_term_relationships – хранит данные о связях записей из term_taxonomy и posts.

Для того чтобы упростить написание и без того громоздкого и сложного запроса, на первых стадиях решения задачи не будем выбирать из результирующего набора данных конкретные поля. Это будет сделано позднее, когда будет написан уже готовый запрос. Цель данной статьи проиллюстрировать, в первую очередь, саму логику получения необходимых данных.

В начале, необходимо получить те записи из таблицы wp_terms, которые являются категориями. Для этого напишем запрос, который будет на основе данных из двух таблиц wp_terms и wp_term_taxonomy отбирать только те записи, которые имеют соответствующую таксономию.

Как получить все категории (рубрики) товаров WooCommerce в WordPress?

Я думаю, что многие согласятся со мной, что WooCommerce – это отличное решение для CMS WordPress, с помощью которого можно организовать свой собственный интернет-магазин.

Мы уже затрагивали тему этого дополнения и CMS в общем. Так что сегодня я покажу вам, как просто и без всяких плагинов вывести меню (кликабельный список всех категорий товаров) на вашем сайте.

1. Итак, первое, что вам необходимо сделать – это подключиться к вашему сайту по FTP.

2. Далее в папке вашей темы откройте файл functions.php и в самый низ вставьте нашу функцию вызова категорий:

Сохраняете изменения и отправляете файл обратно на сайт.

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

Стилизацию меню в этой статье я не рассматриваю, думаю, ее вы можете сделать и сами.

Общий класс меню – «main_cat_shop», цепляетесь за него и настраиваете вид так, как вам нужно.

Вывод категорий в WordPress: функция wp_list_categories

Приветствую всех посетителей блога DmitriyZhilin.ru, в этой статье я расскажу вам о функции wp_list_categories, отвечающей за вывод категорий в WordPress. Данная функция позволяет нам в разном виде выводить рубрики наших сайтов без использования стандартного виджета «Рубрики».

Честно сказать, я не любитель ковыряться в коде, предпочитаю все специфические моменты в работе над своим блогом перекладывать на плечи профессиональных фрилансеров (найти их можно тут – Kwork ). Однако жизнь заставляет порой сделать что-то самому, особенно если объем работ небольшой и прибегать к услугам программистов нецелесообразно.

Работа с функцией wp_list_categories как раз один из тех случаев. Данная функция позволяет нам легко, просто и, главное, быстро настроить вывод рубрик (категорий) сайта на WordPress так как нам удобно: сделать вывод определенных разделов или исключить лишнее, отсортировать по алфавиту, настроить внешний вид и еще много чего.

Я буду показывать применение wp_list_categories на своем блоге в сайдбаре, с помощью виджета «PHP-код», позволяющего выполнять команды языка PHP (добавляется плагином PHP Code Widget). В данный виджет я буду вставлять различные фрагменты кода, которые и позволят нам поэкспериментировать с выводом категорий.

Топ-пост этого месяца:  Скорость загрузки является для Google слабым сигналом ранжирования

Общие параметры функции

Итак, для того чтобы просто вывести перечень всех категорий достаточно вставить в виджет «PHP-код» вот такой код:

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

Оформление данного заголовка редко вписывается в дизайн сайтов, поэтому его зачастую либо просто удаляют, либо изменяют.

Для этого в нашу функцию через символ & добавляется параметр title_li= . С помощью кода, приведенного ниже, заголовок просто удаляется:

Для того, чтобы все-таки добавить заголовок в блок категорий, вы можете задать стандартным способом название самому виджету в который мы вставляем код или оформить его обычным HTML:

Также, как я уже сказал выше, с помощью того же параметра title_li= мы можем изменять заголовок рубрик. В этом случае код функции будет выглядеть следующим образом:

Блок категорий при использовании этого кода не будет отличаться от первоначального, только с другим текстом в первой строке.

Кстати, название блока категорий (в моем примере это фраза «Мои рубрики») также можно заключать в теги. Например, можно воспользоваться тегами выделения шрифта жирным или как заголовок, например:

Это позволит вам в некоторых случаях более удачно оформить свой блок категорий.

Вывод определенных категорий в WordPress

Едем дальше. С помощью функции wp_list_categories мы имеем возможность вывести только какие-то определенные категории в WordPress. Другими словами, мы можем указать какие конкретно категории нужно отобразить в блоке и сделать активными.

Дело в том, что каждая рубрика имеет свой индивидуальный id-номер. И выводить категории мы можем именно по этим самым номерам. Здесь читайте как посмотреть id категории в WordPress.

В результате блок с рубриками выводит две категории «Как создать сайт самому» и «Вопросы и ответы», и соответственно выглядит так (не забываем что title_li= скрывает/изменяет стандартный заголовок тега):

Также wp_list_categories позволяет указать какие рубрики не нужно отображать в блоке. Для этого существует параметр exclude=. По аналогии с предыдущей функцией указываем в ней id тех категорий, которые мы не хотим выводить:

Данным кодом я исключил все те же рубрики «Как создать сайт самому» и «Вопросы и ответы», в результате блок стал выглядеть так:

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

Кроме этого, с помощью данной функции можно указывать количество записей (статей), которые содержатся в той или иной категории. Здесь нам понадобится параметр show_count= :

Использование данного кода придает блоку рубрик следующий вид:

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

Сортировка категорий по алфавиту

На случай если категории в блоке выводятся без сортировки по алфавиту предусмотрен параметр orderby= . Чтобы рубрики выстроились по названию необходимо задать этому параметру значение name :

У меня на блоге все рубрики изначально отсортированы по алфавиту, поэтому задавать этот параметр не нужно.

Ну что ж, теперь для закрепления информации давайте реализуем с помощью кода сразу несколько задач.

Использование wp_list_categories с комплексом параметров

Выведем только три рубрики с id 80 и 91, покажем сколько в этих категориях статей, уберем скобки вокруг цифры статей и зададим название блоку. Вот как в этом случае будет выглядеть код:

Этим кодом мы задали функции сразу несколько параметров и вот что получилось в результате:

Как вы заметили все параметры сработали и наш блок отобразился именно так, как мы и хотели.

Другие возможности wp_list_categories

Некоторым может показаться, что использовать wp_list_categories нет необходимости, ведь существует стандартный виджет «Рубрики». Отчасти да, применять на каждом шагу данную функцию смысла нет, но многие возможности в виджете не реализованы, кроме того, виджет работает только в сайдбаре, а с помощью функции вы можете делать вывод рубрик на страницу WordPress в любые места.

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

Те возможности данного тега, которые я привел в статье далеко не единственные. wp_list_categories обладает еще целым рядом параметров.

  • параметрshow_option_all вырезает ссылки, т.е. он позволяет просто вывести список категорий вашего сайта без возможности перейти на страницу со статьями рубрик.
  • hide_empty— этот параметр позволяет выводить/не выводить в блоке рубрики, в которых еще не опубликовано ни одной статьи.
  • child_of— позволяет настраивать вывод подкатегорий одной или нескольких указанных категорий.
  • number— дает возможность указать, сколько рубрик выводить в блоке.

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

Кому интересно узнать о всех возможностях этого тега, можете поискать информацию в интернете. Я уверен, сайтов, которые до винтиков разбирают функцию wp_list_categories будет много.

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

О многих других интересных и полезных фишках я буду рассказывать в своих следующих статьях. Поэтому тем, кто серьезно занимается своим блогом я рекомендую подписаться на обновления.

Вывод названия текущей категории в WordPress

Готовые PHP для вывода названий текущей категории в записях WordPress. Вывод разделов в зависимости от глубины подраздела, в которой находится запись.

Есть стандартная функция для вывода категорий на WordPress:

Она выводит список всех категорий через запятую.

А что если нужно вывести только определенный вложенный (дочерний) или только главный раздел? И совсем не нужно выводить все предыдущие разделы. В этом случае the_category уже не подойдет.

Сделать это можно другими способами.

Вывести название только самого главного раздела

Этот код следует вставить в файл functions.php своей темы на WordPress.

function get_level($category, $level = 1)
<
if ($category->category_parent == 0) <
return $level;
> else <
$level++;
$category = get_category($category->category_parent);
return get_level($category, $level);
>
>

function display_cat_level_1($link=false) <
$cats = get_the_category( );
if( $cats ) <
foreach($cats as $cat) <
$current_cat_level = get_level($cat);
if( $current_cat_level == $level = 1 ) <
if($link==true) <
echo ‘cat_ID).'»>’.$cat->name.» «;
> else <
echo $cat->name.»
«;
>
>
>
>
>

Вывод этой функции:

Следующий код необходимо использовать в файле single.php или любом другом отвечающим за вывод информации в статье на сайте.

Вывести название только дочернего раздела

Функция не будет работать для записей второй категории вложенности. Только для записей третей категории вложенности. Иными словами будет выводиться только для записей такого рода:

Категории Марки -> Audi -> Статья об Ауди

В данном случае код выведет для записи «Статья об Ауди» раздел с названием Audi. А если какая-то статья будет находится только в разделе Марки, то для неё выводится ничего не будет.

function get_level($category, $level = 1)
<
if ($category->category_parent == 0) <
return $level;
> else <
$level++;
$category = get_category($category->category_parent);
return get_level($category, $level);
>
>

function display_cat_level_2($link=false) <
$cats = get_the_category( );
if( $cats ) <
foreach($cats as $cat) <
$current_cat_level = get_level($cat);
if( $current_cat_level == $level = 2 ) <
if($link==true) <
echo ‘cat_ID).'»>’.$cat->name.» «;
> else <
echo $cat->name.»
«;
>
>
>
>
>

Вывод этой функции:

Вывод родительской категории в статьях

Можно выводить разделы другим способом. В этом случае не нужно ничего вставлять в файл functions.php. Достаточно вставить код в файл вывода записей.

Топ-пост этого месяца:  Как правильно создать robots для сайта – полное руководство.txt

category_parent == 0) <
if ( !in_array($category->cat_ID, $excludedcats) ) <
echo $separator . » . $category->name.»;
// echo $separator . ‘ – term_ >name)) . ‘» ‘ . ‘>’ . $category->name.»;

Вывод названия последнего раздела для статьи

Этот php код выводит название самой «глубокой» категории для статьи:

ID);
foreach($categories as $category) :
$children = get_categories( array (‘parent’ => $category->term_id ));
$has_children = count($children);
if ( $has_children == 0 ) <

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

А вот ещё один способ как вывести в статье только подразделы.

foreach($categories as $category) :
$children = get_categories( array (‘parent’ => $category->term_id ));
$has_children = count($children);

if ( $has_children == 0 ) <
echo $category->cat_name .’ ‘;
break; // Останавливаем после первого найденного объекта. Если нужны все, то строчку нужно закомментировать.
>
endforeach;

> 20 мая 20 мая Игорь Серов

Что такое ID WordPress и зачем он нужен

Обозначение ID это уникальный идентификатор. В принципе можно не вдаваться в подробности и просто знать, что при создании страницы, поста, раздела, медиафайла, пользователя и тега система присваивает им уникальный идентификационный номер, так называемое и обозначаемое ID.

Назначение ID очень простое и связано с уникальностью кортежа (записи) в каждой таблице базы данных. То есть, система присваивает уникальный ID, который является одним из атрибутов записи таблицы БД, и вместе с тем это суррогатный первичный ключ этой записи. Например, по ID поста его можно вызвать, можно связать с ID пользователя и т.д. В общем, ID это такой уникальный номер который необходим для работы базы данных, а, следовательно, всей системы. Без знания ID не получится составить большинство запросов SQL к базе данных и написать специальные функциональные коды, например, простенький код «скрыть категории с главной страницы«.

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

Напомню, основное содержание сайта WordPress «лежит» в четырех таблицах базы данных:

  • wp_users (пользователи всех «мастей»);
  • wp_post (посты сайта);
  • wp_post_meta (страницы, прикрепленные медиафайлы);
  • wp_terms (метки, категории, ссылки).

Вывод: мы можем встретить статью и тег с одинаковым номером ID, но не можем встретить категорию и метку и одинаковым ID.

Как посмотреть номер ID WordPress страницы, поста, раздела, пользователя

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

Узнать ID в phpmyadmin

Этот способ может пригодиться, если нет доступа к административной панели сайта.

  • Входите в phpmyadmin из админки хостинга;
  • Открываете структуру базы данных своего сайта;
  • Выбираете одну из четырех таблиц (список выше);
  • Открываете эту таблицу (ссылка — Изменить);
  • Ищите > ID WordPress страницы, поста, раздела, пользователя в phpmyadmin

Узнать ID записи функцией по умолчанию

ID запиписи, по умолчанию, выводит следующая функция wordpress: the_ID() . Работает функция внутри цикла, без аргументов. Её и используем.

  • Открываем файл footer.php ;
  • Перед закрывающим тегом html (внизу файла) вставляем строку, при этом работаем только в текстовом редакторе (типа Notepad+):
  • Сохраняемся и при открытии поста видим внизу его ID номер.

Определить ID статьи, тега, раздела, пользователя из административной панели WordPress

Принцип определения ID статей, тегов, разделов, пользователя единообразен.

Авторизуемся в административной панели сайта;

Чтобы узнать ID статьи, открываем вкладку Записи;

  • Наводим стрелку мыши на ссылку «Изменить», нужной записи и внизу страницы видим ID этой записи. Аналогично, смотрим ID страницы.

Чтобы узнать ID раздела, открываем вкладку Разделы;

  • Наводим стрелку мыши на ссылку «Изменить», нужного раздела и внизу страницы видим ID этой записи.

Чтобы узнать ID метки, открываем вкладку Метки;

  • Наводим стрелку мыши на ссылку «Изменить», нужной метки и внизу страницы видим tag_ID этой метки.

Чтобы узнать ID пользователя, открываем вкладку Пользователи;

  • Наводим стрелку мыши на ссылку «Изменить», нужного пользователя и внизу страницы видим user_ID этого пользователя.

Второй способ определения ID статьи, страницы, раздела, метки, пользователя из панели WordPress

Можно узнать ID несколько иначе. Номер ID прекрасно виден на страницах редактирования записи, метки, раздела, пользователя, метки. Только смотрим ID не внизу, а в адресной строке браузера.

Вывести ID статей плагином

Если вас не устраивает вышеперечисленные способы определения ID записей, разделов, меток установите плагин: «Reveal IDs».

Плагин возвращает спискам постов, разделов, меток вид WordPress 2.5, где ID показывались отдельным столбцом.

Настроек у плагина нет. Устанавливаете плагин, активируете и смотрите ID, того что нужно.

SEO Маяк

Блог Виталия Кириллова | Все о создании,
продвижении сайтов и заработке в интернете

Создание и продвижение сайтов, заработок в интернете

get_categories()

С помощью функции get_categories() можно получить массив объектов с данными о категориях для вывода на экран или для дальнейших операций.

Работает на основе: get_terms().

Применение:

$args (строка/массив ) — аргументы, которые может принимать функция.

По умолчанию: Стандартный массив объектов для таксономии ‘category’.

У данной функции есть всего один уникальный аргумент ‘type’ , которого нет в арсенале get_terms() .

Шаблон функции со всеми аргументами

Аргументы массива $args

‘type’ => ‘post’, (строка) — Тип таксономии, элементы которой требуется получить (необязательно) .

‘post’ — будут получены данные о категориях постов.
‘link’ — данные о категориях ссылок.

По умолчанию: post.

Полный список аргументов, которые может принимать функция, можно посмотреть в описании get_terms().

Возвращаемые значения

Основное отличие функции get_categories() от get_terms() заключается именно в возвращаемых значениях:

term_id — идентификатор терма.
name — название терма.
slug — ярлык терма
term_group — порядковый номер в группе (не используется, по умолчанию: 0) .
term_taxonomy_id — идентификатор таксономии.
taxonomy — название таксономии.
description — описание элемента таксономии.
parent — идентификатор родительского терма.
count — количество прикрепленных записей к терму.
filter — тип фильтра.
cat_ID — идентификатор категории.
category_count — количество прикрепленных записей к категории.
category_description — описание категории.
cat_name — название категории.
category_nicename — ярлык категории.
category_parent — идентификатор родительской категории.

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

Хуки функции

В функцию заложен хук-фильтр get_categories_taxonomy.

Получить идентификатор текущей категории из текстовой страницы WordPress

У меня есть проблема, чтобы получить идентификатор категории текущего сообщения. Мы используем Для определения категории текущего сообщения. Если сообщение типа «demo» имеет 2 категории, такие как cat1 и cat2. Когда я открываю страницу cat1, а затем перехожу на демонстрационную страницу, я хочу разную компоновку. И когда я открываю страницу cat2, а затем перехожу на демонстрационную страницу, я хочу открыть эту демонстрационную страницу с другим макетом. Это может быть сделано только тогда, когда я буду определять . из которого почта вызвала .. но как ??

Solutions Collecting From Web of «Получить идентификатор текущей категории из текстовой страницы WordPress»

WordPress имеет функцию wp_get_referer , которая получает URL-адрес ссылки из http-заголовка. Итак, если вы перейдете из архива категорий в один пост, имя категории обычно будет включено в этот URL-адрес. Это означает, что вы можете запустить свой single.php следующим образом:

В зависимости от вашей настройки это решение может нуждаться в некоторой настройке, но, на мой взгляд, общая идея ясна.

Это вернет массив категорий, из которого вы можете получить идентификатор, например:

Это будет для первой категории в массиве, если их больше одного.

Информацию об использовании можно найти в кодексе

Как упоминал Гаффен: «изменение макета сообщений в зависимости от того, какая категория была посещена»

Сначала на странице шаблона категории в вашей теме (например, category.php)

получить идентификатор категории и сохранить его в опции WordPress Transient.

теперь на single.php или на одной странице шаблона отображения сообщений.

получить значение от Transient и изменить отображение в соответствии с

В вашем single.php вы можете использовать, например

Еще лучше, используйте get_template_part, чтобы вы не просто наводнили ваш single.php всеми глупыми кодами.

Сначала получите идентификатор категории:

Затем получите название категории:

Тогда вы можете решить, в зависимости от названия категории, что делать:

WordPress. Как получить посты только категории с > Задать вопрос

Получаю посты для категории по ID так

Но выводятся все посты, включая дочерние категории.
Подскажите, как вывести посты определённой категории, исключив дочерние?

2 ответа 2

Важно: не используйте query_posts()

query_posts() предназначена для самого WordPress и должна использоваться для изменения основного Цикла WordPress, если нужно создать еще одни цикл, то используйте get_posts() или WP_Query . С версии 3.0 эти функции могут принимать все те же параметры что и query_posts() .

Полагаю надо получать как-то так

category (строка/число) — Из каких категорий выводить записи. Укажите ID категории из которой нужно получить посты или укажите, -3 вместо 3, если нужно получить все записи, кроме записей из категории 3 (исключить категорию). Можно указать несколько ID через запятую («3,5,12» или «-3,-5,-12»). Массив передавать нельзя.
По умолчанию: нет

category_name (строка) — посты только из этой категории (указывается название или альтернативное имя(slug) категории).
По умолчанию: нет

Вывод категорий для поста через функцию get_the_category

Приветствую всех читателей блога WordPress Ins >

В одной из прошлых статей блога я публиковал хак который помогает убрать ненужный текст из атрибута title для ссылок категорий. Данное решение использовалось для функции вывода списка категорий в сайдбаре с помощью функции wp_list_categories. На выходе вы получали записи вроде этой:

Если уж для seo атрибут title имеет хоть какое-то значение, то куда полезнее там было бы разместить просто название категории, а не весь этот ненужных текст. Собственно, указанная выше ссылка на хак помогала решить эту проблему. Но вот ни задача, все это было справедливо (работало) для функции списка категорий wp_list_categories, которая позволяла предварительно обработать полученный список не выводя его сразу же. Но что делать с другими функциями для вывода категорий? — вот в чем вопрос.

Например, я сегодня совершенно случайно обнаружил, что куча ненужного текста в атрибут title ссылки пишется и при отображении списка категорий для конкретного поста.

Вся проблема заключалась в том, что здесь используется функция the_category, для которой, к сожалению, нельзя задать параметр, чтобы результат ее вызова не отображался сразу. Зато в вордпресс есть еще одна функция get_the_category, которая возвращается массив объектов категорий для конкретного поста.

Функция get_the_category

Синтаксис функции get_the_category достаточно прост:

где параметр id это учетная запись поста для которого будут выводить категории. Куда более интересными есть примеры использования функции.

Отображение первой категории для поста

Программисты знают, что нулевой параметр массива выводит первый элемент, собственно это и объясняет принцип работы данного кода.

Как получить категории вне цикла Loop

Для этого в качестве параметра функции нужно передавать id поста, что и происходит в коде.

Вывод названия категории без ссылок

Кстати, данную функцию я использую в некоторых сайтах, чтобы выводить название категории поста, но без активной ссылки — так просто дополнительный полезный текст на странице. В таком случае можно применить код:

Убираем из title категории лишний текст

Ну, и напоследок, немного поразмыслив получился хак для вывода списка категории для поста без использования функции the_category, которую мы успешно заменяем на get_the_category. Если вы хотите добавить код непосредственно в то место шаблона, где выводятся категории, например, файл archive.php, то пишем что-то вроде:

Можно, в принципе разместить код для отображения категорий в файле функций, а потом в файлах шаблона поменять the_category на новую функцию, например, под названием my_thecat(). Конечно, не забудьте предварительно перед заменой добавить соответствующий код в файл функций functions.php:

Потестировал, все работает. Остается лишь один вопрос — насколько это все полезно и крайне необходимо. Если у вас один блог с постоянным дизайном, который вы хотите сделать самым лучшим, то можно потратить пару минут и внести соответствующие изменения. В случае если у вас таких блогов много, думаю, особой seo выгоды манипуляция с title не принесет в плане, проще купить ссылок в Rotapost на все эти проекты — кстати эксперимент по подъему тИЦ в системе успешно и позитивно завершен, скоро будет отчет об этом.

Вывод категорий кастомных записей

В комментариях подсказывают, что примеры, указанные выше, не работают для кастомных (пользовательских) типов записей. Я с этой задачей не сталкивался, поэтому могу вам лишь посоветовать погуглить решение в англоязычных блогах по ключу wordpress custom post type show category или же воспользоваться подсказкой пользователя Stinker (из комментариев). В месте вывода категорий нужно просто вставить код:

ID, ‘categoria_video’, ‘
Категория: ‘, ‘ ‘,’ ‘ ); ?>

Где categoria_video — это таксономия пользовательской записи (она же кастомная). А теперь более подробно от куда и что. Например у нас есть:

// Тип записи Видео if ( ! function_exists( ‘v => _x( ‘Видео’, ‘Post Type General Name’, ‘video’ ), ‘singular_name’ => _x( ‘Видео’, ‘Post Type Singular Name’, ‘video’ ), ‘menu_name’ => __( ‘Видео’, ‘video’ ), ‘parent_item_colon’ => __( ‘Родительский:’, ‘video’ ), ‘all_items’ => __( ‘Все видеоматериалы’, ‘video’ ), ‘view_item’ => __( ‘Просмотреть’, ‘video’ ), ‘add_new_item’ => __( ‘Добавить новое видео’, ‘video’ ), ‘add_new’ => __( ‘Добавить видео’, ‘video’ ), ‘edit_item’ => __( ‘Редактировать видео’, ‘video’ ), ‘update_item’ => __( ‘Обновить видео’, ‘video’ ), ‘search_items’ => __( ‘Найти видео’, ‘video’ ), ‘not_found’ => __( ‘Не найдено’, ‘video’ ), ‘not_found_in_trash’ => __( ‘Не найдено в корзине’, ‘v => $labels, ‘supports’ => array( ‘title’, ‘editor’, ‘excerpt’, ), ‘taxonomies’ => array( ‘categoria_video’ ), // категория, которую мы создадим ниже (она же таксономия) ‘public’ => true, ‘menu_position’ => 5, ‘menu_icon’ => ‘dashicons- => _x( ‘Категории Видео’, ‘Taxonomy General Name’, ‘categoria_video’ ), ‘singular_name’ => _x( ‘Категория Видео’, ‘Taxonomy Singular Name’, ‘categoria_video’ ), ‘menu_name’ => __( ‘Категории’, ‘categoria_video’ ), ‘all_items’ => __( ‘Категории’, ‘categoria_video’ ), ‘parent_item’ => __( ‘Родительская категория Видео’, ‘categoria_video’ ), ‘parent_item_colon’ => __( ‘Родительская категория Видео:’, ‘categoria_video’ ), ‘new_item_name’ => __( ‘Новая категория’, ‘categoria_video’ ), ‘add_new_item’ => __( ‘Добавить новую категорию’, ‘categoria_video’ ), ‘edit_item’ => __( ‘Редактировать категорию’, ‘categoria_video’ ), ‘update_item’ => __( ‘Обновить категорию’, ‘categoria_video’ ), ‘search_items’ => __( ‘Найти’, ‘categoria_video’ ), ‘add_or_remove_items’ => __( ‘Добавить или удалить категорию’, ‘categoria_video’ ), ‘choose_from_most_used’ => __( ‘Поиск среди популярных’, ‘categoria_video’ ), ‘not_found’ => __( ‘Не найдено’, ‘categoria_v => $labels, ‘hierarchical’ => true, ‘public’ => true, ); register_taxonomy( ‘categoria_video’, array( ‘video’ ), $args ); > add_action( ‘init’, ‘categoria_video’, 0 ); // инициализируем >

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

Топ-пост этого месяца:  Запрос постов только с контеном
Добавить комментарий