Intereting Posts
Я продолжаю выходить в Firefox Как разместить свою форму комментариев над комментариями? подобно редактору, может создать любого нового пользователя, кроме администратора Условные обозначения, если существуют теги? Ошибка: не удалось импортировать тег / сообщение Тема WordPress (или плагин), которая использует свойство Contenteditable Разработка темы – инсертивные боковые панели Как получить изображения, включенные в сообщение Возврат запланированных сообщений с помощью WP REST API Как получить get_category_parents () путь патронов без ссылки на последний элемент Лучший многоязычный плагин WordPress? has_shortcode для контента, добавленного после содержимого Как добавить пользовательские радио-боксы на страницу оплаты WooCommerce и изменить общую цену в этом поле? Запрос в запросе для виджета Каковы общие недостатки безопасности, которые мне нужно искать?

Нужна консультация> преобразование присвоений категорий в персонализированные метаданные

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

Например, чтобы создать сообщение nofollow или noindex, я создал категорию под названием nofollow, а другую – noindex и присвоил одну или обе эти категории сообщению или странице.

Затем в моем файле header.php я бы выполнил тест in_category, чтобы записать соответствующие метатеги на страницу.

Пример:

<?php if (in_category('noindex') && in_category('nofollow')){?> <meta name="robots" content="noindex, nofollow"> <?php}?> 

У меня также есть настраиваемые категории для таких вещей, как «Отключить Adsense для этой страницы», «Не показывать изображения для этой страницы», «Скрыть эту страницу из меню» и т. Д. …

Итак, теперь, когда я решил отказаться от использования категорий, где я должен использовать персонализированную мета-запись, приведенный выше код в header.php становится …

 <?php if (get_post_meta( $post->ID, '_noindex', true ) && get_post_meta( $post->ID, '_nofollow', true )){>? <meta name="robots" content="noindex, nofollow"> <?php } ?> 

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

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

Я просто ищу краткие советы о том, как это сделать, и, возможно, некоторые подсказки кода о необходимой рутине.

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

Например, если сообщение в настоящее время принадлежит к категории «Скрытые», оно будет присвоено метатесту «_hidden».

Надеюсь, я объяснил это достаточно хорошо. Я ценю любые идеи, которые вы можете предоставить.

Возможно, это так же просто, как ряд пользовательских операторов SQL, которые запускаются для каждого возможного назначения категории?

Solutions Collecting From Web of "Нужна консультация> преобразование присвоений категорий в персонализированные метаданные"

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

Что-то вроде этого (обязательно проверьте тестовую копию данных и т. Д.):

 $posts = get_posts( array( 'numberposts' => -1 ) ); foreach( $posts as $post ) { $categories = get_the_category( $post->ID ); foreach( $categories as $category ) { if( 'Hidden' == $category->name ) add_post_meta( $post->ID, '_hidden', 'yes', true ); } } 

Забыл добавить удаление после этого:

 $category = get_category_by_slug( 'hidden' ); wp_delete_category( $category->term_id );