Ваш путь: Главная » Контент, шапка site, WordPress c плагинами » текущая страница

возможно заказать разработку или сопровождение, услуги вашего сайта/блога


обновлено: 2022-10-18 в теме: Контент, шапка site; WordPress c плагинами
Запросто с WordPress создание и продвижение сайтов ATs media

Как найти запись по ID в админке (идентификатору): в wp-admin – все записи

Как говорит моя практика, время от времени возникает необходимость найти запись по ID (идентификатору) в административной панели управления сайтом: в wp-admin в разделе “Все записи”?

 

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

 

Я уже когда-то выполнят подобную работу одному из клиентов, и вот сегодня ко мне обратились с похожей просьбой, я помог написать плагин… и решил написать сюда в блог небольшую заметку по решению… возможно, кому-то пригодится:

 


 

 

 

 

 

Данное решение (примеры) я встретил где-то на просторах WordPress.org, уже не помню где и когда… однако, данный код использовал помимо пользовательских и на своих сайтах, так что функции сохранились…

 

 

 

Как найти запись по ID в админке (идентификатору): в wp-admin – все записи

 

 

 

На моем примерном сайте уже есть функционал, который выводит данные о ID записи / странице / произвольного типа… (как эта фича – колонка с ID записи/страницы делается, описано здесь: Добавим  в административную панель управления сайтом в раздел “Все записи” информационные колонки с id постов, страниц, меток, рубрик

 

 

 

Как найти запись по ID в админке (идентификатору): в wp-admin - все записи

 

 

 

…хотя идентификатор и указан, однако, проматывать всю ленту и искать требуемую запись по ее ID и в этом случае достаточно хлопотно. Гораздо проще вписать ID запись в окно Поиск, нажать “Поиск записей” и – готово, получаем результат…

 

 

По умолчанию в WordPress функционала определения поста по id нет, так что, если нам требуется, нужно штатный функционал дорабатывать и расширять. Благо – cms WP это замечательно позволяет реализовывать!

 

 

 

Как найти запись по ID в админке: в wp-admin - все записи

 

 

К тому же ID – идентификатор поста возможно добавить для удобства туда, куда нужно. К примеру:

 

 

Как найти запись по ID в админке: в wp-admin - все записи

 

 

 

На примере картинки выше, данные о посте видит только администратор сайта – как работать с условиями php WordPress подробно расписано в этом посте, есть четкое видео (а это условные теги Woocommerce) !..

 

 

создаем плагин поиска записи по идентификатору – по id

 

 

 

Создавайте плагин либо на компьютере, а затем переносите архив на сервер (путем “Добавить плагин” …и “загрузить”…)… либо же прямо на хостинге… Кому как удобнее. Главное, соблюдайте осторожность!..

 

 

 

Создаем папку с именем, скажем, ats-admin-post-id-search (можете создать папку со своим произвольным именем) я, к примеру, добавил ats- в таком случае плагин особо искать не придется, потому как он будет близко к началу (сверху) – по начальной литере а.

 

 

Внутри этой папки создаем файл с именем ats-admin-post-id-search.php (в эту же папку можно добавить индексный файл / index.php / и файл-справку readme.txt).

 

 

В файл ats-admin-post-id-search.php прописываем на постоянное местожительства такой код:

 

 

 

<?php
/*
Plugin Name: ATS Admin Search Post ID
Plugin URI: https://домен.ru/
Description: Allows posts to searched using IDs in the admin area = Позволяет выполнять поиск ЗАПИСЕЙ СТРАНИЦ по идентификатору, в админке в ПОИСКЕ
Version: 0.0.1
Author: Ваше имя
Author URI: https://mihalica.ru/
License: GPL22
License URI: https://домен.ru/
Text Domain: your_text_domain
Domain Path: /languages
*/

/**
* Allows posts to searched ID in the admin area.
*
* @param WP_Query $query The WP_Query instance (passed by reference).
*
* решение, которое использует pre_get_posts
* Позволяет выполнять поиск ЗАПИСЕЙ СТРАНИЦ по идентификатору, в админке в ПОИСКЕ
*/
add_action( 'pre_get_posts','wpse_admin_search_include_ids' );
function wpse_admin_search_include_ids( $query ) {
// Bail if we are not in the admin area
if ( ! is_admin() ) {
return;
}

// Bail if this is not the search query.
if ( ! $query->is_main_query() && ! $query->is_search() ) {
return;
}

// Get the value that is being searched.
$search_string = get_query_var( 's' );

// Bail if the search string is not an integer.
if ( ! filter_var( $search_string, FILTER_VALIDATE_INT ) ) {
return;
}

// Set WP Query's p value to the searched post ID.
$query->set( 'p', intval( $search_string ) );

// Reset the search value to prevent standard search from being used.
$query->set( 's', '' );
}
/*решение, которое использует pre_get_posts*/

/**************************************** НИЖЕ ДРУГОЙ ВАРИАНТ ***********************************/
/**
* Modify search SQL enabling searching by post ID.
*
* @param string $search Search SQL for WHERE clause.
* @param WP_Query $wp_query The current WP_Query object.
*
* альтернативное решение, которое использует posts_search
* фильтр для изменения SQL напрямую при выполнении поиска в области администрирования с использованием числового значения
*/
add_filter( 'posts_search', 'wpse_posts_search_post_id', 10, 2 );
function wpse_posts_search_post_id( $search, $wp_query ) {
// Bail if we are not in the admin area
if ( ! is_admin() ) {
return $search;
}

// Bail if this is not the search query.
if ( ! $wp_query->is_main_query() && ! $wp_query->is_search() ) {
return $search;
}

// Get the value that is being searched.
$search_string = get_query_var( 's' );

// Bail if the search string is not an integer.
if ( ! filter_var( $search_string, FILTER_VALIDATE_INT ) ) {
return $search;
}

// This appears to be a search using a post ID.
// Return modified posts_search clause.
return "AND wp_posts.ID = '" . intval( $search_string ) . "'";
}
/*альтернативное решение, которое использует posts_search*/

 

 

 

Выбираете один из понравившихся вариантов, и работаете…

 

 

Как только все шаги по созданию плагина проделали, проходим в админпанель в раздел “Плагины”, отыскиваем наш ats-admin-post-id-search… активируем и пробуем найти какую-то запись… по примеру шкриншота выше.

 

 

 

 

Создание… продвижение сайтов: студия ATs media запросто с WordPress

 



...вопросы в комментариях - помогу, в чём дюжу...
mihalica.ru !



Михаил ATs - владелец блога запросто с Вордпресс - в сети нтернет давным-давно...

...веб разработчик студии ATs media: помогу в создании, раскрутке, развитии и целенаправленном сопровождении твоего ресурса в сети... - заказы, вопросы... разработка...





Нажатия на кнопочки определяют Ваше высокое гражданское сознание

Поделитесь соображениями: Ваши мысли очень важны!

Внимание! Обязательные поля помечены *

  отныне доступен плагин: ats privacy policy ©


  1. Спасибо! попробуем функционал, в общем-то пригодится)

    Ответить - Светлана

    • Замечательно, Светлана, если пригодится))

      Ответить - Михаил