অ্যাডমিনে আইডি দ্বারা পোস্ট অনুসন্ধান করুন


10

আমি আইডি দ্বারা পোস্টগুলি সন্ধান করার জন্য একটি উপায় খুঁজছি, পছন্দসই কাস্টম পোস্ট ধরণের জন্য সমর্থন সহ। আমি আশা করছিলাম যে এই কার্যকারিতাটি সক্ষম করার জন্য একটি প্লাগইন থাকবে তবে আমি কিছুই খুঁজে পেতে ব্যর্থ হয়েছি। যে কোনও ধারণা প্রশংসিত হবে, আপনাকে ধন্যবাদ।


আপনি কী আইডি দ্বারা অনুসন্ধানের অর্থ বোঝাতে পারেন, প্রতিটি পোস্টের একটি অনন্য আইডি রয়েছে, কীভাবে এই অনুসন্ধানটি সম্ভবত একক ফলাফলের চেয়ে আরও বেশি কিছু অর্জন করতে পারে?
t31os

@ t31os একটি ফলাফল যা আমি চাই তা হল :)। আমি অ্যাডমিন ব্যাকএন্ডে আইডি দ্বারা পোস্টগুলি সিচ করতে সক্ষম হওয়ার কথা উল্লেখ করছি। আপনি যদি ডোমেইন. com/wp-admin/edit.php এ যান তবে আপনার উপরে শীর্ষে একটি অনুসন্ধান ক্ষেত্র রয়েছে এবং পোস্ট শিরোনামগুলি সন্ধান করে আপনি সহজেই একটি পোস্ট সনাক্ত করতে পারেন। আমারও এটি করতে সক্ষম হতে হবে তবে আইডি ব্যবহার করে। বলুন, '1343' লিখুন, 'অনুসন্ধান' টিপুন, পোস্ট করুন # 1343।
পেরেরা

এটি কীভাবে অগ্রণী অনুসন্ধানের জন্য কাজ করে?
ক্রিসপো

উত্তর:


13

আপনি কেন আইডি দিয়ে জিজ্ঞাসা করতে চান তা আমি নিশ্চিত নই, তবে এটি বলেছিল যে এটি একটি হ্যাকি ধরণের উপায়ে সম্ভব (আমি এই পদ্ধতিটি পছন্দ করি কারণ এটি সহজ)।

add_action( 'parse_request', 'idsearch' );
function idsearch( $wp ) {
    global $pagenow;

    // If it's not the post listing return
    if( 'edit.php' != $pagenow )
        return;

    // If it's not a search return
    if( !isset( $wp->query_vars['s'] ) )
        return;

    // If it's a search but there's no prefix, return
    if( '#' != substr( $wp->query_vars['s'], 0, 1 ) )
        return;

    // Validate the numeric value
    $id = absint( substr( $wp->query_vars['s'], 1 ) );
    if( !$id )
        return; // Return if no ID, absint returns 0 for invalid values

    // If we reach here, all criteria is fulfilled, unset search and select by ID instead
    unset( $wp->query_vars['s'] );
    $wp->query_vars['p'] = $id;
}

তারপরে যা করা হয় তা হ'ল নিয়মিত অনুসন্ধান বাক্সটি #সংখ্যার আইডির (হ্যাশ) উপসর্গ ইনফ্রন্ট ব্যবহার করে অনুসন্ধান করা ।

#123

.. 123 আইডি সহ পোস্টটি ফেরত পাঠাতে হবে।

আমি নিশ্চিত যে আরও জটিল রুটগুলি এটি করার জন্য নেওয়া যেতে পারে তবে আমি এই পদ্ধতির সাথে কোনও সমস্যা দেখি না, যদি না আপনার কাছে একটি হ্যাশ দিয়ে শুরু হওয়া শিরোনাম সহ প্রচুর পোস্ট থাকে (তবে আপনি সর্বদা হ্যাশটির জন্য অদলবদল করতে পারবেন) অন্য একটি চরিত্র)।

আশা করি এইটি কাজ করবে. :)


@ t310s এটি কাজ করে, আপনাকে অনেক ধন্যবাদ! কেবলমাত্র (যদিও নিখুঁতভাবে প্রসাধনী) ইস্যুটি আমি পেয়েছি যে সন্ধানের ফলাফলগুলি আমি পাচ্ছি তার শীর্ষে: "" এর জন্য অনুসন্ধান ফলাফল - যখন "# 123" এর জন্য অনুসন্ধানের ফলাফলটি আদর্শ হবে। অন্যথায় এটি আমার প্রয়োজন ঠিক তাই, আবারও ধন্যবাদ।
পেরেয়ের

এটি ক্যোয়ারির ঠিক আগে অনুসন্ধানের শব্দগুলি আনসেট করার একটি দুর্ভাগ্যজনক পার্শ্ব-প্রতিক্রিয়া, তবে এখন আমি এডিট.এইচপিপিগুলিতে অন্য একটি চেহারা পেয়েছি আমি একটি সহজ সমাধান দেখতে পাচ্ছি ... :) unset()নিম্নলিখিতটিতে কলটি আপডেট করুন .. unset( $wp->query_vars['s'], $_GET['s'] );এবং অনুসন্ধান আইডি সন্ধান করার সময় টার্ম টেক্সট অদৃশ্য হয়ে যাবে .. পিএস সাহায্যে খুশি .. :)
t31os

দিনের খুব দেরিতে তবে আমি এই পোস্টটি জুড়ে হোঁচট খেয়েছি এবং get_search_queryফিল্টারটিতে ঝাঁকুনির জন্য অনুসন্ধান ফলাফলগুলি পুনরায় জনপ্রিয় করা সম্ভব । add_filter( 'get_search_query', function() { return $_GET['s']; } );
মাইক 15
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.